| #Licensed to the Apache Software Foundation (ASF) under one or more contributor |
| #license agreements. See the NOTICE.txt file distributed with this work for |
| #additional information regarding copyright ownership. The ASF licenses this |
| #file to you under the Apache License, Version 2.0 (the "License"); you may not |
| #use this file except in compliance with the License. You may obtain a copy of |
| #the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| #Unless required by applicable law or agreed to in writing, software |
| #distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| #WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| #License for the specific language governing permissions and limitations under |
| #the License. |
| |
| require 'io/console' |
| |
| desc 'Performs a login to the current profile' |
| arg_name 'username' |
| |
| command :login do |c| |
| |
| c.switch [:a,:admin] |
| c.flag [:p,:password] |
| c.action do |global_options,options,args| |
| |
| help_now! unless args[0] |
| |
| password = options[:password] || ask('password: ') { |q| q.echo = '*' } |
| |
| if password |
| if options[:admin] |
| management = Ugc::Management.new |
| management.login args[0], password |
| else |
| application = Ugc::Application.new |
| application.login args[0], password |
| end |
| end |
| puts "logged in user: #{args[0]}" |
| end |
| end |