Class: Travis::CLI::ApiCommand
Direct Known Subclasses
Accounts, Console, Endpoint, Login, Logout, Monitor, Raw, RepoCommand, Report, Repos, Sync, Token, Whatsup, Whoami
Constant Summary
Tools::Assets::BASE
Instance Attribute Summary collapse
Attributes inherited from Command
#arguments, #config, #debug, #force_interactive, #formatter, #input, #output
Instance Method Summary
collapse
#access_token, #access_token=, #account, #accounts, #api_endpoint, #api_endpoint=, #artifact, #broadcasts, #build, #cancel, #explicit_api_endpoint?, #github_auth, #hooks, #job, #repo, #repos, #restart, #user
Methods inherited from Command
abstract, abstract?, #check_completion, #check_ruby, #check_version, command_name, #command_name, #debug?, description, #execute, #help, #info, #last_check, #on_signal, #parse, #say, skip, #terminal, #time, #usage, #write_to
#asset, #asset_path
Methods included from Parser
#new, #on, #on_initialize
Constructor Details
Returns a new instance of ApiCommand.
36
37
38
39
|
# File 'lib/travis/cli/api_command.rb', line 36
def initialize(*)
@session = Travis::Client.new(:agent_info => "command #{command_name}")
super
end
|
Instance Attribute Details
#enterprise_name ⇒ Object
Returns the value of attribute enterprise_name.
7
8
9
|
# File 'lib/travis/cli/api_command.rb', line 7
def enterprise_name
@enterprise_name
end
|
#session ⇒ Object
Returns the value of attribute session.
8
9
10
|
# File 'lib/travis/cli/api_command.rb', line 8
def session
@session
end
|
Instance Method Details
#authenticate ⇒ Object
73
74
75
|
# File 'lib/travis/cli/api_command.rb', line 73
def authenticate
error "not logged in, please run #{command("login#{endpoint_option}")}" if access_token.nil?
end
|
#detected_endpoint? ⇒ Boolean
69
70
71
|
# File 'lib/travis/cli/api_command.rb', line 69
def detected_endpoint?
api_endpoint == detected_endpoint
end
|
#endpoint_config ⇒ Object
41
42
43
44
|
# File 'lib/travis/cli/api_command.rb', line 41
def endpoint_config
config['endpoints'] ||= {}
config['endpoints'][api_endpoint] ||= {}
end
|
#enterprise? ⇒ Boolean
57
58
59
|
# File 'lib/travis/cli/api_command.rb', line 57
def enterprise?
!!endpoint_config['enterprise']
end
|
#org? ⇒ Boolean
65
66
67
|
# File 'lib/travis/cli/api_command.rb', line 65
def org?
api_endpoint == Travis::Client::ORG_URI
end
|
#pro? ⇒ Boolean
61
62
63
|
# File 'lib/travis/cli/api_command.rb', line 61
def pro?
api_endpoint == Travis::Client::PRO_URI
end
|
#setup ⇒ Object
46
47
48
49
50
51
52
53
54
55
|
# File 'lib/travis/cli/api_command.rb', line 46
def setup
setup_enterprise
self.api_endpoint = default_endpoint if default_endpoint and not explicit_api_endpoint?
self.access_token ||= fetch_token
endpoint_config['access_token'] ||= access_token
endpoint_config['insecure'] = insecure unless insecure.nil?
self.insecure = endpoint_config['insecure']
session.ssl = { :verify => false } if insecure?
authenticate if pro? or enterprise?
end
|
#sync(block = true, dot = '.') ⇒ Object
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
# File 'lib/travis/cli/api_command.rb', line 77
def sync(block = true, dot = '.')
user.sync
steps = count = 1
while block and user.reload.syncing?
count += 1
sleep(1)
if count % steps == 0
steps = count/10 + 1
output.print dot
end
end
end
|