Sha256: c6a9a6be8776bdedd70b40178d5aaeaf0a7848699c47dfe23b20f1fb9a5c3c96

Contents?: true

Size: 566 Bytes

Versions: 9

Compression:

Stored size: 566 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).chomp
        STDERR.puts

        value
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
bolt-2.6.0 lib/bolt/plugin/prompt.rb
bolt-2.5.0 lib/bolt/plugin/prompt.rb
bolt-2.4.0 lib/bolt/plugin/prompt.rb
bolt-2.3.1 lib/bolt/plugin/prompt.rb
bolt-2.3.0 lib/bolt/plugin/prompt.rb
bolt-2.2.0 lib/bolt/plugin/prompt.rb
bolt-2.1.0 lib/bolt/plugin/prompt.rb
bolt-2.0.1 lib/bolt/plugin/prompt.rb
bolt-2.0.0 lib/bolt/plugin/prompt.rb