Sha256: 64b36f82073055c890bac3cb0ec82ffc6ce26adf40ca23755b30ac523bbbec5b

Contents?: true

Size: 1.26 KB

Versions: 7

Compression:

Stored size: 1.26 KB

Contents

require 'shipitron'
require 'shipitron/post_build'

module Shipitron
  module Client
    class LoadApplicationConfig
      include Metaractor

      required :application

      def call
        context.repository_url = config.repository
        context.repository_branch = config.repository_branch
        context.s3_cache_bucket = config.cache_bucket
        context.image_name = config.image_name
        context.build_script = config.build_script
        context.post_builds = begin
                                if config.post_builds.nil?
                                  []
                                else
                                  config.post_builds.map {|pb| PostBuild.new(pb) }
                                end
                              end
        context.clusters = config.ecs_clusters
        context.shipitron_task = config.shipitron_task
        context.ecs_task_defs = config.ecs_task_defs
        context.ecs_services = config.ecs_services
        context.ecs_task_def_dir = config.ecs_task_def_dir
        context.ecs_service_dir = config.ecs_service_dir
      end

      private
      def application
        context.application
      end

      def config
        @config ||= Shipitron.config.applications[application]
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
shipitron-0.3.5 lib/shipitron/client/load_application_config.rb
shipitron-0.3.4 lib/shipitron/client/load_application_config.rb
shipitron-0.3.3 lib/shipitron/client/load_application_config.rb
shipitron-0.3.1 lib/shipitron/client/load_application_config.rb
shipitron-0.3.0 lib/shipitron/client/load_application_config.rb
shipitron-0.2.2 lib/shipitron/client/load_application_config.rb
shipitron-0.2.1 lib/shipitron/client/load_application_config.rb