Module: TerraformDevKit

Defined in:
lib/TerraformDevKit/os.rb,
lib/TerraformDevKit/s3.rb,
lib/TerraformDevKit/aws.rb,
lib/TerraformDevKit/url.rb,
lib/TerraformDevKit/retry.rb,
lib/TerraformDevKit/config.rb,
lib/TerraformDevKit/command.rb,
lib/TerraformDevKit/request.rb,
lib/TerraformDevKit/version.rb,
lib/TerraformDevKit/download.rb,
lib/TerraformDevKit/dynamodb.rb,
lib/TerraformDevKit/environment.rb,
lib/TerraformDevKit/backup_state.rb,
lib/TerraformDevKit/zip_file_generator.rb,
lib/TerraformDevKit/terraform_installer.rb,
lib/TerraformDevKit/terraform_log_filter.rb,
lib/TerraformDevKit/terraform_env_manager.rb,
lib/TerraformDevKit/terraform_remote_state.rb,
lib/TerraformDevKit/terraform_config_manager.rb,
lib/TerraformDevKit/terraform_project_config.rb,
lib/TerraformDevKit/terraform_template_config_file.rb

Defined Under Namespace

Classes: AwsConfig, BackupState, Command, Configuration, DynamoDB, Environment, OS, Request, S3, TerraformConfigManager, TerraformEnvManager, TerraformInstaller, TerraformLogFilter, TerraformProjectConfig, TerraformRemoteState, TerraformTemplateConfigFile, ZipFileGenerator

Constant Summary collapse

VERSION =
'0.2.0'.freeze

Class Method Summary collapse

Class Method Details

.download_file(url, filename, force_download: false) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/TerraformDevKit/download.rb', line 5

def self.download_file(url, filename, force_download: false)
  unless File.exist?(filename) && !force_download
    dirname = File.dirname(filename)
    FileUtils.mkdir_p(dirname) unless Dir.exist?(dirname)

    puts "Downloading #{url} to #{filename}..."

    open(filename, 'wb') do |file|
      file << open(url, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE).read
    end
  end
end

.valid_url?(url) ⇒ Boolean



4
5
6
7
8
9
# File 'lib/TerraformDevKit/url.rb', line 4

def self.valid_url?(url)
  uri = URI.parse(url)
  uri.is_a?(URI::HTTP) && !uri.host.nil?
rescue URI::InvalidURIError
  false
end

.with_retry(retry_count, sleep_time: 1) ⇒ Object



2
3
4
5
6
7
8
9
10
# File 'lib/TerraformDevKit/retry.rb', line 2

def self.with_retry(retry_count, sleep_time: 1)
  yield
rescue
  unless (retry_count -= 1).zero?
    sleep(sleep_time)
    retry
  end
  raise
end