Sha256: af9f42bd1bcaabadb2977980f08d008cf282e68de2170453e510024d6928937c

Contents?: true

Size: 1.14 KB

Versions: 20

Compression:

Stored size: 1.14 KB

Contents

require 'lino'
require_relative 'base'
require_relative 'mixins/environment'

module RubyFly
  module Commands
    class Login < Base
      include Mixins::Environment

      def configure_command(builder, opts)
        builder = super(builder, opts)

        missing_params = [
            :target
        ].select { |param| opts[param].nil? }

        unless missing_params.empty?
          description = missing_params.map { |p| "'#{p}'" }.join(', ')
          raise(
              ArgumentError,
              "Error: #{description} required but not provided.")
        end

        target = opts[:target]
        concourse_url = opts[:concourse_url]
        username = opts[:username]
        password = opts[:password]
        team = opts[:team]

        builder
          .with_subcommand('login') do |sub|
            sub = sub.with_option('-t', target)
            sub = sub.with_option('-c', concourse_url) if concourse_url
            sub = sub.with_option('-u', username) if username
            sub = sub.with_option('-p', password) if password
            sub = sub.with_option('-n', team) if team
            sub
          end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
ruby_fly-0.38.0.pre.2 lib/ruby_fly/commands/login.rb
ruby_fly-0.38.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.37.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.36.0.pre.5 lib/ruby_fly/commands/login.rb
ruby_fly-0.36.0.pre.4 lib/ruby_fly/commands/login.rb
ruby_fly-0.36.0.pre.3 lib/ruby_fly/commands/login.rb
ruby_fly-0.36.0.pre.2 lib/ruby_fly/commands/login.rb
ruby_fly-0.36.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.35.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.34.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.33.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.32.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.31.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.30.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.29.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.28.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.27.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.26.0.pre.1 lib/ruby_fly/commands/login.rb
ruby_fly-0.25.0 lib/ruby_fly/commands/login.rb
ruby_fly-0.24.0.pre.1 lib/ruby_fly/commands/login.rb