class Highway::Steps::Step

This class serves as a base class for all step definition classes. It contains a common API and some useful utilities.

Public Class Methods

name() click to toggle source

Name of the step as it appears in configuration file.

@return [String]

# File lib/highway/steps/step.rb, line 20
def self.name
  raise NotImplementedError.new("You must override `#{__method__.to_s}` in `#{self.class.to_s}`.")
end
parameters() click to toggle source

Parameters that this step recognizes.

@return [Array<Highway::Steps::Parameters::*>]

# File lib/highway/steps/step.rb, line 27
def self.parameters
  raise NotImplementedError.new("You must override `#{__method__.to_s}` in `#{self.class.to_s}`.")
end
root_parameter() click to toggle source

The root parameter that nests all parameters of the step.

@return [Highway::Steps::Parameters::Compound]

# File lib/highway/steps/step.rb, line 34
def self.root_parameter
  return Parameters::Compound.new(name: "root", required: true, defaults: true, children: parameters)
end
run(parameters:, context:, report:) click to toggle source

Run the step in given context containing inputs and Fastlane runner.

@param parameters [Hash] Parameters of the step. @param context [Highway::Runtime::Context] The runtime context. @param report [Highway::Runtime::Report] The current runtime report.

@return [Void]

# File lib/highway/steps/step.rb, line 45
def self.run(parameters:, context:, report:)
  raise NotImplementedError.new("You must override `#{__method__.to_s}` in `#{self.class.to_s}`.")
end