ruby_fly 0.24.0.pre.1 → 0.29.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/ruby_fly.rb +12 -1
- data/lib/ruby_fly/commands.rb +1 -0
- data/lib/ruby_fly/commands/base.rb +4 -13
- data/lib/ruby_fly/commands/status.rb +54 -0
- data/lib/ruby_fly/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: afc2d262e88e2435febc5051197999892adad993a925e10d71d9ea176cc7dfb0
|
4
|
+
data.tar.gz: 5f399183a8851cf4dbf28465e7a24cd53986678e381298b3e9825ed40a49c395
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1d4dbf086bcc9422dc3b6f144a8c083981ad72b22c5e877103d355e7e6359021d6bee9e6ce9e2ffbfc18f0ade8cf8d5e1e44d15a3c714619fe7f8ca171cd696d
|
7
|
+
data.tar.gz: aaa7a6d393c711d2d49c1db56d1bc1e258470f7d32bbc0038fba9406e46f14d5cd4f393784af4d5e479ceac09d81d2f9a44f9c5efc04d004076d905c25d73fe0
|
data/Gemfile.lock
CHANGED
data/lib/ruby_fly.rb
CHANGED
@@ -20,6 +20,14 @@ module RubyFly
|
|
20
20
|
end
|
21
21
|
|
22
22
|
module ClassMethods
|
23
|
+
def login(opts = {})
|
24
|
+
Commands::Login.new.execute(opts)
|
25
|
+
end
|
26
|
+
|
27
|
+
def status(opts = {})
|
28
|
+
Commands::Status.new.execute(opts)
|
29
|
+
end
|
30
|
+
|
23
31
|
def get_pipeline(opts = {})
|
24
32
|
Commands::GetPipeline.new.execute(opts)
|
25
33
|
end
|
@@ -43,10 +51,13 @@ module RubyFly
|
|
43
51
|
end
|
44
52
|
|
45
53
|
class Configuration
|
46
|
-
attr_accessor :binary
|
54
|
+
attr_accessor :binary, :stdin, :stdout, :stderr
|
47
55
|
|
48
56
|
def initialize
|
49
57
|
@binary = 'fly'
|
58
|
+
@stdin = ''
|
59
|
+
@stdout = $stdout
|
60
|
+
@stderr = $stderr
|
50
61
|
end
|
51
62
|
end
|
52
63
|
end
|
data/lib/ruby_fly/commands.rb
CHANGED
@@ -3,22 +3,13 @@ require 'lino'
|
|
3
3
|
module RubyFly
|
4
4
|
module Commands
|
5
5
|
class Base
|
6
|
-
attr_reader :binary
|
6
|
+
attr_reader :binary, :stdin, :stdout, :stderr
|
7
7
|
|
8
8
|
def initialize(binary: nil)
|
9
9
|
@binary = binary || RubyFly.configuration.binary
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
''
|
14
|
-
end
|
15
|
-
|
16
|
-
def stdout
|
17
|
-
STDOUT
|
18
|
-
end
|
19
|
-
|
20
|
-
def stderr
|
21
|
-
STDERR
|
10
|
+
@stdin = stdin || RubyFly.configuration.stdin
|
11
|
+
@stdout = stdout || RubyFly.configuration.stdout
|
12
|
+
@stderr = stderr || RubyFly.configuration.stderr
|
22
13
|
end
|
23
14
|
|
24
15
|
def execute(opts = {})
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require 'lino'
|
2
|
+
require_relative 'base'
|
3
|
+
require_relative 'mixins/environment'
|
4
|
+
|
5
|
+
module RubyFly
|
6
|
+
module Commands
|
7
|
+
class Status < Base
|
8
|
+
include Mixins::Environment
|
9
|
+
|
10
|
+
def initialize(*args)
|
11
|
+
super(*args)
|
12
|
+
@stdout = StringIO.new unless
|
13
|
+
(defined?(@stdout) && @stdout.respond_to?(:string))
|
14
|
+
@stderr = StringIO.new unless
|
15
|
+
(defined?(@stderr) && @stderr.respond_to?(:string))
|
16
|
+
end
|
17
|
+
|
18
|
+
def configure_command(builder, opts)
|
19
|
+
builder = super(builder, opts)
|
20
|
+
|
21
|
+
missing_params = [
|
22
|
+
:target
|
23
|
+
].select { |param| opts[param].nil? }
|
24
|
+
|
25
|
+
unless missing_params.empty?
|
26
|
+
description = missing_params.map { |p| "'#{p}'" }.join(', ')
|
27
|
+
raise(
|
28
|
+
ArgumentError,
|
29
|
+
"Error: #{description} required but not provided.")
|
30
|
+
end
|
31
|
+
|
32
|
+
target = opts[:target]
|
33
|
+
|
34
|
+
builder
|
35
|
+
.with_subcommand('status') do |sub|
|
36
|
+
sub = sub.with_option('-t', target)
|
37
|
+
sub
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def do_after(opts)
|
42
|
+
output = stdout.string
|
43
|
+
error = stderr.string
|
44
|
+
|
45
|
+
return :logged_in if output =~ /logged in successfully/
|
46
|
+
return :logged_out if error =~ /logged out/
|
47
|
+
return :session_expired if error =~ /please login again/
|
48
|
+
return :unknown_target if error =~ /error: unknown target/
|
49
|
+
|
50
|
+
:unknown_status
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
data/lib/ruby_fly/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_fly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.29.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Toby Clemson
|
@@ -187,6 +187,7 @@ files:
|
|
187
187
|
- lib/ruby_fly/commands/login.rb
|
188
188
|
- lib/ruby_fly/commands/mixins/environment.rb
|
189
189
|
- lib/ruby_fly/commands/set_pipeline.rb
|
190
|
+
- lib/ruby_fly/commands/status.rb
|
190
191
|
- lib/ruby_fly/commands/unpause_pipeline.rb
|
191
192
|
- lib/ruby_fly/commands/version.rb
|
192
193
|
- lib/ruby_fly/rc.rb
|
@@ -206,9 +207,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
206
207
|
version: '2.6'
|
207
208
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
208
209
|
requirements:
|
209
|
-
- - "
|
210
|
+
- - ">="
|
210
211
|
- !ruby/object:Gem::Version
|
211
|
-
version:
|
212
|
+
version: '0'
|
212
213
|
requirements: []
|
213
214
|
rubygems_version: 3.0.1
|
214
215
|
signing_key:
|