Sha256: 8db96bf439c23f10304bff69f9250f404a2bbe5c0440e601fca24386a3f99cd1

Contents?: true

Size: 637 Bytes

Versions: 4

Compression:

Stored size: 637 Bytes

Contents

require 'highline'

# work around problem where HighLine detects an eof on $stdin and raises an
# error.
HighLine.track_eof = false

module Capistrano
  class CLI
    module UI
      def self.included(base) #:nodoc:
        base.extend(ClassMethods)
      end

      module ClassMethods
        # Return the object that provides UI-specific methods, such as prompts
        # and more.
        def ui
          @ui ||= HighLine.new
        end

        # Prompt for a password using echo suppression.
        def password_prompt(prompt="Password: ")
          ui.ask(prompt) { |q| q.echo = false }
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
capistrano-2.1.0 lib/capistrano/cli/ui.rb
capistrano-2.0.0 lib/capistrano/cli/ui.rb
capistrano-2.3.0 lib/capistrano/cli/ui.rb
capistrano-2.2.0 lib/capistrano/cli/ui.rb