dependabot-terraform 0.155.1 → 0.156.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/dependabot/terraform.rb +3 -0
- data/lib/dependabot/terraform/file_updater.rb +16 -9
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d510e2ed189deaa3b6949fefd68fd73852f77728080bd1e96776eb91718f4eb7
|
4
|
+
data.tar.gz: 83a3ad61c89ce7606d103328b9500f37ae0e089c5c47041dd37d01e660b83ea8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48cf7e4734bd72c8a15351a85682e9b5526667276c6c685dd2b4144f00862d5dbf1b17a05629fe661f4ab145d378f4e14e5a744db0e66b0513c144e5fe996195
|
7
|
+
data.tar.gz: 9c583cdb4cf467046d2ece09d80f8ab881cd18708d6ee41f5077915302cbfcd88b4807127237078acfd421d9e02ac244b7de4ebb86f2a5e5674c53b084f24377
|
data/lib/dependabot/terraform.rb
CHANGED
@@ -11,6 +11,8 @@ module Dependabot
|
|
11
11
|
class FileUpdater < Dependabot::FileUpdaters::Base
|
12
12
|
include FileSelector
|
13
13
|
|
14
|
+
PRIVATE_MODULE_ERROR = /Could not download module.*code from\n.*\"(?<repo>\S+)\":/.freeze
|
15
|
+
|
14
16
|
def self.updated_files_regex
|
15
17
|
[/\.tf$/, /\.hcl$/]
|
16
18
|
end
|
@@ -102,9 +104,8 @@ module Dependabot
|
|
102
104
|
declaration_regex = lockfile_declaration_regex(provider_source)
|
103
105
|
lockfile_dependency_removed = content.sub(declaration_regex, "")
|
104
106
|
|
105
|
-
|
106
|
-
|
107
|
-
|
107
|
+
base_dir = dependency_files.first.directory
|
108
|
+
SharedHelpers.in_a_temporary_repo_directory(base_dir, repo_contents_path) do
|
108
109
|
File.write(".terraform.lock.hcl", lockfile_dependency_removed)
|
109
110
|
SharedHelpers.run_shell_command("terraform providers lock #{provider_source}")
|
110
111
|
|
@@ -123,19 +124,25 @@ module Dependabot
|
|
123
124
|
# NOTE: Modules need to be installed before terraform can update the
|
124
125
|
# lockfile
|
125
126
|
@retrying_lock = true
|
126
|
-
|
127
|
+
run_terraform_init
|
127
128
|
retry
|
128
129
|
end
|
129
130
|
|
130
131
|
content
|
131
132
|
end
|
132
133
|
|
133
|
-
def
|
134
|
-
|
135
|
-
#
|
136
|
-
|
134
|
+
def run_terraform_init
|
135
|
+
SharedHelpers.with_git_configured(credentials: credentials) do
|
136
|
+
# -backend=false option used to ignore any backend configuration, as these won't be accessible
|
137
|
+
# -input=false option used to immediately fail if it needs user input
|
138
|
+
# -no-color option used to prevent any color characters being printed in the output
|
139
|
+
SharedHelpers.run_shell_command("terraform init -backend=false -input=false -no-color")
|
140
|
+
rescue SharedHelpers::HelperSubprocessFailed => e
|
141
|
+
output = e.message
|
137
142
|
|
138
|
-
|
143
|
+
if output.match?(PRIVATE_MODULE_ERROR)
|
144
|
+
raise PrivateSourceAuthenticationFailure, output.match(PRIVATE_MODULE_ERROR).named_captures.fetch("repo")
|
145
|
+
end
|
139
146
|
end
|
140
147
|
end
|
141
148
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dependabot-terraform
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.156.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dependabot
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-06-
|
11
|
+
date: 2021-06-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dependabot-common
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.156.4
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.156.4
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: byebug
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,14 +100,14 @@ dependencies:
|
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 1.
|
103
|
+
version: 1.18.0
|
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: 1.
|
110
|
+
version: 1.18.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: simplecov
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|