Sha256: faa686eda427e08665389320a0303e87d25a02a2c398b5c65b455abc23b59d39

Contents?: true

Size: 854 Bytes

Versions: 43

Compression:

Stored size: 854 Bytes

Contents

# frozen_string_literal: true

module Bolt
  class PAL
    class YamlPlan
      class Step
        class Task < Step
          def self.allowed_keys
            super + Set['task', 'parameters']
          end

          def self.required_keys
            Set['targets']
          end

          def initialize(step_body)
            super
            @task = step_body['task']
            @parameters = step_body.fetch('parameters', {})
          end

          def transpile
            code = String.new("  ")
            code << "$#{@name} = " if @name

            fn = 'run_task'
            args = [@task, @targets]
            args << @description if @description
            args << @parameters unless @parameters.empty?

            code << function_call(fn, args)

            code << "\n"
          end
        end
      end
    end
  end
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
bolt-3.1.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-3.0.1 lib/bolt/pal/yaml_plan/step/task.rb
bolt-3.0.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.44.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.42.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.40.2 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.40.1 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.38.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.37.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.36.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.35.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.34.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.33.2 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.33.1 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.32.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.31.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.30.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.29.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.28.0 lib/bolt/pal/yaml_plan/step/task.rb
bolt-2.27.0 lib/bolt/pal/yaml_plan/step/task.rb