Update CICD.yml #39
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Build" | |
on: [push, pull_request] | |
jobs: | |
Matrix: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Generate Matrix | |
id: matrix | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
minimum_tf_version: '1.7.0' | |
- name: Output Matrix | |
run: | | |
echo "Strategy: ${{ steps.matrix.outputs.strategy }}" | |
outputs: | |
strategy: ${{ steps.matrix.outputs.strategy }} | |
Test: | |
needs: [Matrix] | |
strategy: ${{ fromJSON(needs.Matrix.outputs.strategy)}} | |
runs-on: ${{ matrix.runs-on }} | |
container: ${{ matrix.container }} | |
steps: | |
- name: Initialize - Pass | |
id: init-pass | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/pass | |
- name: Run Tests - Pass | |
id: tests-pass | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/pass | |
- name: Initialize - Pass (With Output) | |
id: init-pass-output | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/pass-output | |
- name: Run Tests - Pass (With Output) | |
id: tests-pass-output | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/pass-output | |
- name: Initialize - Pass - Delayed | |
id: init-pass-delayed | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/pass-delayed | |
- name: Run Tests - Pass - Delayed | |
id: tests-pass-delayed | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/pass-delayed | |
- name: Initialize - Fail | |
id: init-fail | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/fail | |
- name: Run Tests - Fail | |
id: tests-fail | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/fail | |
- name: Initialize - Fail (Output) | |
id: init-fail-output | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/fail-output | |
- name: Run Tests - Fail (Output) | |
id: tests-fail-output | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/fail-output | |
- name: Initialize - Fail - Delayed | |
id: init-fail-delayed | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/fail-delayed | |
- name: Run Tests - Fail - Delayed | |
id: tests-fail-delayed | |
uses: Invicton-Labs/terraform-module-testing/[email protected] | |
with: | |
tf_path: tests/fail-delayed | |
# This job just waits for all other jobs to pass. We have it here | |
# so our branch protection rule can reference a single job, instead | |
# of needing to list every matrix value of every job above. | |
Passed: | |
runs-on: ubuntu-latest | |
needs: [Test] | |
steps: | |
- name: Mark tests as passed | |
run: echo "🎉" |