rake_terraform 1.13.0 → 1.16.0.pre.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2dda9f8a3c4e7e4cc3395e9b2a6f679e353669cbdb1358f2f5d2239f781a79c2
4
- data.tar.gz: 19d69b25de71bf622ef11ed37fe702acfe301218e80c398b8ef3eeef33dcbc5b
3
+ metadata.gz: 54f4546a77a10fe25ee6111abd41b7ba325156e4b76253cc7e1d4255b24de935
4
+ data.tar.gz: 8484ef226d1ab3c77d0cac23a144694fe048cc77143b6f4ce29c37a77eb6f522
5
5
  SHA512:
6
- metadata.gz: c8214834443b15b326cdcda180e9fb08d6a89a6778996c2ad338dcfec9b24ab6040983f0ab72b946832690164e757fc91293faf44b46a267a5723ffe7a1297b9
7
- data.tar.gz: 4244ad5ab0636b151014aa831d297a307f1c2c0137612f595c96f2affcc73d6dc2e05c03ce6887ad893a66249164d890b4eadd6922fc239d7acc17d4af6bd66f
6
+ metadata.gz: 2f11a592a17c334d26bb5b5e2f6cf455ecbf88fca1299da651bdf81165724a5353e6f5f3e82cba40dd4fc18a8a34fc8c73ef3df10612274b1acd5cfb926db0c7
7
+ data.tar.gz: 3fe95e9e5cb1fceae2fd9d89281680baa92a10a1bfa64531a3d0aaac59f6a7ba6c931e740def894df6b48eae23a7fa87cae7b2424a9709d627f39d7d5fa99cef
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in rake-terraform.gemspec
data/Gemfile.lock CHANGED
@@ -1,61 +1,103 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rake_terraform (1.13.0)
4
+ rake_terraform (1.16.0.pre.3)
5
5
  colored2 (~> 3.1)
6
- rake_dependencies (~> 2, < 3)
7
- rake_factory (>= 0.23, < 1)
8
- ruby-terraform (>= 0.62, < 1)
6
+ rake_dependencies (~> 2.9)
7
+ rake_factory (~> 0.23)
8
+ ruby-terraform (~> 1.1)
9
9
 
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (5.2.4.4)
13
+ activesupport (5.2.6)
14
14
  concurrent-ruby (~> 1.0, >= 1.0.2)
15
15
  i18n (>= 0.7, < 2)
16
16
  minitest (~> 5.1)
17
17
  tzinfo (~> 1.1)
18
18
  addressable (2.7.0)
19
19
  public_suffix (>= 2.0.2, < 5.0)
20
+ ast (2.4.2)
21
+ coderay (1.1.3)
20
22
  colored2 (3.1.2)
21
- concurrent-ruby (1.1.7)
23
+ concurrent-ruby (1.1.8)
22
24
  diff-lcs (1.4.4)
23
- excon (0.78.1)
25
+ docile (1.3.5)
26
+ excon (0.81.0)
24
27
  fakefs (0.20.1)
25
- faraday (1.1.0)
28
+ faraday (1.4.1)
29
+ faraday-excon (~> 1.1)
30
+ faraday-net_http (~> 1.0)
31
+ faraday-net_http_persistent (~> 1.1)
26
32
  multipart-post (>= 1.2, < 3)
27
- ruby2_keywords
28
- gem-release (2.2.0)
33
+ ruby2_keywords (>= 0.0.4)
34
+ faraday-excon (1.1.0)
35
+ faraday-net_http (1.0.1)
36
+ faraday-net_http_persistent (1.1.0)
37
+ ffi (1.15.0)
38
+ formatador (0.2.5)
39
+ gem-release (2.2.1)
40
+ guard (2.16.2)
41
+ formatador (>= 0.2.4)
42
+ listen (>= 2.7, < 4.0)
43
+ lumberjack (>= 1.0.12, < 2.0)
44
+ nenv (~> 0.1)
45
+ notiffany (~> 0.0)
46
+ pry (>= 0.9.12)
47
+ shellany (~> 0.0)
48
+ thor (>= 0.18.1)
49
+ guard-compat (1.2.1)
50
+ guard-rspec (4.7.3)
51
+ guard (~> 2.1)
52
+ guard-compat (~> 1.1)
53
+ rspec (>= 2.99.0, < 4.0)
29
54
  hamster (3.0.0)
30
55
  concurrent-ruby (~> 1.0)
31
- i18n (1.8.5)
56
+ i18n (1.8.10)
32
57
  concurrent-ruby (~> 1.0)
33
- lino (1.5.0)
58
+ immutable-struct (2.4.1)
59
+ lino (2.7.0)
34
60
  hamster (~> 3.0)
35
61
  open4 (~> 1.3)
62
+ listen (3.5.1)
63
+ rb-fsevent (~> 0.10, >= 0.10.3)
64
+ rb-inotify (~> 0.9, >= 0.9.10)
65
+ lumberjack (1.2.8)
66
+ method_source (1.0.0)
36
67
  minitar (0.9)
37
- minitest (5.14.2)
68
+ minitest (5.14.4)
38
69
  multipart-post (2.1.1)
39
- octokit (4.19.0)
70
+ nenv (0.3.0)
71
+ notiffany (0.1.3)
72
+ nenv (~> 0.1)
73
+ shellany (~> 0.0)
74
+ octokit (4.21.0)
40
75
  faraday (>= 0.9)
41
76
  sawyer (~> 0.8.0, >= 0.5.3)
42
77
  open4 (1.3.4)
78
+ parallel (1.20.1)
79
+ parser (3.0.1.1)
80
+ ast (~> 2.4.1)
81
+ pry (0.14.1)
82
+ coderay (~> 1.1)
83
+ method_source (~> 1.0)
43
84
  public_suffix (4.0.6)
44
- rake (13.0.1)
85
+ rainbow (3.0.0)
86
+ rake (13.0.3)
45
87
  rake_circle_ci (0.9.0)
46
88
  colored2 (~> 3.1)
47
89
  excon (~> 0.72)
48
90
  rake_factory (~> 0.23)
49
91
  sshkey (~> 2.0)
50
- rake_dependencies (2.5.0)
92
+ rake_dependencies (2.9.0)
51
93
  hamster (~> 3.0)
52
94
  minitar (~> 0.9)
53
95
  rake_factory (~> 0.23)
54
96
  rubyzip (>= 1.3)
55
- rake_factory (0.27.0)
97
+ rake_factory (0.29.0)
56
98
  activesupport (>= 4)
57
99
  rake (~> 13.0)
58
- rake_github (0.5.0)
100
+ rake_github (0.7.0)
59
101
  colored2 (~> 3.1)
60
102
  octokit (~> 4.16)
61
103
  rake_factory (~> 0.23)
@@ -63,36 +105,69 @@ GEM
63
105
  rake_gpg (0.14.0)
64
106
  rake_factory (>= 0.23, < 1)
65
107
  ruby_gpg2 (>= 0.6, < 1)
66
- rake_ssh (0.4.0)
108
+ rake_ssh (0.6.0)
67
109
  colored2 (~> 3.1)
68
110
  rake_factory (~> 0.23)
69
111
  sshkey (~> 2.0)
112
+ rb-fsevent (0.11.0)
113
+ rb-inotify (0.10.1)
114
+ ffi (~> 1.0)
115
+ regexp_parser (2.1.1)
116
+ rexml (3.2.5)
70
117
  rspec (3.10.0)
71
118
  rspec-core (~> 3.10.0)
72
119
  rspec-expectations (~> 3.10.0)
73
120
  rspec-mocks (~> 3.10.0)
74
- rspec-core (3.10.0)
121
+ rspec-core (3.10.1)
75
122
  rspec-support (~> 3.10.0)
76
- rspec-expectations (3.10.0)
123
+ rspec-expectations (3.10.1)
77
124
  diff-lcs (>= 1.2.0, < 2.0)
78
125
  rspec-support (~> 3.10.0)
79
- rspec-mocks (3.10.0)
126
+ rspec-mocks (3.10.2)
80
127
  diff-lcs (>= 1.2.0, < 2.0)
81
128
  rspec-support (~> 3.10.0)
82
- rspec-support (3.10.0)
83
- ruby-terraform (0.62.0)
84
- lino (>= 1.5)
85
- ruby2_keywords (0.0.2)
86
- ruby_gpg2 (0.6.0)
129
+ rspec-support (3.10.2)
130
+ rubocop (1.14.0)
131
+ parallel (~> 1.10)
132
+ parser (>= 3.0.0.0)
133
+ rainbow (>= 2.2.2, < 4.0)
134
+ regexp_parser (>= 1.8, < 3.0)
135
+ rexml
136
+ rubocop-ast (>= 1.5.0, < 2.0)
137
+ ruby-progressbar (~> 1.7)
138
+ unicode-display_width (>= 1.4.0, < 3.0)
139
+ rubocop-ast (1.5.0)
140
+ parser (>= 3.0.1.1)
141
+ rubocop-rake (0.5.1)
142
+ rubocop
143
+ rubocop-rspec (2.3.0)
144
+ rubocop (~> 1.0)
145
+ rubocop-ast (>= 1.1.0)
146
+ ruby-progressbar (1.11.0)
147
+ ruby-terraform (1.1.0)
148
+ immutable-struct (~> 2.4)
149
+ lino (~> 2.7)
150
+ ruby2_keywords (0.0.4)
151
+ ruby_gpg2 (0.8.0)
87
152
  lino (>= 1.5)
88
153
  rubyzip (2.3.0)
89
154
  sawyer (0.8.2)
90
155
  addressable (>= 2.3.5)
91
156
  faraday (> 0.8, < 2.0)
157
+ shellany (0.0.1)
158
+ simplecov (0.21.2)
159
+ docile (~> 1.1)
160
+ simplecov-html (~> 0.11)
161
+ simplecov_json_formatter (~> 0.1)
162
+ simplecov-html (0.12.3)
163
+ simplecov_json_formatter (0.1.3)
92
164
  sshkey (2.0.0)
165
+ thor (1.1.0)
93
166
  thread_safe (0.3.6)
94
- tzinfo (1.2.8)
167
+ tzinfo (1.2.9)
95
168
  thread_safe (~> 0.1)
169
+ unicode-display_width (2.0.0)
170
+ yard (0.9.26)
96
171
 
97
172
  PLATFORMS
98
173
  ruby
@@ -101,7 +176,9 @@ DEPENDENCIES
101
176
  activesupport (~> 5.2)
102
177
  bundler (~> 2.0)
103
178
  fakefs (~> 0.18)
104
- gem-release (~> 2.0)
179
+ gem-release (~> 2.1)
180
+ guard (~> 2.16)
181
+ guard-rspec (~> 4.7)
105
182
  rake (~> 13.0)
106
183
  rake_circle_ci (~> 0.9)
107
184
  rake_github (~> 0.5)
@@ -109,6 +186,11 @@ DEPENDENCIES
109
186
  rake_ssh (~> 0.4)
110
187
  rake_terraform!
111
188
  rspec (~> 3.9)
189
+ rubocop (~> 1.12)
190
+ rubocop-rake (~> 0.5)
191
+ rubocop-rspec (~> 2.2)
192
+ simplecov (~> 0.21)
193
+ yard (~> 0.9)
112
194
 
113
195
  BUNDLED WITH
114
- 2.2.4
196
+ 2.2.17
data/Rakefile CHANGED
@@ -1,17 +1,23 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'yaml'
4
+ require 'yard'
2
5
  require 'rake_circle_ci'
3
6
  require 'rake_github'
4
7
  require 'rake_ssh'
5
8
  require 'rake_gpg'
6
9
  require 'securerandom'
7
10
  require 'rspec/core/rake_task'
11
+ require 'rubocop/rake_task'
8
12
 
9
- task :default => :spec
10
-
11
- RSpec::Core::RakeTask.new(:spec)
13
+ task default: %i[
14
+ library:fix
15
+ test:unit
16
+ ]
12
17
 
13
18
  namespace :encryption do
14
19
  namespace :passphrase do
20
+ desc 'Generate encryption passphrase for CI GPG key'
15
21
  task :generate do
16
22
  File.open('config/secrets/ci/encryption.passphrase', 'w') do |f|
17
23
  f.write(SecureRandom.base64(36))
@@ -23,83 +29,124 @@ end
23
29
  namespace :keys do
24
30
  namespace :deploy do
25
31
  RakeSSH.define_key_tasks(
26
- path: 'config/secrets/ci/',
27
- comment: 'maintainers@infrablocks.io')
32
+ path: 'config/secrets/ci/',
33
+ comment: 'maintainers@infrablocks.io'
34
+ )
28
35
  end
29
36
 
30
37
  namespace :gpg do
31
38
  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_terraform CI Key')
39
+ output_directory: 'config/secrets/ci',
40
+ name_prefix: 'gpg',
41
+ owner_name: 'InfraBlocks Maintainers',
42
+ owner_email: 'maintainers@infrablocks.io',
43
+ owner_comment: 'rake_terraform CI Key'
44
+ )
37
45
  end
38
46
  end
39
47
 
48
+ RuboCop::RakeTask.new
49
+
50
+ YARD::Rake::YardocTask.new do |t|
51
+ t.files = ['lib/**/*.rb']
52
+ t.options = %w[--embed-mixins --output-dir docs]
53
+ end
54
+
55
+ namespace :library do
56
+ desc 'Run all checks of the library'
57
+ task check: [:rubocop]
58
+
59
+ desc 'Attempt to automatically fix issues with the library'
60
+ task fix: [:'rubocop:auto_correct']
61
+ end
62
+
63
+ namespace :documentation do
64
+ desc 'Generate documentation'
65
+ task generate: [:yard]
66
+
67
+ desc 'Commit documentation'
68
+ task :commit, [:skip] do |_, args|
69
+ args.with_defaults(skip: 'true')
70
+
71
+ skip_ci = args.skip == 'true'
72
+
73
+ sh('git', 'commit',
74
+ '-a',
75
+ '-m', "Generate latest documentation#{skip_ci ? ' [ci skip]' : ''}")
76
+ end
77
+
78
+ desc 'Update documentation'
79
+ task update: %i[generate commit]
80
+ end
81
+
82
+ namespace :test do
83
+ RSpec::Core::RakeTask.new(:unit)
84
+ end
85
+
40
86
  RakeCircleCI.define_project_tasks(
41
- namespace: :circle_ci,
42
- project_slug: 'github/infrablocks/rake_terraform'
87
+ namespace: :circle_ci,
88
+ project_slug: 'github/infrablocks/rake_terraform'
43
89
  ) do |t|
44
90
  circle_ci_config =
45
- YAML.load_file('config/secrets/circle_ci/config.yaml')
91
+ YAML.load_file('config/secrets/circle_ci/config.yaml')
46
92
 
47
- t.api_token = circle_ci_config["circle_ci_api_token"]
93
+ t.api_token = circle_ci_config['circle_ci_api_token']
48
94
  t.environment_variables = {
49
- ENCRYPTION_PASSPHRASE:
50
- File.read('config/secrets/ci/encryption.passphrase')
51
- .chomp
95
+ ENCRYPTION_PASSPHRASE:
96
+ File.read('config/secrets/ci/encryption.passphrase')
97
+ .chomp
52
98
  }
53
99
  t.checkout_keys = []
54
100
  t.ssh_keys = [
55
- {
56
- hostname: "github.com",
57
- private_key: File.read('config/secrets/ci/ssh.private')
58
- }
101
+ {
102
+ hostname: 'github.com',
103
+ private_key: File.read('config/secrets/ci/ssh.private')
104
+ }
59
105
  ]
60
106
  end
61
107
 
62
108
  RakeGithub.define_repository_tasks(
63
- namespace: :github,
64
- repository: 'infrablocks/rake_terraform',
109
+ namespace: :github,
110
+ repository: 'infrablocks/rake_terraform'
65
111
  ) do |t|
66
112
  github_config =
67
- YAML.load_file('config/secrets/github/config.yaml')
113
+ YAML.load_file('config/secrets/github/config.yaml')
68
114
 
69
- t.access_token = github_config["github_personal_access_token"]
115
+ t.access_token = github_config['github_personal_access_token']
70
116
  t.deploy_keys = [
71
- {
72
- title: 'CircleCI',
73
- public_key: File.read('config/secrets/ci/ssh.public')
74
- }
117
+ {
118
+ title: 'CircleCI',
119
+ public_key: File.read('config/secrets/ci/ssh.public')
120
+ }
75
121
  ]
76
122
  end
77
123
 
78
124
  namespace :pipeline do
79
- task :prepare => [
80
- :'circle_ci:project:follow',
81
- :'circle_ci:env_vars:ensure',
82
- :'circle_ci:checkout_keys:ensure',
83
- :'circle_ci:ssh_keys:ensure',
84
- :'github:deploy_keys:ensure'
125
+ desc 'Prepare CircleCI Pipeline'
126
+ task prepare: %i[
127
+ circle_ci:project:follow
128
+ circle_ci:env_vars:ensure
129
+ circle_ci:checkout_keys:ensure
130
+ circle_ci:ssh_keys:ensure
131
+ github:deploy_keys:ensure
85
132
  ]
86
133
  end
87
134
 
88
135
  namespace :version do
89
- desc "Bump version for specified type (pre, major, minor, patch)"
136
+ desc 'Bump version for specified type (pre, major, minor, patch)'
90
137
  task :bump, [:type] do |_, args|
91
138
  bump_version_for(args.type)
92
139
  end
93
140
  end
94
141
 
95
- desc "Release gem"
142
+ desc 'Release gem'
96
143
  task :release do
97
- sh "gem release --tag --push"
144
+ sh 'gem release --tag --push'
98
145
  end
99
146
 
100
147
  def bump_version_for(version_type)
101
- sh "gem bump --version #{version_type} " +
102
- "&& bundle install " +
103
- "&& export LAST_MESSAGE=\"$(git log -1 --pretty=%B)\" " +
104
- "&& git commit -a --amend -m \"${LAST_MESSAGE} [ci skip]\""
148
+ sh "gem bump --version #{version_type} " \
149
+ '&& bundle install ' \
150
+ '&& export LAST_MESSAGE="$(git log -1 --pretty=%B)" ' \
151
+ '&& git commit -a --amend -m "${LAST_MESSAGE} [ci skip]"'
105
152
  end
data/bin/console CHANGED
@@ -1,7 +1,8 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
- require "bundler/setup"
4
- require "rake/terraform"
4
+ require 'bundler/setup'
5
+ require 'rake_terraform'
5
6
 
6
7
  # You can add fixtures and/or initialization code here to make experimenting
7
8
  # with your gem easier. You can also use a different console, if you like.
@@ -10,5 +11,5 @@ require "rake/terraform"
10
11
  # require "pry"
11
12
  # Pry.start
12
13
 
13
- require "irb"
14
+ require 'irb'
14
15
  IRB.start(__FILE__)