Sha256: ee85f803805302fe96b14a2ed71f1b8fecd927198c2edcdd46495bc5ab9e093c

Contents?: true

Size: 571 Bytes

Versions: 17

Compression:

Stored size: 571 Bytes

Contents

# frozen_string_literal: true

module Bolt
  class Plugin
    class Prompt
      def initialize(*_args); end

      def name
        'prompt'
      end

      def hooks
        %i[resolve_reference validate_resolve_reference]
      end

      def validate_resolve_reference(opts)
        raise Bolt::ValidationError, "Prompt requires a 'message'" unless opts['message']
      end

      def resolve_reference(opts)
        STDERR.print("#{opts['message']}: ")
        value = STDIN.noecho(&:gets).to_s.chomp
        STDERR.puts

        value
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
bolt-2.22.0 lib/bolt/plugin/prompt.rb
bolt-2.21.0 lib/bolt/plugin/prompt.rb
bolt-2.20.0 lib/bolt/plugin/prompt.rb
bolt-2.19.0 lib/bolt/plugin/prompt.rb
bolt-2.18.0 lib/bolt/plugin/prompt.rb
bolt-2.17.0 lib/bolt/plugin/prompt.rb
bolt-2.16.0 lib/bolt/plugin/prompt.rb
bolt-2.15.0 lib/bolt/plugin/prompt.rb
bolt-2.14.0 lib/bolt/plugin/prompt.rb
bolt-2.13.0 lib/bolt/plugin/prompt.rb
bolt-2.12.0 lib/bolt/plugin/prompt.rb
bolt-2.11.1 lib/bolt/plugin/prompt.rb
bolt-2.11.0 lib/bolt/plugin/prompt.rb
bolt-2.10.0 lib/bolt/plugin/prompt.rb
bolt-2.9.0 lib/bolt/plugin/prompt.rb
bolt-2.8.0 lib/bolt/plugin/prompt.rb
bolt-2.7.0 lib/bolt/plugin/prompt.rb