aptible-cli 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aptible/cli/agent.rb +2 -0
- data/lib/aptible/cli/subcommands/ssh.rb +43 -0
- data/lib/aptible/cli/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e5b09e8001e9be00308f78164050f5a8b796a01a
|
4
|
+
data.tar.gz: 161769a0cede1101f3aaaea7ef7ceb2561326672
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6c3b9516062265be2abee6b8594d62e81c7498bd4bdfa6dc5cceb5269e73aea1cf140ce1c47e2aceb991586daefa099ae6989d6db3d5e2a2b4c6d9054a0da6db
|
7
|
+
data.tar.gz: f84bcf686ba16cc90fe293adb58127b0fb40792f581a8d71e44c3a3aaeb1977982802768067d00fb6e7ce7ca2674e915f234c29de27142265253a6be8d970fee
|
data/lib/aptible/cli/agent.rb
CHANGED
@@ -7,6 +7,7 @@ require_relative 'helpers/operation'
|
|
7
7
|
require_relative 'helpers/app'
|
8
8
|
|
9
9
|
require_relative 'subcommands/config'
|
10
|
+
require_relative 'subcommands/ssh'
|
10
11
|
|
11
12
|
module Aptible
|
12
13
|
module CLI
|
@@ -15,6 +16,7 @@ module Aptible
|
|
15
16
|
|
16
17
|
include Helpers::Token
|
17
18
|
include Subcommands::Config
|
19
|
+
include Subcommands::SSH
|
18
20
|
|
19
21
|
desc 'version', 'Print Aptible CLI version'
|
20
22
|
def version
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require 'shellwords'
|
2
|
+
|
3
|
+
module Aptible
|
4
|
+
module CLI
|
5
|
+
module Subcommands
|
6
|
+
module SSH
|
7
|
+
# rubocop:disable MethodLength
|
8
|
+
def self.included(thor)
|
9
|
+
thor.class_eval do
|
10
|
+
include Helpers::Operation
|
11
|
+
include Helpers::App
|
12
|
+
|
13
|
+
desc 'ssh COMMAND', 'Run a command against an app'
|
14
|
+
long_desc <<-LONGDESC
|
15
|
+
Runs an interactive command against a remote Aptible app
|
16
|
+
|
17
|
+
If specifying an app, invoke via: aptible ssh [--app=APP] COMMAND
|
18
|
+
LONGDESC
|
19
|
+
option :app
|
20
|
+
def ssh(*args)
|
21
|
+
app = ensure_app(options)
|
22
|
+
host = app.account.bastion_host
|
23
|
+
port = app.account.bastion_port
|
24
|
+
|
25
|
+
ENV['ACCESS_TOKEN'] = fetch_token
|
26
|
+
ENV['APTIBLE_COMMAND'] = command_from_args(*args)
|
27
|
+
ENV['APTIBLE_APP'] = options[:app]
|
28
|
+
|
29
|
+
Kernel.exec "ssh -o 'SendEnv=*' -p #{port} root@#{host}"
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
def command_from_args(*args)
|
35
|
+
Shellwords.join(args)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
# rubocop:enable MethodLength
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
data/lib/aptible/cli/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aptible-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Frank Macreery
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-05-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -159,6 +159,7 @@ files:
|
|
159
159
|
- lib/aptible/cli/helpers/operation.rb
|
160
160
|
- lib/aptible/cli/helpers/token.rb
|
161
161
|
- lib/aptible/cli/subcommands/config.rb
|
162
|
+
- lib/aptible/cli/subcommands/ssh.rb
|
162
163
|
- lib/aptible/cli/version.rb
|
163
164
|
- spec/aptible/cli/agent_spec.rb
|
164
165
|
- spec/spec_helper.rb
|
@@ -182,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
182
183
|
version: '0'
|
183
184
|
requirements: []
|
184
185
|
rubyforge_project:
|
185
|
-
rubygems_version: 2.2.
|
186
|
+
rubygems_version: 2.2.2
|
186
187
|
signing_key:
|
187
188
|
specification_version: 4
|
188
189
|
summary: Command-line interface for Aptible services
|