class TerraformDevKit::Environment

Attributes

name[R]

Public Class Methods

new(name) click to toggle source
# File lib/TerraformDevKit/environment.rb, line 7
def initialize(name)
  /^[0-9a-zA-Z]+$/ =~ name || (raise "Invalid environment name: #{name}")
  @name = name.downcase
end
running_on_jenkins?() click to toggle source
# File lib/TerraformDevKit/environment.rb, line 44
def self.running_on_jenkins?
  ENV.key?('JENKINS_URL') && ENV.key?('BUILD_ID')
end
temp_name() click to toggle source
# File lib/TerraformDevKit/environment.rb, line 37
def self.temp_name
  hostname = Socket.gethostname
  date = Time.now.strftime('%y%m%d%H%M')
  env = "#{hostname}#{date}"
  env.gsub(/[^0-9a-zA-Z]/, '')
end

Public Instance Methods

config() click to toggle source
# File lib/TerraformDevKit/environment.rb, line 12
def config
  case @name
  when 'prod'
    'prod'
  when 'test'
    'test'
  else
    'dev'
  end
end
local_backend?() click to toggle source
# File lib/TerraformDevKit/environment.rb, line 23
def local_backend?
  case @name
  when 'prod', 'test'
    false
  else
    true
  end
end
working_dir() click to toggle source
# File lib/TerraformDevKit/environment.rb, line 32
def working_dir
  # TODO: get rid of ROOT_PATH
  File.join(ROOT_PATH, 'envs', @name)
end