Sha256: a3ffc7a723a27f90a2480ebd3a1f41bda5e32f3be5040a07fcff472ed652dd61

Contents?: true

Size: 1.71 KB

Versions: 14

Compression:

Stored size: 1.71 KB

Contents

require 'json'
require 'logger'
require 'plan-step-class'

class AddEnv
    def initialize ()
        @log = Logger.new(Canzea::config[:logging_root] + '/plans.log')
    end

    def add (key, value)
        extraConfig = Canzea::config[:config_location] + "/env.json"
        envs = loadFile()
        envs["vars"][key] = value
        File.write(extraConfig, JSON.generate(envs))
    end

    def addSecret (key, value)
        extraConfig = Canzea::config[:config_location] + "/env.json"
        envs = loadFile()
        envs['secrets'][key] = value
        File.write(extraConfig, JSON.generate(envs))
    end

    def loadFile()
        extraConfig = Canzea::config[:config_location] + "/env.json"
        if File.exists?(extraConfig)
            file = File.read(extraConfig)
            envs = JSON.parse(file)
        else
            envs = {"vars"=>{}, "secrets"=>{}}
        end
        return envs
    end

    def injectEnvironmentVariables()
        extraConfig = Canzea::config[:config_location] + "/env.json"
        @log.info "Looking at for env vars: #{extraConfig}"
        if File.exists?(extraConfig)
            puts "-- Reading #{extraConfig}"
            file = File.read(extraConfig)
            envs = JSON.parse(file)
            envs['vars'].keys.each { | key |
                val = envs['vars'][key]
                puts "--    #{key} == #{val}"
                @log.info "Setting: #{key} == #{val}"
                ENV.store(key, val)
            }
            envs['secrets'].keys.each { | key |
                val = envs['secrets'][key]
                puts "--    #{key} == XXXXXX"
                @log.info "Setting: #{key} == XXXXXXX"
                ENV.store(key, val)
            }
        end
    end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
canzea-0.1.102 lib/commands/add-env.rb
canzea-0.1.101 lib/commands/add-env.rb
canzea-0.1.100 lib/commands/add-env.rb
canzea-0.1.98 lib/commands/add-env.rb
canzea-0.1.97 lib/commands/add-env.rb
canzea-0.1.96 lib/commands/add-env.rb
canzea-0.1.95 lib/commands/add-env.rb
canzea-0.1.94 lib/commands/add-env.rb
canzea-0.1.93 lib/commands/add-env.rb
canzea-0.1.91 lib/commands/add-env.rb
canzea-0.1.90 lib/commands/add-env.rb
canzea-0.1.89 lib/commands/add-env.rb
canzea-0.1.88 lib/commands/add-env.rb
canzea-0.1.87 lib/commands/add-env.rb