Skip to content
Open
33 changes: 22 additions & 11 deletions .github/workflows/reusable-build-test-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -378,6 +378,7 @@ jobs:
runs-on: ubuntu-latest
outputs:
matrix_Splunk: ${{ steps.determine_splunk.outputs.matrixSplunk }}
matrix_splunkModinput: ${{ steps.determine_splunk.outputs.matrixSplunkModinput }}
matrix_supportedSplunk: ${{ steps.matrix.outputs.supportedSplunk }}
matrix_latestSplunk: ${{ steps.matrix.outputs.latestSplunk }}
matrix_supportedSC4S: ${{ steps.matrix.outputs.supportedSC4S }}
Expand All @@ -392,7 +393,7 @@ jobs:
submodules: false
persist-credentials: false
- id: matrix
uses: splunk/addonfactory-test-matrix-action@v3.1
uses: splunk/addonfactory-test-matrix-action@feat/splunk-9-4-python-version

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Pin the matrix action back to a released ref

This reusable workflow now resolves the Splunk matrix from the feat/splunk-9-4-python-version branch, and the same feature-branch ref is used for the runner action in all test jobs. Once this workflow is consumed from main or a release tag, every add-on test run depends on a mutable development branch in another repository rather than the released action versions, so branch updates or cleanup can change or break all consumers without a workflow change here.

Useful? React with 👍 / 👎.

with:
features: PYTHON39
- id: determine_splunk
Expand All @@ -412,8 +413,10 @@ jobs:
fi
if [[ "$wfe_run_on_splunk_latest" == "true" ]]; then
echo "matrixSplunk=${{ toJson(steps.matrix.outputs.latestSplunk) }}" >> "$GITHUB_OUTPUT"
echo "matrixSplunkModinput=${{ toJson(steps.matrix.outputs.latestSplunk) }}" >> "$GITHUB_OUTPUT"
else
echo "matrixSplunk=${{ toJson(steps.matrix.outputs.supportedSplunk) }}" >> "$GITHUB_OUTPUT"
echo "matrixSplunkModinput=${{ toJson(steps.matrix.outputs.supportedSplunkModinput) }}" >> "$GITHUB_OUTPUT"
fi

- name: job summary
Expand Down Expand Up @@ -1145,7 +1148,7 @@ jobs:
timeout-minutes: 20
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -1160,6 +1163,7 @@ jobs:
sc4s-docker-registry: ${{ matrix.sc4s.docker_registry }}
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ''
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down Expand Up @@ -1388,7 +1392,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -1403,6 +1407,7 @@ jobs:
sc4s-docker-registry: ${{ matrix.sc4s.docker_registry }}
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ''
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down Expand Up @@ -1672,7 +1677,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -1688,6 +1693,7 @@ jobs:
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
test-browser: ${{ env.TEST_BROWSER }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ''
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down Expand Up @@ -1873,7 +1879,7 @@ jobs:
strategy:
fail-fast: false
matrix:
splunk: ${{ fromJson(needs.meta.outputs.matrix_Splunk) }}
splunk: ${{ fromJson(needs.meta.outputs.matrix_splunkModinput) }}
modinput-type: [ "modinput_functional" ]
vendor-version: ${{ fromJson(needs.meta.outputs.matrix_supportedModinputFunctionalVendors) }}
marker: ${{ fromJson(inputs.marker) }}
Expand Down Expand Up @@ -1949,7 +1955,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -1964,6 +1970,7 @@ jobs:
sc4s-version: "No"
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ${{ matrix.splunk.serverConfPythonVersion || '' }}
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down Expand Up @@ -2149,7 +2156,7 @@ jobs:
strategy:
fail-fast: false
matrix:
splunk: ${{ fromJson(needs.meta.outputs.matrix_Splunk) }}
splunk: ${{ fromJson(needs.meta.outputs.matrix_splunkModinput) }}
vendor-version: ${{ fromJson(needs.meta.outputs.matrix_supportedModinputFunctionalVendors) }}
marker: ${{ fromJson(inputs.ucc-modinput-marker) }}
container:
Expand Down Expand Up @@ -2224,7 +2231,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -2239,6 +2246,7 @@ jobs:
sc4s-version: "No"
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ${{ matrix.splunk.serverConfPythonVersion || '' }}
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down Expand Up @@ -2487,7 +2495,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -2503,6 +2511,7 @@ jobs:
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
ta-upgrade-version: ${{ matrix.ta-version-from-upgrade }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ''
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down Expand Up @@ -2762,7 +2771,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -2778,6 +2787,7 @@ jobs:
os-version: ${{ steps.os-name-version.outputs.os-version }}
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ''
- name: calculate timeout
id: calculate-timeout
run: |
Expand Down Expand Up @@ -3019,7 +3029,7 @@ jobs:
continue-on-error: true
env:
ARGO_TOKEN: ${{ steps.get-argo-token.outputs.argo-token }}
uses: splunk/wfe-test-runner-action@v5.2
uses: splunk/wfe-test-runner-action@feat/splunk-9-4-python-version
with:
splunk: ${{ matrix.splunk.version }}${{ secrets.OTHER_TA_REQUIRED_CONFIGS }}
test-type: ${{ env.TEST_TYPE }}
Expand All @@ -3034,6 +3044,7 @@ jobs:
sc4s-version: "No"
k8s-manifests-branch: ${{ needs.setup.outputs.k8s-manifests-branch }}
python-version: ${{ env.PYTHON_VERSION }}
server-conf-python-version: ''
- name: Read secrets from AWS Secrets Manager again into environment variables in case credential rotation
id: update-argo-token
if: ${{ !cancelled() }}
Expand Down
Loading