rake_fly 2.1.0 → 2.2.0.pre.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a5f732064d69f725bcf59c6889e28f3e49c96d2763bc0cc9f9403f7229e689e7
4
- data.tar.gz: a0a5e39d6d40c19cab943c11fd9e840cd9cbd356e7ed4500e49b0eb83ca803bb
3
+ metadata.gz: 82c67ea906461f3be457e179bc40ff830f143dd4c3c9e7de817704c5919f26db
4
+ data.tar.gz: 66000a2e914938cd6aa9124353150c1ee3a05479de15d514569255818700e9b2
5
5
  SHA512:
6
- metadata.gz: b510f4e938b368bdd84dbf3c56b0274faa7ffa70ff480b5f11b61251e07ae1011c910cd63e54c6306924b8cb784dccfb6428b7e19e9c7ad6390d01372708ba54
7
- data.tar.gz: 30ee0fa5deacc7be21df4bb746831593e9dcf75835e9b2df924bd2863b5d4bb047ca7f1f31fc3e3ca1eb714135c65ba471bf5308573aa959aa44aeda5b1aef62
6
+ metadata.gz: d9b11f89a341914b885d53043270b62532efd6c3d65f5655e37f1e01d70ff6bdf5db0316067bde44323e85136c4616671d0982e48f3f5a1451e0fa8cf461abff
7
+ data.tar.gz: bb817431a4713fc705e2f75e86e52bfbab3d26c6d28e56e8ef811cb8a08342423eec7563af14fdb32f93e42e7d1eb90860be1db317f99fd73f6af89f12c24138
@@ -1,10 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rake_fly (2.1.0)
4
+ rake_fly (2.2.0.pre.1)
5
+ concourse.rb (= 0.3.0.pre.1)
5
6
  rake_dependencies (~> 2, < 3)
6
7
  rake_factory (>= 0.29, < 1)
7
- ruby_fly (>= 0.19)
8
+ ruby_fly (>= 0.23)
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.3.0.pre.1)
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.6)
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)
@@ -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!
@@ -1,3 +1,4 @@
1
+ require_relative 'tasks/authentication/login'
1
2
  require_relative 'tasks/pipeline/get'
2
3
  require_relative 'tasks/pipeline/set'
3
4
  require_relative 'tasks/pipeline/unpause'
@@ -0,0 +1,72 @@
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(_)
15
+
16
+ end
17
+ end
18
+
19
+ class ApiBackend
20
+ def resolve_prerequisites(_)
21
+ []
22
+ end
23
+
24
+ def execute(task)
25
+ client = Concourse::Client.new(
26
+ url: task.concourse_url)
27
+ token = client.for_skymarshal.create_token(
28
+ username: task.username,
29
+ password: task.password)
30
+
31
+ rc = RubyFly::RC.load(home: task.home_directory)
32
+ rc.add_or_update_target(task.target) do |target|
33
+ target.api = task.concourse_url
34
+ target.team = task.team
35
+ target.bearer_token = token.access_token
36
+ end
37
+ rc.write!
38
+ end
39
+ end
40
+
41
+ default_name :login
42
+ default_prerequisites RakeFactory::DynamicValue.new { |t|
43
+ t.backend.new.resolve_prerequisites(t)
44
+ }
45
+ default_description RakeFactory::DynamicValue.new { |t|
46
+ concourse_url = t.concourse_url || '<derived>'
47
+ target = t.target || '<derived>'
48
+
49
+ "Login to #{concourse_url} as target #{target}"
50
+ }
51
+
52
+ parameter :concourse_url, required: true
53
+ parameter :team, default: 'main'
54
+ parameter :target, required: true
55
+ parameter :username
56
+ parameter :password
57
+
58
+ parameter :backend, default: ApiBackend
59
+
60
+ parameter :home_directory,
61
+ default: RakeFactory::DynamicValue.new { |_| ENV['HOME'] }
62
+
63
+ parameter :ensure_task_name, :default => :'fly:ensure'
64
+
65
+ action do |t|
66
+ puts "Logging in to #{t.concourse_url} as target #{t.target}..."
67
+ t.backend.new.execute(t)
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
@@ -1,3 +1,3 @@
1
1
  module RakeFly
2
- VERSION = '2.1.0'
2
+ VERSION = '2.2.0.pre.1'
3
3
  end
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.1.0
4
+ version: 2.2.0.pre.1
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-03 00:00:00.000000000 Z
11
+ date: 2021-01-04 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.19'
59
+ version: '0.23'
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.19'
66
+ version: '0.23'
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.3.0.pre.1
74
+ type: :runtime
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - '='
79
+ - !ruby/object:Gem::Version
80
+ version: 0.3.0.pre.1
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
@@ -273,9 +330,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
273
330
  version: '2.6'
274
331
  required_rubygems_version: !ruby/object:Gem::Requirement
275
332
  requirements:
276
- - - ">="
333
+ - - ">"
277
334
  - !ruby/object:Gem::Version
278
- version: '0'
335
+ version: 1.3.1
279
336
  requirements: []
280
337
  rubygems_version: 3.0.1
281
338
  signing_key: