Sha256: 60dcec751e6d74410526c62c2dff2e5c689a34e9d570f984af2ec8173f55a5c9

Contents?: true

Size: 958 Bytes

Versions: 9

Compression:

Stored size: 958 Bytes

Contents

module Vx
  module Builder
    class Script

      Env = Struct.new(:app) do

        include Helper::TraceShCommand

        def call(env)
          env.init << "set -e"
          env.init << "export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
          env.init << 'export LC_ALL=en_US.UTF8'
          env.init << 'export DEBIAN_FRONTEND=noninteractive'

          export_vars(env, env.init)
          export_vars(env, env.after_script_init)

          env.source.env.global.each do |e|
            env.init << trace_sh_command("export #{e}")
          end
          app.call(env)
        end

        private

          def export_vars(env, collection)
            collection << "export CI_JOB_ID=#{env.task.job_id}"
            collection << "export CI_BUILD_ID=#{env.task.build_id}"

            if b = env.task.branch
              collection << "export CI_BRANCH=#{b}"
            end
          end

      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
vx-builder-0.1.8 lib/vx/builder/script/env.rb
vx-builder-0.1.7 lib/vx/builder/script/env.rb
vx-builder-0.1.6 lib/vx/builder/script/env.rb
vx-builder-0.1.5 lib/vx/builder/script/env.rb
vx-builder-0.1.4 lib/vx/builder/script/env.rb
vx-builder-0.1.3 lib/vx/builder/script/env.rb
vx-builder-0.1.2 lib/vx/builder/script/env.rb
vx-builder-0.1.1 lib/vx/builder/script/env.rb
vx-builder-0.1.0 lib/vx/builder/script/env.rb