rake_fly 2.0.0.pre.pre.1 → 2.2.0.pre.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +46 -5
- data/lib/rake_fly/task_sets/pipeline.rb +3 -0
- data/lib/rake_fly/tasks.rb +1 -0
- data/lib/rake_fly/tasks/authentication/login.rb +80 -0
- data/lib/rake_fly/tasks/pipeline/get.rb +8 -2
- data/lib/rake_fly/tasks/pipeline/set.rb +7 -1
- data/lib/rake_fly/tasks/pipeline/unpause.rb +7 -1
- data/lib/rake_fly/version.rb +1 -1
- metadata +61 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 23eaf922de0635c670d45a20ca22f31cc51ac7d307ffa76d6e6cb8dfd1fb64c3
|
4
|
+
data.tar.gz: 4a1e1737b410f93b3f2c390a4abd7006e45d3764a2c352359a2621e29c842521
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b79e5d67473266467b04255dfae3b22a5a432373f6f771adda250d3f0ea827b62512cf7dc333fc34fee98d2242ddecf09a3ddfff1a9bac14724a87192d2d629a
|
7
|
+
data.tar.gz: 7d244c74204f1c3b24d00f21ce5d20f83ce8d5489a8b06d6d0e3958b2057b9f1385a12e864c33eef7296e18ec38f27dc4cc08deed7316ddf76661c5982fe4754
|
data/Gemfile.lock
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
rake_fly (2.
|
4
|
+
rake_fly (2.2.0.pre.4)
|
5
|
+
concourse.rb (>= 0.4)
|
5
6
|
rake_dependencies (~> 2, < 3)
|
6
7
|
rake_factory (>= 0.29, < 1)
|
7
|
-
ruby_fly (>= 0.
|
8
|
+
ruby_fly (>= 0.27)
|
8
9
|
semantic (~> 1.6.1)
|
9
10
|
|
10
11
|
GEM
|
@@ -19,11 +20,46 @@ GEM
|
|
19
20
|
addressable (2.7.0)
|
20
21
|
public_suffix (>= 2.0.2, < 5.0)
|
21
22
|
colored2 (3.1.2)
|
23
|
+
concourse.rb (0.4.0)
|
24
|
+
dry-schema (~> 0.5)
|
25
|
+
excon (~> 0.72)
|
26
|
+
semantic (~> 1.5)
|
22
27
|
concurrent-ruby (1.1.7)
|
23
28
|
diff-lcs (1.4.4)
|
24
29
|
docile (1.3.4)
|
30
|
+
dry-configurable (0.12.0)
|
31
|
+
concurrent-ruby (~> 1.0)
|
32
|
+
dry-core (~> 0.5, >= 0.5.0)
|
33
|
+
dry-container (0.7.2)
|
34
|
+
concurrent-ruby (~> 1.0)
|
35
|
+
dry-configurable (~> 0.1, >= 0.1.3)
|
36
|
+
dry-core (0.5.0)
|
37
|
+
concurrent-ruby (~> 1.0)
|
38
|
+
dry-equalizer (0.3.0)
|
39
|
+
dry-inflector (0.2.0)
|
40
|
+
dry-initializer (3.0.4)
|
41
|
+
dry-logic (1.1.0)
|
42
|
+
concurrent-ruby (~> 1.0)
|
43
|
+
dry-core (~> 0.5, >= 0.5)
|
44
|
+
dry-schema (0.6.0)
|
45
|
+
concurrent-ruby (~> 1.0)
|
46
|
+
dry-configurable (~> 0.8, >= 0.8.0)
|
47
|
+
dry-core (~> 0.4)
|
48
|
+
dry-equalizer (~> 0.2)
|
49
|
+
dry-initializer (~> 3.0)
|
50
|
+
dry-logic (~> 1.0)
|
51
|
+
dry-types (~> 1.0)
|
52
|
+
dry-types (1.4.0)
|
53
|
+
concurrent-ruby (~> 1.0)
|
54
|
+
dry-container (~> 0.3)
|
55
|
+
dry-core (~> 0.4, >= 0.4.4)
|
56
|
+
dry-equalizer (~> 0.3)
|
57
|
+
dry-inflector (~> 0.1, >= 0.1.2)
|
58
|
+
dry-logic (~> 1.0, >= 1.0.2)
|
25
59
|
excon (0.78.1)
|
26
60
|
fakefs (0.20.1)
|
61
|
+
faker (2.15.1)
|
62
|
+
i18n (>= 1.6, < 2)
|
27
63
|
faraday (1.3.0)
|
28
64
|
faraday-net_http (~> 1.0)
|
29
65
|
multipart-post (>= 1.2, < 3)
|
@@ -32,8 +68,9 @@ GEM
|
|
32
68
|
gem-release (2.2.0)
|
33
69
|
hamster (3.0.0)
|
34
70
|
concurrent-ruby (~> 1.0)
|
35
|
-
i18n (1.8.
|
71
|
+
i18n (1.8.7)
|
36
72
|
concurrent-ruby (~> 1.0)
|
73
|
+
jwt (2.2.2)
|
37
74
|
lino (1.7.0)
|
38
75
|
hamster (~> 3.0)
|
39
76
|
open4 (~> 1.3)
|
@@ -44,6 +81,7 @@ GEM
|
|
44
81
|
faraday (>= 0.9)
|
45
82
|
sawyer (~> 0.8.0, >= 0.5.3)
|
46
83
|
open4 (1.3.4)
|
84
|
+
openssl (2.2.0)
|
47
85
|
public_suffix (4.0.6)
|
48
86
|
rake (13.0.3)
|
49
87
|
rake_circle_ci (0.9.0)
|
@@ -85,7 +123,7 @@ GEM
|
|
85
123
|
rspec-support (~> 3.10.0)
|
86
124
|
rspec-support (3.10.1)
|
87
125
|
ruby2_keywords (0.0.2)
|
88
|
-
ruby_fly (0.
|
126
|
+
ruby_fly (0.27.0)
|
89
127
|
lino (>= 1.5)
|
90
128
|
ruby_gpg2 (0.8.0)
|
91
129
|
lino (>= 1.5)
|
@@ -94,7 +132,7 @@ GEM
|
|
94
132
|
addressable (>= 2.3.5)
|
95
133
|
faraday (> 0.8, < 2.0)
|
96
134
|
semantic (1.6.1)
|
97
|
-
simplecov (0.21.
|
135
|
+
simplecov (0.21.1)
|
98
136
|
docile (~> 1.1)
|
99
137
|
simplecov-html (~> 0.11)
|
100
138
|
simplecov_json_formatter (~> 0.1)
|
@@ -113,7 +151,10 @@ DEPENDENCIES
|
|
113
151
|
activesupport (>= 4)
|
114
152
|
bundler (~> 2.1)
|
115
153
|
fakefs (~> 0.18)
|
154
|
+
faker (~> 2.15)
|
116
155
|
gem-release (~> 2.0)
|
156
|
+
jwt (~> 2.2)
|
157
|
+
openssl (~> 2.2)
|
117
158
|
rake (~> 13.0)
|
118
159
|
rake_circle_ci (~> 0.9)
|
119
160
|
rake_fly!
|
@@ -19,6 +19,9 @@ module RakeFly
|
|
19
19
|
parameter :var_files
|
20
20
|
parameter :non_interactive
|
21
21
|
|
22
|
+
parameter :home_directory,
|
23
|
+
default: RakeFactory::DynamicValue.new { |_| ENV['HOME'] }
|
24
|
+
|
22
25
|
parameter :get_task_name, :default => :get
|
23
26
|
parameter :set_task_name, :default => :set
|
24
27
|
parameter :unpause_task_name, :default => :unpause
|
data/lib/rake_fly/tasks.rb
CHANGED
@@ -0,0 +1,80 @@
|
|
1
|
+
require 'ruby_fly'
|
2
|
+
require 'rake_factory'
|
3
|
+
require 'concourse'
|
4
|
+
|
5
|
+
module RakeFly
|
6
|
+
module Tasks
|
7
|
+
module Authentication
|
8
|
+
class Login < RakeFactory::Task
|
9
|
+
class FlyBackend
|
10
|
+
def resolve_prerequisites(task)
|
11
|
+
[task.ensure_task_name]
|
12
|
+
end
|
13
|
+
|
14
|
+
def execute(task)
|
15
|
+
RubyFly.login(
|
16
|
+
target: task.target,
|
17
|
+
concourse_url: task.concourse_url,
|
18
|
+
username: task.username,
|
19
|
+
password: task.password,
|
20
|
+
team: task.team,
|
21
|
+
environment: {
|
22
|
+
"HOME" => task.home_directory
|
23
|
+
})
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
class ApiBackend
|
28
|
+
def resolve_prerequisites(_)
|
29
|
+
[]
|
30
|
+
end
|
31
|
+
|
32
|
+
def execute(task)
|
33
|
+
client = Concourse::Client.new(
|
34
|
+
url: task.concourse_url)
|
35
|
+
token = client.for_skymarshal.create_token(
|
36
|
+
username: task.username,
|
37
|
+
password: task.password)
|
38
|
+
|
39
|
+
rc = RubyFly::RC.load(home: task.home_directory)
|
40
|
+
rc.add_or_update_target(task.target) do |target|
|
41
|
+
target.api = task.concourse_url
|
42
|
+
target.team = task.team
|
43
|
+
target.bearer_token = token.access_token
|
44
|
+
end
|
45
|
+
rc.write!
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
default_name :login
|
50
|
+
default_prerequisites RakeFactory::DynamicValue.new { |t|
|
51
|
+
t.backend.new.resolve_prerequisites(t)
|
52
|
+
}
|
53
|
+
default_description RakeFactory::DynamicValue.new { |t|
|
54
|
+
concourse_url = t.concourse_url || '<derived>'
|
55
|
+
target = t.target || '<derived>'
|
56
|
+
|
57
|
+
"Login to #{concourse_url} as target #{target}"
|
58
|
+
}
|
59
|
+
|
60
|
+
parameter :concourse_url, required: true
|
61
|
+
parameter :team, default: 'main'
|
62
|
+
parameter :target, required: true
|
63
|
+
parameter :username
|
64
|
+
parameter :password
|
65
|
+
|
66
|
+
parameter :backend, default: ApiBackend
|
67
|
+
|
68
|
+
parameter :home_directory,
|
69
|
+
default: RakeFactory::DynamicValue.new { |_| ENV['HOME'] }
|
70
|
+
|
71
|
+
parameter :ensure_task_name, :default => :'fly:ensure'
|
72
|
+
|
73
|
+
action do |t|
|
74
|
+
puts "Logging in to #{t.concourse_url} as target #{t.target}..."
|
75
|
+
t.backend.new.execute(t)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -18,14 +18,20 @@ module RakeFly
|
|
18
18
|
|
19
19
|
parameter :target, :required => true
|
20
20
|
parameter :pipeline, :required => true
|
21
|
-
|
21
|
+
|
22
|
+
parameter :home_directory,
|
23
|
+
default: RakeFactory::DynamicValue.new { |_| ENV['HOME'] }
|
24
|
+
|
22
25
|
parameter :ensure_task_name, :default => :'fly:ensure'
|
23
26
|
|
24
27
|
action do |t|
|
25
28
|
puts "Getting pipeline #{t.pipeline} for target #{t.target}..."
|
26
29
|
RubyFly.get_pipeline(
|
27
30
|
target: t.target,
|
28
|
-
pipeline: t.pipeline
|
31
|
+
pipeline: t.pipeline,
|
32
|
+
environment: {
|
33
|
+
"HOME" => t.home_directory
|
34
|
+
})
|
29
35
|
end
|
30
36
|
end
|
31
37
|
end
|
@@ -25,6 +25,9 @@ module RakeFly
|
|
25
25
|
parameter :var_files
|
26
26
|
parameter :non_interactive
|
27
27
|
|
28
|
+
parameter :home_directory,
|
29
|
+
default: RakeFactory::DynamicValue.new { |_| ENV['HOME'] }
|
30
|
+
|
28
31
|
parameter :ensure_task_name, :default => :'fly:ensure'
|
29
32
|
|
30
33
|
action do |t|
|
@@ -36,7 +39,10 @@ module RakeFly
|
|
36
39
|
config: t.config,
|
37
40
|
vars: t.vars,
|
38
41
|
var_files: t.var_files,
|
39
|
-
non_interactive: t.non_interactive
|
42
|
+
non_interactive: t.non_interactive,
|
43
|
+
environment: {
|
44
|
+
"HOME" => t.home_directory
|
45
|
+
})
|
40
46
|
end
|
41
47
|
end
|
42
48
|
end
|
@@ -20,6 +20,9 @@ module RakeFly
|
|
20
20
|
parameter :team
|
21
21
|
parameter :pipeline, :required => true
|
22
22
|
|
23
|
+
parameter :home_directory,
|
24
|
+
default: RakeFactory::DynamicValue.new { |_| ENV['HOME'] }
|
25
|
+
|
23
26
|
parameter :ensure_task_name, :default => :'fly:ensure'
|
24
27
|
|
25
28
|
action do |t|
|
@@ -27,7 +30,10 @@ module RakeFly
|
|
27
30
|
RubyFly.unpause_pipeline(
|
28
31
|
target: t.target,
|
29
32
|
team: t.team,
|
30
|
-
pipeline: t.pipeline
|
33
|
+
pipeline: t.pipeline,
|
34
|
+
environment: {
|
35
|
+
"HOME" => t.home_directory
|
36
|
+
})
|
31
37
|
end
|
32
38
|
end
|
33
39
|
end
|
data/lib/rake_fly/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake_fly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0.pre.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Toby Clemson
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-01-
|
11
|
+
date: 2021-01-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake_dependencies
|
@@ -56,14 +56,28 @@ dependencies:
|
|
56
56
|
requirements:
|
57
57
|
- - ">="
|
58
58
|
- !ruby/object:Gem::Version
|
59
|
-
version: '0.
|
59
|
+
version: '0.27'
|
60
60
|
type: :runtime
|
61
61
|
prerelease: false
|
62
62
|
version_requirements: !ruby/object:Gem::Requirement
|
63
63
|
requirements:
|
64
64
|
- - ">="
|
65
65
|
- !ruby/object:Gem::Version
|
66
|
-
version: '0.
|
66
|
+
version: '0.27'
|
67
|
+
- !ruby/object:Gem::Dependency
|
68
|
+
name: concourse.rb
|
69
|
+
requirement: !ruby/object:Gem::Requirement
|
70
|
+
requirements:
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: '0.4'
|
74
|
+
type: :runtime
|
75
|
+
prerelease: false
|
76
|
+
version_requirements: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0.4'
|
67
81
|
- !ruby/object:Gem::Dependency
|
68
82
|
name: semantic
|
69
83
|
requirement: !ruby/object:Gem::Requirement
|
@@ -218,6 +232,48 @@ dependencies:
|
|
218
232
|
- - "~>"
|
219
233
|
- !ruby/object:Gem::Version
|
220
234
|
version: '0.18'
|
235
|
+
- !ruby/object:Gem::Dependency
|
236
|
+
name: jwt
|
237
|
+
requirement: !ruby/object:Gem::Requirement
|
238
|
+
requirements:
|
239
|
+
- - "~>"
|
240
|
+
- !ruby/object:Gem::Version
|
241
|
+
version: '2.2'
|
242
|
+
type: :development
|
243
|
+
prerelease: false
|
244
|
+
version_requirements: !ruby/object:Gem::Requirement
|
245
|
+
requirements:
|
246
|
+
- - "~>"
|
247
|
+
- !ruby/object:Gem::Version
|
248
|
+
version: '2.2'
|
249
|
+
- !ruby/object:Gem::Dependency
|
250
|
+
name: openssl
|
251
|
+
requirement: !ruby/object:Gem::Requirement
|
252
|
+
requirements:
|
253
|
+
- - "~>"
|
254
|
+
- !ruby/object:Gem::Version
|
255
|
+
version: '2.2'
|
256
|
+
type: :development
|
257
|
+
prerelease: false
|
258
|
+
version_requirements: !ruby/object:Gem::Requirement
|
259
|
+
requirements:
|
260
|
+
- - "~>"
|
261
|
+
- !ruby/object:Gem::Version
|
262
|
+
version: '2.2'
|
263
|
+
- !ruby/object:Gem::Dependency
|
264
|
+
name: faker
|
265
|
+
requirement: !ruby/object:Gem::Requirement
|
266
|
+
requirements:
|
267
|
+
- - "~>"
|
268
|
+
- !ruby/object:Gem::Version
|
269
|
+
version: '2.15'
|
270
|
+
type: :development
|
271
|
+
prerelease: false
|
272
|
+
version_requirements: !ruby/object:Gem::Requirement
|
273
|
+
requirements:
|
274
|
+
- - "~>"
|
275
|
+
- !ruby/object:Gem::Version
|
276
|
+
version: '2.15'
|
221
277
|
- !ruby/object:Gem::Dependency
|
222
278
|
name: simplecov
|
223
279
|
requirement: !ruby/object:Gem::Requirement
|
@@ -253,6 +309,7 @@ files:
|
|
253
309
|
- lib/rake_fly/task_sets.rb
|
254
310
|
- lib/rake_fly/task_sets/pipeline.rb
|
255
311
|
- lib/rake_fly/tasks.rb
|
312
|
+
- lib/rake_fly/tasks/authentication/login.rb
|
256
313
|
- lib/rake_fly/tasks/pipeline/get.rb
|
257
314
|
- lib/rake_fly/tasks/pipeline/push.rb
|
258
315
|
- lib/rake_fly/tasks/pipeline/set.rb
|