Skip to content

Commit 78d1a09

Browse files
authored
Enable FAST 00-cicd provider test (#865)
* enable fast 00-cicd provider test * don't overwrite version files in CI * change provider pinning for all tests in CI file
1 parent a0171b2 commit 78d1a09

File tree

3 files changed

+30
-16
lines changed

3 files changed

+30
-16
lines changed

.github/workflows/tests.yml

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,12 @@ jobs:
5454
terraform_version: ${{ env.TF_VERSION }}
5555
terraform_wrapper: false
5656

57+
# avoid conflicts with user-installed providers on local machines
5758
- name: Pin provider versions
5859
run: |
59-
sed -i 's/>=\(.*# tftest\)/=\1/g' default-versions.tf
60-
find -name versions.tf -exec cp default-versions.tf {} \;
60+
for f in $(find . -name versions.tf); do
61+
sed -i 's/>=\(.*# tftest\)/=\1/g' $f;
62+
done
6163
6264
- name: Run tests on documentation examples
6365
id: pytest
@@ -87,10 +89,12 @@ jobs:
8789
terraform_version: ${{ env.TF_VERSION }}
8890
terraform_wrapper: false
8991

92+
# avoid conflicts with user-installed providers on local machines
9093
- name: Pin provider versions
9194
run: |
92-
sed -i 's/>=\(.*# tftest\)/=\1/g' default-versions.tf
93-
find -name versions.tf -exec cp default-versions.tf {} \;
95+
for f in $(find . -name versions.tf); do
96+
sed -i 's/>=\(.*# tftest\)/=\1/g' $f;
97+
done
9498
9599
- name: Run tests environments
96100
id: pytest
@@ -120,10 +124,12 @@ jobs:
120124
terraform_version: ${{ env.TF_VERSION }}
121125
terraform_wrapper: false
122126

127+
# avoid conflicts with user-installed providers on local machines
123128
- name: Pin provider versions
124129
run: |
125-
sed -i 's/>=\(.*# tftest\)/=\1/g' default-versions.tf
126-
find -name versions.tf -exec cp default-versions.tf {} \;
130+
for f in $(find . -name versions.tf); do
131+
sed -i 's/>=\(.*# tftest\)/=\1/g' $f;
132+
done
127133
128134
- name: Run tests modules
129135
id: pytest
@@ -153,10 +159,12 @@ jobs:
153159
terraform_version: ${{ env.TF_VERSION }}
154160
terraform_wrapper: false
155161

162+
# avoid conflicts with user-installed providers on local machines
156163
- name: Pin provider versions
157164
run: |
158-
sed -i 's/>=\(.*# tftest\)/=\1/g' default-versions.tf
159-
find -name versions.tf -exec cp default-versions.tf {} \;
165+
for f in $(find . -name versions.tf); do
166+
sed -i 's/>=\(.*# tftest\)/=\1/g' $f;
167+
done
160168
161169
- name: Run tests on FAST stages
162170
id: pytest

tests/conftest.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,3 +145,8 @@ def run_apply(fixture_path=None, **tf_vars):
145145
return apply, output
146146

147147
return run_apply
148+
149+
150+
@pytest.fixture
151+
def basedir():
152+
return BASEDIR

tests/fast/stages/s00_cicd/test_providers.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
import pathlib
15+
import os
1616
'''
1717
github = {
1818
source = "integrations/github"
@@ -24,10 +24,11 @@
2424
}
2525
'''
2626

27-
# def test_providers():
28-
# "Test providers file."
29-
# p = pathlib.Path(__file__).parents[4]
30-
# with (p / 'fast/stages/00-cicd/versions.tf').open() as f:
31-
# data = f.read()
32-
# assert 'integrations/github' in data
33-
# assert 'gitlabhq/gitlab' in data
27+
28+
def test_providers(basedir):
29+
"Test providers file."
30+
p = os.path.join(basedir, 'fast/stages/00-cicd/versions.tf')
31+
with open(p) as f:
32+
data = f.read()
33+
assert 'integrations/github' in data
34+
assert 'gitlabhq/gitlab' in data

0 commit comments

Comments
 (0)