rake_circle_ci 0.7.0 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +48 -30
  3. data/Rakefile +31 -5
  4. data/lib/rake_circle_ci/client.rb +41 -8
  5. data/lib/rake_circle_ci/task_sets.rb +1 -0
  6. data/lib/rake_circle_ci/task_sets/checkout_keys.rb +33 -0
  7. data/lib/rake_circle_ci/task_sets/project.rb +26 -0
  8. data/lib/rake_circle_ci/tasks.rb +1 -0
  9. data/lib/rake_circle_ci/tasks/checkout_keys.rb +10 -0
  10. data/lib/rake_circle_ci/tasks/checkout_keys/destroy.rb +32 -0
  11. data/lib/rake_circle_ci/tasks/checkout_keys/ensure.rb +25 -0
  12. data/lib/rake_circle_ci/tasks/checkout_keys/provision.rb +39 -0
  13. data/lib/rake_circle_ci/version.rb +1 -1
  14. metadata +16 -39
  15. data/.circleci/config.yml +0 -56
  16. data/.circleci/gpg.private.enc +0 -0
  17. data/.envrc +0 -5
  18. data/.git-crypt/.gitattributes +0 -4
  19. data/.git-crypt/keys/default/0/41D2606F66C3FF28874362B61A16916844CE9D82.gpg +0 -0
  20. data/.git-crypt/keys/default/0/AAE932B730C2BA697FFDFAE05DA390873E38358B.gpg +0 -0
  21. data/.gitattributes +0 -1
  22. data/.gitignore +0 -33
  23. data/.rspec +0 -2
  24. data/.ruby-version +0 -1
  25. data/config/secrets/.unlocked +0 -1
  26. data/config/secrets/ci/encryption.passphrase +0 -1
  27. data/config/secrets/ci/gpg.private +0 -58
  28. data/config/secrets/ci/gpg.public +0 -31
  29. data/config/secrets/ci/ssh.private +0 -51
  30. data/config/secrets/ci/ssh.public +0 -1
  31. data/config/secrets/circle_ci/config.yaml +0 -2
  32. data/config/secrets/github/config.yaml +0 -2
  33. data/config/secrets/rubygems/credentials +0 -2
  34. data/go +0 -56
  35. data/rake_circle_ci.gemspec +0 -41
  36. data/scripts/ci/common/configure-git.sh +0 -8
  37. data/scripts/ci/common/configure-rubygems.sh +0 -16
  38. data/scripts/ci/common/install-git-crypt.sh +0 -8
  39. data/scripts/ci/common/install-gpg-key.sh +0 -19
  40. data/scripts/ci/steps/prerelease.sh +0 -16
  41. data/scripts/ci/steps/release.sh +0 -18
  42. data/scripts/ci/steps/test.sh +0 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a10f6659a206da2c31d73485f67d35884633f4def0f590d4bdd5c7eaf7a480a0
4
- data.tar.gz: 86e173abc18927d81a482ac03fb5af4e1a9debdb763a53192e12c36cf3a6bce1
3
+ metadata.gz: df01b15934a1f1c652164b438a959c7d4bd2b820aaf356f0c20abe061fc2daa7
4
+ data.tar.gz: 3029901aef29f0ab317714f2095e8049e7ead9b8bfdf924987464ca76078a348
5
5
  SHA512:
6
- metadata.gz: 76547a731400169a758c5317683ebb510af1cc7a9ce2b61242810e5cbcae31a092f7e2cc2e67b47f39d547e994cd2ab3f4b9be8fbea5b5add42cb1fb2ce0ca3d
7
- data.tar.gz: ccdd95c408210309ab82c190ad86bb54f91166530858a5271cb3e108a1c1adee7f747bfc5168cd90b3e8417a8df38a351787f4531fb86485d3f20c5ae6170df6
6
+ metadata.gz: ff9b610cca268ee55568eeb9ad9a56031daf67ab80d426f77ad496fe21cef2137d15e164f8164eb27752ddd1a223ae313424bd002865a75a3bc56a1b7a0a60a4
7
+ data.tar.gz: 1a9071d30ef1c3f7c1fd7a038ee2a1b690c487f1f89679e7538649418a29d8a424ca3534b95a3aa889c902426c12747bd748eb73eb72c5fd8577d016bbca3472
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rake_circle_ci (0.7.0)
4
+ rake_circle_ci (0.9.0)
5
5
  colored2 (~> 3.1)
6
6
  excon (~> 0.72)
7
7
  rake_factory (~> 0.23)
@@ -10,7 +10,7 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (5.2.4.2)
13
+ activesupport (5.2.4.4)
14
14
  concurrent-ruby (~> 1.0, >= 1.0.2)
15
15
  i18n (>= 0.7, < 2)
16
16
  minitest (~> 5.1)
@@ -18,23 +18,32 @@ GEM
18
18
  addressable (2.7.0)
19
19
  public_suffix (>= 2.0.2, < 5.0)
20
20
  colored2 (3.1.2)
21
- concurrent-ruby (1.1.6)
22
- diff-lcs (1.3)
23
- docile (1.3.2)
24
- excon (0.73.0)
25
- faraday (1.0.1)
21
+ concurrent-ruby (1.1.7)
22
+ diff-lcs (1.4.4)
23
+ docile (1.3.4)
24
+ excon (0.78.1)
25
+ faraday (1.3.0)
26
+ faraday-net_http (~> 1.0)
26
27
  multipart-post (>= 1.2, < 3)
27
- gem-release (2.1.1)
28
- i18n (1.8.2)
28
+ ruby2_keywords
29
+ faraday-net_http (1.0.0)
30
+ gem-release (2.2.0)
31
+ hamster (3.0.0)
29
32
  concurrent-ruby (~> 1.0)
33
+ i18n (1.8.6)
34
+ concurrent-ruby (~> 1.0)
35
+ lino (1.5.0)
36
+ hamster (~> 3.0)
37
+ open4 (~> 1.3)
30
38
  memfs (1.0.0)
31
- minitest (5.14.0)
39
+ minitest (5.14.2)
32
40
  multipart-post (2.1.1)
33
- octokit (4.18.0)
41
+ octokit (4.20.0)
34
42
  faraday (>= 0.9)
35
43
  sawyer (~> 0.8.0, >= 0.5.3)
36
- public_suffix (4.0.4)
37
- rake (13.0.1)
44
+ open4 (1.3.4)
45
+ public_suffix (4.0.6)
46
+ rake (13.0.3)
38
47
  rake_factory (0.27.0)
39
48
  activesupport (>= 4)
40
49
  rake (~> 13.0)
@@ -43,33 +52,41 @@ GEM
43
52
  octokit (~> 4.16)
44
53
  rake_factory (~> 0.23)
45
54
  sshkey (~> 2.0)
55
+ rake_gpg (0.12.0)
56
+ rake_factory (>= 0.23, < 1)
57
+ ruby_gpg2 (>= 0.6, < 1)
46
58
  rake_ssh (0.4.0)
47
59
  colored2 (~> 3.1)
48
60
  rake_factory (~> 0.23)
49
61
  sshkey (~> 2.0)
50
- rspec (3.9.0)
51
- rspec-core (~> 3.9.0)
52
- rspec-expectations (~> 3.9.0)
53
- rspec-mocks (~> 3.9.0)
54
- rspec-core (3.9.1)
55
- rspec-support (~> 3.9.1)
56
- rspec-expectations (3.9.1)
62
+ rspec (3.10.0)
63
+ rspec-core (~> 3.10.0)
64
+ rspec-expectations (~> 3.10.0)
65
+ rspec-mocks (~> 3.10.0)
66
+ rspec-core (3.10.1)
67
+ rspec-support (~> 3.10.0)
68
+ rspec-expectations (3.10.1)
57
69
  diff-lcs (>= 1.2.0, < 2.0)
58
- rspec-support (~> 3.9.0)
59
- rspec-mocks (3.9.1)
70
+ rspec-support (~> 3.10.0)
71
+ rspec-mocks (3.10.1)
60
72
  diff-lcs (>= 1.2.0, < 2.0)
61
- rspec-support (~> 3.9.0)
62
- rspec-support (3.9.2)
73
+ rspec-support (~> 3.10.0)
74
+ rspec-support (3.10.1)
75
+ ruby2_keywords (0.0.2)
76
+ ruby_gpg2 (0.6.0)
77
+ lino (>= 1.5)
63
78
  sawyer (0.8.2)
64
79
  addressable (>= 2.3.5)
65
80
  faraday (> 0.8, < 2.0)
66
- simplecov (0.18.5)
81
+ simplecov (0.20.0)
67
82
  docile (~> 1.1)
68
83
  simplecov-html (~> 0.11)
69
- simplecov-html (0.12.2)
84
+ simplecov_json_formatter (~> 0.1)
85
+ simplecov-html (0.12.3)
86
+ simplecov_json_formatter (0.1.2)
70
87
  sshkey (2.0.0)
71
88
  thread_safe (0.3.6)
72
- tzinfo (1.2.7)
89
+ tzinfo (1.2.9)
73
90
  thread_safe (~> 0.1)
74
91
 
75
92
  PLATFORMS
@@ -82,10 +99,11 @@ DEPENDENCIES
82
99
  memfs (~> 1.0)
83
100
  rake (~> 13.0)
84
101
  rake_circle_ci!
85
- rake_github (~> 0.3)
86
- rake_ssh (~> 0.2)
102
+ rake_github (~> 0.5)
103
+ rake_gpg (~> 0.12)
104
+ rake_ssh (~> 0.4)
87
105
  rspec (~> 3.9)
88
106
  simplecov (~> 0.16)
89
107
 
90
108
  BUNDLED WITH
91
- 2.1.4
109
+ 2.2.4
data/Rakefile CHANGED
@@ -2,17 +2,40 @@ require 'yaml'
2
2
  require 'rake_circle_ci'
3
3
  require 'rake_github'
4
4
  require 'rake_ssh'
5
+ require 'rake_gpg'
6
+ require 'securerandom'
5
7
  require 'rspec/core/rake_task'
6
8
 
7
9
  task :default => :spec
8
10
 
9
11
  RSpec::Core::RakeTask.new(:spec)
10
12
 
11
- RakeSSH.define_key_tasks(
12
- namespace: :deploy_key,
13
- path: 'config/secrets/ci/',
14
- comment: 'maintainers@infrablocks.io'
15
- )
13
+ namespace :encryption do
14
+ namespace :passphrase do
15
+ task :generate do
16
+ File.open('config/secrets/ci/encryption.passphrase', 'w') do |f|
17
+ f.write(SecureRandom.base64(36))
18
+ end
19
+ end
20
+ end
21
+ end
22
+
23
+ namespace :keys do
24
+ namespace :deploy do
25
+ RakeSSH.define_key_tasks(
26
+ path: 'config/secrets/ci/',
27
+ comment: 'maintainers@infrablocks.io')
28
+ end
29
+
30
+ namespace :gpg do
31
+ RakeGPG.define_generate_key_task(
32
+ output_directory: 'config/secrets/ci',
33
+ name_prefix: 'gpg',
34
+ owner_name: 'InfraBlocks Maintainers',
35
+ owner_email: 'maintainers@infrablocks.io',
36
+ owner_comment: 'rake_circle_ci CI Key')
37
+ end
38
+ end
16
39
 
17
40
  RakeCircleCI.define_project_tasks(
18
41
  namespace: :circle_ci,
@@ -27,6 +50,7 @@ RakeCircleCI.define_project_tasks(
27
50
  File.read('config/secrets/ci/encryption.passphrase')
28
51
  .chomp
29
52
  }
53
+ t.checkout_keys = []
30
54
  t.ssh_keys = [
31
55
  {
32
56
  hostname: "github.com",
@@ -53,7 +77,9 @@ end
53
77
 
54
78
  namespace :pipeline do
55
79
  task :prepare => [
80
+ :'circle_ci:project:follow',
56
81
  :'circle_ci:env_vars:ensure',
82
+ :'circle_ci:checkout_keys:ensure',
57
83
  :'circle_ci:ssh_keys:ensure',
58
84
  :'github:deploy_keys:ensure'
59
85
  ]
@@ -41,13 +41,8 @@ module RakeCircleCI
41
41
 
42
42
  def find_ssh_keys
43
43
  response = assert_successful(Excon.get(settings_url, headers: headers))
44
- body = JSON.parse(response.body)
45
- ssh_keys = body["ssh_keys"].map do |ssh_key|
46
- {
47
- fingerprint: ssh_key["fingerprint"],
48
- hostname: ssh_key["hostname"]
49
- }
50
- end
44
+ body = JSON.parse(response.body, symbolize_names: true)
45
+ ssh_keys = body[:ssh_keys]
51
46
 
52
47
  ssh_keys
53
48
  end
@@ -84,6 +79,36 @@ module RakeCircleCI
84
79
  end
85
80
  end
86
81
 
82
+ def find_checkout_keys
83
+ response = assert_successful(
84
+ Excon.get(checkout_keys_url, headers: headers))
85
+ checkout_keys = JSON.parse(response.body, symbolize_names: true)
86
+
87
+ checkout_keys
88
+ end
89
+
90
+ def create_checkout_key(type)
91
+ type_strings = {
92
+ deploy_key: 'deploy-key',
93
+ github_user_key: 'github-user-key'
94
+ }
95
+ body = JSON.dump(type: type_strings[type.to_sym] || type.to_s)
96
+ assert_successful(
97
+ Excon.post(checkout_keys_url, body: body, headers: headers))
98
+ end
99
+
100
+ def delete_checkout_key(fingerprint)
101
+ assert_successful(
102
+ Excon.delete(checkout_key_url(fingerprint), headers: headers))
103
+ end
104
+
105
+ def delete_checkout_keys
106
+ checkout_keys = find_checkout_keys
107
+ checkout_keys.each do |checkout_key|
108
+ delete_checkout_key(checkout_key[:fingerprint])
109
+ end
110
+ end
111
+
87
112
  private
88
113
 
89
114
  def headers
@@ -127,5 +152,13 @@ module RakeCircleCI
127
152
  "#{@base_url}/v1.1/project/#{@project_slug}/ssh-key?" +
128
153
  "circle-token=#{@api_token}"
129
154
  end
155
+
156
+ def checkout_keys_url
157
+ "#{@base_url}/v1.1/project/#{@project_slug}/checkout-key"
158
+ end
159
+
160
+ def checkout_key_url(fingerprint)
161
+ "#{@base_url}/v1.1/project/#{@project_slug}/checkout-key/#{fingerprint}"
162
+ end
130
163
  end
131
- end
164
+ end
@@ -1,4 +1,5 @@
1
1
  require_relative 'task_sets/environment_variables'
2
+ require_relative 'task_sets/checkout_keys'
2
3
  require_relative 'task_sets/ssh_keys'
3
4
  require_relative 'task_sets/project'
4
5
 
@@ -0,0 +1,33 @@
1
+ require 'rake_factory'
2
+
3
+ require_relative '../tasks'
4
+
5
+ module RakeCircleCI
6
+ module TaskSets
7
+ class CheckoutKeys < RakeFactory::TaskSet
8
+ prepend RakeFactory::Namespaceable
9
+
10
+ parameter :project_slug, required: true
11
+ parameter :api_token, required: true
12
+ parameter :base_url, default: 'https://circleci.com/api'
13
+ parameter :checkout_keys, default: []
14
+
15
+ parameter :destroy_task_name, default: :destroy
16
+ parameter :provision_task_name, default: :provision
17
+ parameter :ensure_task_name, default: :ensure
18
+
19
+ task Tasks::CheckoutKeys::Provision,
20
+ name: RakeFactory::DynamicValue.new { |ts|
21
+ ts.provision_task_name
22
+ }
23
+ task Tasks::CheckoutKeys::Destroy,
24
+ name: RakeFactory::DynamicValue.new { |ts|
25
+ ts.destroy_task_name
26
+ }
27
+ task Tasks::CheckoutKeys::Ensure,
28
+ name: RakeFactory::DynamicValue.new { |ts|
29
+ ts.ensure_task_name
30
+ }
31
+ end
32
+ end
33
+ end
@@ -12,6 +12,7 @@ module RakeCircleCI
12
12
  parameter :base_url, default: 'https://circleci.com/api'
13
13
  parameter :environment_variables, default: {}
14
14
  parameter :ssh_keys, default: {}
15
+ parameter :checkout_keys, default: []
15
16
 
16
17
  parameter :env_vars_namespace, default: :env_vars
17
18
  parameter :env_vars_destroy_task_name, default: :destroy
@@ -23,6 +24,11 @@ module RakeCircleCI
23
24
  parameter :ssh_keys_provision_task_name, default: :provision
24
25
  parameter :ssh_keys_ensure_task_name, default: :ensure
25
26
 
27
+ parameter :checkout_keys_namespace, default: :checkout_keys
28
+ parameter :checkout_keys_destroy_task_name, default: :destroy
29
+ parameter :checkout_keys_provision_task_name, default: :provision
30
+ parameter :checkout_keys_ensure_task_name, default: :ensure
31
+
26
32
  parameter :project_namespace, default: :project
27
33
  parameter :project_follow_task_name, default: :follow
28
34
 
@@ -62,6 +68,24 @@ module RakeCircleCI
62
68
  provision_task_name: RakeFactory::DynamicValue.new { |ts|
63
69
  ts.ssh_keys_provision_task_name
64
70
  }
71
+ task Tasks::CheckoutKeys::Provision,
72
+ name: RakeFactory::DynamicValue.new { |ts|
73
+ ts.checkout_keys_provision_task_name
74
+ }
75
+ task Tasks::CheckoutKeys::Destroy,
76
+ name: RakeFactory::DynamicValue.new { |ts|
77
+ ts.checkout_keys_destroy_task_name
78
+ }
79
+ task Tasks::CheckoutKeys::Ensure,
80
+ name: RakeFactory::DynamicValue.new { |ts|
81
+ ts.checkout_keys_ensure_task_name
82
+ },
83
+ destroy_task_name: RakeFactory::DynamicValue.new { |ts|
84
+ ts.checkout_keys_destroy_task_name
85
+ },
86
+ provision_task_name: RakeFactory::DynamicValue.new { |ts|
87
+ ts.checkout_keys_provision_task_name
88
+ }
65
89
  task Tasks::Projects::Follow,
66
90
  name: RakeFactory::DynamicValue.new { |ts|
67
91
  ts.project_follow_task_name
@@ -75,6 +99,8 @@ module RakeCircleCI
75
99
  env_vars_namespace
76
100
  when /SSHKeys/
77
101
  ssh_keys_namespace
102
+ when /CheckoutKeys/
103
+ checkout_keys_namespace
78
104
  else
79
105
  project_namespace
80
106
  end
@@ -1,6 +1,7 @@
1
1
  require_relative 'tasks/projects'
2
2
  require_relative 'tasks/environment_variables'
3
3
  require_relative 'tasks/ssh_keys'
4
+ require_relative 'tasks/checkout_keys'
4
5
 
5
6
  module RakeCircleCI
6
7
  module Tasks
@@ -0,0 +1,10 @@
1
+ require_relative 'checkout_keys/provision'
2
+ require_relative 'checkout_keys/destroy'
3
+ require_relative 'checkout_keys/ensure'
4
+
5
+ module RakeCircleCI
6
+ module Tasks
7
+ module CheckoutKeys
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,32 @@
1
+ require 'rake_factory'
2
+
3
+ require_relative '../../client'
4
+
5
+ module RakeCircleCI
6
+ module Tasks
7
+ module CheckoutKeys
8
+ class Destroy < RakeFactory::Task
9
+ default_name :destroy
10
+ default_description RakeFactory::DynamicValue.new { |t|
11
+ "Destroy checkout keys in the #{t.project_slug} project"
12
+ }
13
+
14
+ parameter :project_slug, required: true
15
+ parameter :api_token, required: true
16
+ parameter :base_url, default: 'https://circleci.com/api'
17
+
18
+ action do |t|
19
+ client = Client.new(
20
+ base_url: t.base_url,
21
+ api_token: t.api_token,
22
+ project_slug: t.project_slug)
23
+
24
+ print "Destroying all checkout keys in the '#{t.project_slug}' " +
25
+ "project... "
26
+ client.delete_checkout_keys
27
+ puts "Done."
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,25 @@
1
+ require 'rake_factory'
2
+
3
+ module RakeCircleCI
4
+ module Tasks
5
+ module CheckoutKeys
6
+ class Ensure < RakeFactory::Task
7
+ default_name :ensure
8
+ default_description RakeFactory::DynamicValue.new { |t|
9
+ 'Ensure checkout keys are configured on the ' +
10
+ "#{t.project_slug} project"
11
+ }
12
+
13
+ parameter :project_slug, required: true
14
+
15
+ parameter :provision_task_name, default: :provision
16
+ parameter :destroy_task_name, default: :destroy
17
+
18
+ action do |t, args|
19
+ t.application[t.destroy_task_name, t.scope].invoke(*args)
20
+ t.application[t.provision_task_name, t.scope].invoke(*args)
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,39 @@
1
+ require 'rake_factory'
2
+
3
+ require_relative '../../client'
4
+
5
+ module RakeCircleCI
6
+ module Tasks
7
+ module CheckoutKeys
8
+ class Provision < RakeFactory::Task
9
+ default_name :provision
10
+ default_description RakeFactory::DynamicValue.new { |t|
11
+ "Provision checkout keys on the #{t.project_slug} project"
12
+ }
13
+
14
+ parameter :project_slug, required: true
15
+ parameter :api_token, required: true
16
+ parameter :base_url, default: 'https://circleci.com/api'
17
+ parameter :checkout_keys, default: []
18
+
19
+ action do |t|
20
+ client = Client.new(
21
+ base_url: t.base_url,
22
+ api_token: t.api_token,
23
+ project_slug: t.project_slug)
24
+
25
+ puts "Provisioning all checkout keys to the '#{t.project_slug}' " +
26
+ "project... "
27
+
28
+ t.checkout_keys.each do |checkout_key|
29
+ type = checkout_key[:type]
30
+
31
+ print "Adding checkout key of type: '#{type}'..."
32
+ client.create_checkout_key(type)
33
+ puts "Done."
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -1,3 +1,3 @@
1
1
  module RakeCircleCI
2
- VERSION = '0.7.0'
2
+ VERSION = '0.9.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake_circle_ci
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Toby Clemson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-04-18 00:00:00.000000000 Z
11
+ date: 2021-01-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake_factory
@@ -95,47 +95,47 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: '13.0'
97
97
  - !ruby/object:Gem::Dependency
98
- name: rake_circle_ci
98
+ name: rake_github
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0.3'
103
+ version: '0.5'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '0.3'
110
+ version: '0.5'
111
111
  - !ruby/object:Gem::Dependency
112
- name: rake_github
112
+ name: rake_ssh
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0.3'
117
+ version: '0.4'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0.3'
124
+ version: '0.4'
125
125
  - !ruby/object:Gem::Dependency
126
- name: rake_ssh
126
+ name: rake_gpg
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0.2'
131
+ version: '0.12'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '0.2'
138
+ version: '0.12'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rspec
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -213,16 +213,6 @@ executables: []
213
213
  extensions: []
214
214
  extra_rdoc_files: []
215
215
  files:
216
- - ".circleci/config.yml"
217
- - ".circleci/gpg.private.enc"
218
- - ".envrc"
219
- - ".git-crypt/.gitattributes"
220
- - ".git-crypt/keys/default/0/41D2606F66C3FF28874362B61A16916844CE9D82.gpg"
221
- - ".git-crypt/keys/default/0/AAE932B730C2BA697FFDFAE05DA390873E38358B.gpg"
222
- - ".gitattributes"
223
- - ".gitignore"
224
- - ".rspec"
225
- - ".ruby-version"
226
216
  - CODE_OF_CONDUCT.md
227
217
  - Gemfile
228
218
  - Gemfile.lock
@@ -231,23 +221,18 @@ files:
231
221
  - Rakefile
232
222
  - bin/console
233
223
  - bin/setup
234
- - config/secrets/.unlocked
235
- - config/secrets/ci/encryption.passphrase
236
- - config/secrets/ci/gpg.private
237
- - config/secrets/ci/gpg.public
238
- - config/secrets/ci/ssh.private
239
- - config/secrets/ci/ssh.public
240
- - config/secrets/circle_ci/config.yaml
241
- - config/secrets/github/config.yaml
242
- - config/secrets/rubygems/credentials
243
- - go
244
224
  - lib/rake_circle_ci.rb
245
225
  - lib/rake_circle_ci/client.rb
246
226
  - lib/rake_circle_ci/task_sets.rb
227
+ - lib/rake_circle_ci/task_sets/checkout_keys.rb
247
228
  - lib/rake_circle_ci/task_sets/environment_variables.rb
248
229
  - lib/rake_circle_ci/task_sets/project.rb
249
230
  - lib/rake_circle_ci/task_sets/ssh_keys.rb
250
231
  - lib/rake_circle_ci/tasks.rb
232
+ - lib/rake_circle_ci/tasks/checkout_keys.rb
233
+ - lib/rake_circle_ci/tasks/checkout_keys/destroy.rb
234
+ - lib/rake_circle_ci/tasks/checkout_keys/ensure.rb
235
+ - lib/rake_circle_ci/tasks/checkout_keys/provision.rb
251
236
  - lib/rake_circle_ci/tasks/environment_variables.rb
252
237
  - lib/rake_circle_ci/tasks/environment_variables/destroy.rb
253
238
  - lib/rake_circle_ci/tasks/environment_variables/ensure.rb
@@ -259,14 +244,6 @@ files:
259
244
  - lib/rake_circle_ci/tasks/ssh_keys/ensure.rb
260
245
  - lib/rake_circle_ci/tasks/ssh_keys/provision.rb
261
246
  - lib/rake_circle_ci/version.rb
262
- - rake_circle_ci.gemspec
263
- - scripts/ci/common/configure-git.sh
264
- - scripts/ci/common/configure-rubygems.sh
265
- - scripts/ci/common/install-git-crypt.sh
266
- - scripts/ci/common/install-gpg-key.sh
267
- - scripts/ci/steps/prerelease.sh
268
- - scripts/ci/steps/release.sh
269
- - scripts/ci/steps/test.sh
270
247
  homepage: https://github.com/infrablocks/rake_circle_ci
271
248
  licenses:
272
249
  - MIT
@@ -1,56 +0,0 @@
1
- version: 2.1
2
- jobs:
3
- test:
4
- working_directory: ~/rake-circle-ci
5
- docker:
6
- - image: ruby:2.6.0
7
- steps:
8
- - checkout
9
- - run: ./scripts/ci/steps/test.sh
10
- prerelease:
11
- working_directory: ~/rake-circle-ci
12
- docker:
13
- - image: ruby:2.6.0
14
- steps:
15
- - checkout
16
- - run: ./scripts/ci/common/install-git-crypt.sh
17
- - run: ./scripts/ci/common/install-gpg-key.sh
18
- - run: ./scripts/ci/common/configure-git.sh
19
- - run: ./scripts/ci/common/configure-rubygems.sh
20
- - run: ./scripts/ci/steps/prerelease.sh
21
- release:
22
- working_directory: ~/rake-circle-ci
23
- docker:
24
- - image: ruby:2.6.0
25
- steps:
26
- - checkout
27
- - run: ./scripts/ci/common/install-git-crypt.sh
28
- - run: ./scripts/ci/common/install-gpg-key.sh
29
- - run: ./scripts/ci/common/configure-git.sh
30
- - run: ./scripts/ci/common/configure-rubygems.sh
31
- - run: ./scripts/ci/steps/release.sh
32
-
33
- workflows:
34
- version: 2
35
- pipeline:
36
- jobs:
37
- - test
38
- - prerelease:
39
- requires:
40
- - test
41
- filters:
42
- branches:
43
- only: master
44
- - hold:
45
- type: approval
46
- requires:
47
- - prerelease
48
- filters:
49
- branches:
50
- only: master
51
- - release:
52
- requires:
53
- - hold
54
- filters:
55
- branches:
56
- only: master
Binary file
data/.envrc DELETED
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- PROJECT_DIR="$(pwd)"
4
-
5
- PATH_add ${PROJECT_DIR}
@@ -1,4 +0,0 @@
1
- # Do not edit this file. To specify the files to encrypt, create your own
2
- # .gitattributes file in the directory where your files are.
3
- * !filter !diff
4
- *.gpg binary
@@ -1 +0,0 @@
1
- config/secrets/** filter=git-crypt diff=git-crypt
data/.gitignore DELETED
@@ -1,33 +0,0 @@
1
- ## Standard stuff:
2
- *.gem
3
- *.rbc
4
- /build
5
- /.config
6
- /coverage/
7
- /InstalledFiles
8
- /pkg/
9
- .rspec_status
10
- /spec/reports/
11
- /spec/examples.txt
12
- /test/tmp/
13
- /test/version_tmp/
14
- /tmp/
15
- .rakeTasks
16
-
17
- ## Documentation cache and generated files:
18
- /.yardoc/
19
- /_yardoc/
20
- /doc/
21
- /rdoc/
22
- /coverage/
23
-
24
- ## Environment normalization:
25
- /.bundle/
26
- /vendor/bundle
27
- /lib/bundler/man/
28
-
29
- ## IDE:
30
- .idea
31
- *.ipr
32
- *.iws
33
- *.iml
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --format documentation
2
- --color
@@ -1 +0,0 @@
1
- 2.6.0
@@ -1 +0,0 @@
1
- true
@@ -1 +0,0 @@
1
- fmFsBRd0haxdPyYDNZkgDHojaZ3MgWg5DFZKrzJtQCVdehpX
@@ -1,58 +0,0 @@
1
- -----BEGIN PGP PRIVATE KEY BLOCK-----
2
-
3
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- EKCv7RVqYA48t5nI9fco5+iY08s9ZSIZNCickuw4HafWWRJaTnfqxjuMCNEPIApI
11
- X9dxitCg4Qr5genbJkspoIi84C6R0tRF/PhadZg3VOXnASLFmk0JPj9OY1a88/r1
12
- SU3uCE0yIxjD++UWBw4cBJec1Y4VoUfvnYe31RqvhRmNH5uCddK1xBXK0Bc9xV2L
13
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- rWupgrH1oEPUv0RkM43KV82wqoxJJaGdA5gEXmJqOAEIALXw6hlF/PWRPIWIO6tJ
31
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- A3irLD3flxTPC21AOr7aI1Wi8uiAMSucgYSbgxfwrPw/xz6GZxBz+PPBY8zWdVtT
44
- 3oMhH0XKhksxObCZBADwErV9TAnzs3kWho846DKE8LtvXYq0E72LD3BczxNRk67g
45
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- BeLPTuj2jNYxNSzax6TjYUGnRZES1/w1lOWHcBjM3A2XcR7sLNHQkM0NWsmL941t
53
- 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
- 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
- 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
56
- 3zYh8+8wYJ4+vrkTFspeu2s=
57
- =bs3g
58
- -----END PGP PRIVATE KEY BLOCK-----
@@ -1,31 +0,0 @@
1
- -----BEGIN PGP PUBLIC KEY BLOCK-----
2
-
3
- mQENBF5iajgBCADpMbSEz+Fl4HgUxXQLTuIi01QMf/dkwVDuwNrPdVtkKKi27RS5
4
- OOiJYYzHkSqJwdbrMf1R/Uj1S4D4zP9BPc9VmKm1tPRnk4rrhpJPE9jR9X/6RTw3
5
- ilIqelK84WfR74yAbaQYtEF3YEOhWSCvwsf3jQuE8LBMGh+Zf8DlYeH5wBvIIF5x
6
- y0GDktvq5+dr/szqi8rMCz3MdiouUDbyWmMKwjmegSLzS/kf8dgiEg7iChVYNSAT
7
- SBqxRZCWADiO61vzTO8YlZj4ke+S7Lkg/d4lafVJ3Bsw89K7F79+mIZaBU1oon8v
8
- y+AM7QAK6kGgb50vsS9QYRtYqZzK0DsaLNhVABEBAAG0M09wZW4gU291cmNlIENJ
9
- IDx0b2J5Y2xlbXNvbitvcGVuc291cmNlY2lAZ21haWwuY29tPokBVAQTAQgAPhYh
10
- BKrpMrcwwrppf/364F2jkIc+ODWLBQJeYmo4AhsDBQkDwmcABQsJCAcCBhUKCQgL
11
- AgQWAgMBAh4BAheAAAoJEF2jkIc+ODWLqhUIAMSJ9l+acSPSnW0MDhjFn46cFUSC
12
- b7YF77wBBrMj6LhQnvad5ii+ik+fld2iK0ZGg33j9b6xY7XzoLUsa/HISdLdF6xg
13
- sMJZMhDfBRaCDDH98cbvUkR1rdimSxNMWnEd+q7BApgSItVfnuMcZDpAPY+Qnoqj
14
- WTlM1GVK0cjD7Fb3QiAOomBsD+O3zBqBpGBZ8bnkaxu7WfQMSV0QBBoyV5pNkYPs
15
- pHWJgIm1axwYX9383ftDDtVzAQ6YcO8x+NntEIbV7RFwyCD+AlglDfUMe4ZYxniI
16
- jYhAWrGNVMrLsyfkSYDd9keUQGXgrWupgrH1oEPUv0RkM43KV82wqoxJJaG5AQ0E
17
- XmJqOAEIALXw6hlF/PWRPIWIO6tJS6u5g8ndnwlmNLbhgUj0D7OjXS1mzjFIeKvm
18
- jFBb/6klmrow8WilnbjzgNWzHsSgkQGrn5WgiC+jDhwAv2UB6afs4MySM+gD1EZc
19
- 8AAIE/asONMql/GVhPMRr4vbd7D7UdEA8YCVUc7qPRFITBPS/x2/E4lAzY/q5KZ9
20
- uFI89Xrw02A7/Z4j+pWgOpUu/yExSu8pvFJ65aJ5t2nw48MdnYoykKKeZ/0FEzXj
21
- s/MbJGDwVcM699TGodqMw40Kl7jIqIje7HvW18pRKgbwuzFJTA0gfAl6qWWbhaGB
22
- m5E1zr/vTBh+vt4dLOtXD+5rG0blNlMAEQEAAYkBPAQYAQgAJhYhBKrpMrcwwrpp
23
- f/364F2jkIc+ODWLBQJeYmo4AhsMBQkDwmcAAAoJEF2jkIc+ODWLedoIAKOh0rzN
24
- ykH7uHPxqFLele2y0mv2HlYTDlZyZOnqqAa1dQeVRPwKzdWxzKuz8EJUBeLPTuj2
25
- jNYxNSzax6TjYUGnRZES1/w1lOWHcBjM3A2XcR7sLNHQkM0NWsmL941tCs/wqRhw
26
- WStCju+3uQHjlopABeMsfKfaOmfwgZqXgqm6wPucObTXy61ZxAXSY7yhnTj0jP/o
27
- idMQDddNRDwPMleebjEHX0QbcKb3Cc6dapyUxKDMkER7eQfeHXnV/aOMVv6yigG1
28
- jaOPJ+k3Atri5cZEFcdAqB4X30VOIHnSSIY/I/XIMnkJ6nrQclZzgRMH3zYh8+8w
29
- YJ4+vrkTFspeu2s=
30
- =aLlT
31
- -----END PGP PUBLIC KEY BLOCK-----
@@ -1,51 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- urc/sdMwBjMT316gASuJ0Cdxi0l4RFv2X8i5BQA1jGj+rFkSMSK6uAdVVlnQMJIB
12
- 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
- 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
- +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
- 2ZjxI6elubhTMqel4GoI3F1KPqxqVdd3Fov2B1Bz4PGx3ZPL2xk2jPxPTlAjxpd9
16
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- irDYeF89brp+atUKQ2ea4br6JNfPz1g+d0p3H0r8xxjgI5uTyZQjCk/DtIInt6hz
37
- 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
- GJ4pMSWPpG/J1sByfWX7tyykaM5WGK4b5FR8rJDLpE5xCkkKoV4ZHM+TK23eefia
39
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- +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
- V0c+5zhSBaAVmmHQK2Bv214Oan4Gf6vnG+jezYyhCgTiZNQh2JJw0N1rTiNh7l4L
50
- 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
51
- -----END RSA PRIVATE KEY-----
@@ -1 +0,0 @@
1
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDT1lpUwXwiAlPVbLNcB+zh6+lyWcqokmpbClzmkxSyqEmg9kNpWyYB+XHfDzWB+VInN6GDkw26eYGFIp4utEk8ut3lMNVxZQ7N94vfExO7wVJyF9wSgNEKnTQW/vOtcT5QOnIdGrcR91df/eRCXEF1NH6WAOuTPOwAlepe04AvYasSUl4O9VZi1p6hs4/2ljSQa5nwBLA3PWUGAHWt8Dhi5A7/ndO8Apu9iaDuXodgXzM8OyHwY32iFQT1e4zfaE2F3aWNKxNJygrfxY6o8FpGkKdIGfjcVkrXcxo6N7vKuc2WOPpLM9t4d+2Rzcj1PAK7oFNztq9K2gNBj0IrNHQfwlHT9n2Q1bZUXA4CwZ9H4CXjdIopEuA9XtGhpwLyGxF+rgWsJJj4Ri1iivUgcBynTuT6oB2igNHD5FIPPzw6poE10jAn/COEhK1kAqu+GwPLaHRqmpYwTn5dsjE+8kfeltPD/qWopkSyQhXQPr+JJQHN934c002bzaRdbiHkvR7bdGHTbOw3uqa+bdSl2pkJgrUvOJZLvUVQeVqRh3GQpsN3NeO6tz+x0zAGMxPfXqABK4nQJ3GLSXhEW/ZfyLkFADWMaP6sWRIxIrq4B1VWWdAwkgFazH+1xCMrQlI7zYi5YpTdJ3ZF0L4POwLwW9FJDuSOCm7JD35HHS7l2Y+/TQ== maintainers@infrablocks.io
@@ -1,2 +0,0 @@
1
- ---
2
- circle_ci_api_token: "27393e98772c1342785957a776ca4acbaea7f7cb"
@@ -1,2 +0,0 @@
1
- ---
2
- github_personal_access_token: "6deebdb15c371069618942f48acd76f35880ebb5"
@@ -1,2 +0,0 @@
1
- ---
2
- :rubygems_api_key: bd53d6202bc5ec5d4c51dd2b245f2f14
data/go DELETED
@@ -1,56 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$GO_DEBUG" ] && set -x
4
- set -e
5
-
6
- project_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
7
-
8
- verbose="no"
9
- skip_checks="no"
10
- offline="no"
11
-
12
- missing_dependency="no"
13
-
14
- [ -n "$GO_DEBUG" ] && verbose="yes"
15
- [ -n "$GO_SKIP_CHECKS" ] && skip_checks="yes"
16
- [ -n "$GO_OFFLINE" ] && offline="yes"
17
-
18
-
19
- if [[ "$skip_checks" = "no" ]]; then
20
- echo "Checking for system dependencies."
21
- ruby_version="$(cat "$project_dir"/.ruby-version)"
22
- if ! type ruby >/dev/null 2>&1 || ! ruby -v | grep -q "$ruby_version"; then
23
- echo "This codebase requires Ruby $ruby_version."
24
- missing_dependency="yes"
25
- fi
26
-
27
- if [[ "$missing_dependency" = "yes" ]]; then
28
- echo "Please install missing dependencies to continue."
29
- exit 1
30
- fi
31
-
32
- echo "All system dependencies present. Continuing."
33
- fi
34
-
35
- if [[ "$offline" = "no" ]]; then
36
- echo "Installing bundler."
37
- if [[ "$verbose" = "yes" ]]; then
38
- gem install --no-document bundler
39
- else
40
- gem install --no-document bundler --silent
41
- fi
42
-
43
- echo "Installing ruby dependencies."
44
- if [[ "$verbose" = "yes" ]]; then
45
- bundle install
46
- else
47
- bundle install --quiet
48
- fi
49
- fi
50
-
51
- echo "Starting rake."
52
- if [[ "$verbose" = "yes" ]]; then
53
- time bundle exec rake --verbose "$@"
54
- else
55
- time bundle exec rake "$@"
56
- fi
@@ -1,41 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'rake_circle_ci/version'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = 'rake_circle_ci'
8
- spec.version = RakeCircleCI::VERSION
9
- spec.authors = ['Toby Clemson']
10
- spec.email = ['tobyclemson@gmail.com']
11
-
12
- spec.summary = 'Rake tasks for CircleCI projects.'
13
- spec.description = 'Allows managing environment variables and SSH keys.'
14
- spec.homepage = "https://github.com/infrablocks/rake_circle_ci"
15
- spec.license = 'MIT'
16
-
17
- spec.files = `git ls-files -z`.split("\x0").reject do |f|
18
- f.match(%r{^(test|spec|features)/})
19
- end
20
- spec.bindir = 'exe'
21
- spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
- spec.require_paths = ['lib']
23
-
24
- spec.required_ruby_version = '>= 2.6'
25
-
26
- spec.add_dependency 'rake_factory', '~> 0.23'
27
- spec.add_dependency 'excon', '~> 0.72'
28
- spec.add_dependency 'sshkey', '~> 2.0'
29
- spec.add_dependency 'colored2', '~> 3.1'
30
-
31
- spec.add_development_dependency 'bundler', '~> 2.0'
32
- spec.add_development_dependency 'rake', '~> 13.0'
33
- spec.add_development_dependency 'rake_circle_ci', '~> 0.3'
34
- spec.add_development_dependency 'rake_github', '~> 0.3'
35
- spec.add_development_dependency 'rake_ssh', '~> 0.2'
36
- spec.add_development_dependency 'rspec', '~> 3.9'
37
- spec.add_development_dependency 'gem-release', '~> 2.0'
38
- spec.add_development_dependency 'activesupport', '~> 5.2'
39
- spec.add_development_dependency 'memfs', '~> 1.0'
40
- spec.add_development_dependency 'simplecov', '~> 0.16'
41
- end
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- git config --global user.email "circleci@infrablocks.io"
8
- git config --global user.name "Circle CI"
@@ -1,16 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
8
- PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
9
-
10
- cd "$PROJECT_DIR"
11
-
12
- git crypt unlock
13
-
14
- mkdir -p ~/.gem
15
- cp config/secrets/rubygems/credentials ~/.gem/credentials
16
- chmod 0600 ~/.gem/credentials
@@ -1,8 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- apt-get update
8
- apt-get install -y --no-install-recommends git ssh git-crypt
@@ -1,19 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
8
- PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
9
-
10
- cd "$PROJECT_DIR"
11
-
12
- set +e
13
- openssl version
14
- openssl aes-256-cbc \
15
- -d \
16
- -md sha1 \
17
- -in ./.circleci/gpg.private.enc \
18
- -k "${ENCRYPTION_PASSPHRASE}" | gpg --import -
19
- set -e
@@ -1,16 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
8
- PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
9
-
10
- cd "$PROJECT_DIR"
11
-
12
- ./go version:bump[pre]
13
- ./go release
14
-
15
- git status
16
- git push
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
8
- PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
9
-
10
- cd "$PROJECT_DIR"
11
-
12
- git pull
13
-
14
- ./go version:bump[minor]
15
- ./go release
16
-
17
- git status
18
- git push
@@ -1,12 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- [ -n "$DEBUG" ] && set -x
4
- set -e
5
- set -o pipefail
6
-
7
- SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
8
- PROJECT_DIR="$( cd "$SCRIPT_DIR/../../.." && pwd )"
9
-
10
- cd "$PROJECT_DIR"
11
-
12
- ./go spec