Sha256: b25ca5a28bd3d0acbc1db556bb7b20b58f20bca48e043b8f0bc30f27e2246b82
Contents?: true
Size: 1.05 KB
Versions: 5
Compression:
Stored size: 1.05 KB
Contents
require 'sfn' module Sfn # Interface for injecting custom functionality class Callback autoload :StackPolicy, 'sfn/callback/stack_policy' # @return [Bogo::Ui] attr_reader :ui # @return [Smash] attr_reader :config # Create a new callback instance # # @param [Bogo::Ui] # @param [Smash] configuration hash # @param [Array<String>] arguments from the CLI # @param [Provider] API connection # # @return [self] def initialize(ui, config, arguments, api) @ui = ui @config = config @arguments = arguments @api = api end # Wrap action within status text # # @param msg [String] action text # @yieldblock action to perform # @return [Object] result of yield def run_action(msg) ui.info("#{msg}... ", :nonewline) begin result = yield ui.puts ui.color('complete!', :green, :bold) result rescue => e ui.puts ui.color('error!', :red, :bold) ui.error "Reason - #{e}" raise end end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
sfn-1.1.2 | lib/sfn/callback.rb |
sfn-1.1.0 | lib/sfn/callback.rb |
sfn-1.0.4 | lib/sfn/callback.rb |
sfn-1.0.2 | lib/sfn/callback.rb |
sfn-1.0.0 | lib/sfn/callback.rb |