module Codebuild::Core
Public Instance Methods
check_codebuild_project!()
click to toggle source
# File lib/codebuild/core.rb, line 48 def check_codebuild_project! check_path = "#{Codebuild.root}/.codebuild" unless File.exist?(check_path) puts "ERROR: No .codebuild folder found. Are you sure you are in a project with codebuild setup?".color(:red) puts "Current directory: #{Dir.pwd}" puts "If you want to set up codebuild for this prjoect, please create a settings file via: codebuild init" exit 1 unless ENV['TEST'] end end
env()
click to toggle source
# File lib/codebuild/core.rb, line 14 def env # 2-way binding cb_env = env_from_profile || 'development' cb_env = ENV['CB_ENV'] if ENV['CB_ENV'] # highest precedence ActiveSupport::StringInquirer.new(cb_env) end
env_extra()
click to toggle source
# File lib/codebuild/core.rb, line 22 def env_extra env_extra = ENV['CB_ENV_EXTRA'] if ENV['CB_ENV_EXTRA'] # highest precedence return if env_extra&.empty? env_extra end
root()
click to toggle source
# File lib/codebuild/core.rb, line 9 def root path = ENV['CB_ROOT'] || '.' Pathname.new(path) end
set_aws_profile!()
click to toggle source
Overrides AWS_PROFILE based on the Codebuild.env if set in configs/settings.yml 2-way binding.
# File lib/codebuild/core.rb, line 31 def set_aws_profile! return if ENV['TEST'] return unless File.exist?("#{Codebuild.root}/.codebuild/settings.yml") # for rake docs return unless settings # Only load if within Codebuild project and there's a settings.yml data = settings || {} if data[:aws_profile] puts "Using AWS_PROFILE=#{data[:aws_profile]} from CB_ENV=#{Codebuild.env} in config/settings.yml" ENV['AWS_PROFILE'] = data[:aws_profile] end end
settings()
click to toggle source
# File lib/codebuild/core.rb, line 43 def settings Setting.new.data end
Private Instance Methods
env_from_profile()
click to toggle source
# File lib/codebuild/core.rb, line 59 def env_from_profile Codebuild::Setting.new.cb_env end