constellation/.github/actions/e2e_sonobuoy/action.yml

59 lines
1.8 KiB
YAML
Raw Normal View History

name: sonobuoy
description: "Execute the e2e test framework sonobuoy."
inputs:
cloudProvider:
description: "CSP name necessary for artifact naming."
required: true
sonobuoyVersion:
description: "Version of sonobuoy test CLI to use."
default: "0.56.14"
required: true
sonobuoyTestSuiteCmd:
description: "Which tests should be run?"
kubeconfig:
description: "The kubeconfig of the cluster to test."
required: true
runs:
using: "composite"
steps:
- name: Install sonobuoy
shell: bash
run: |
HOSTOS="$(go env GOOS)"
HOSTARCH="$(go env GOARCH)"
curl -sLO https://github.com/vmware-tanzu/sonobuoy/releases/download/v${{ inputs.sonobuoyVersion }}/sonobuoy_${{ inputs.sonobuoyVersion }}_${HOSTOS}_${HOSTARCH}.tar.gz
tar -xzf sonobuoy_${{ inputs.sonobuoyVersion }}_${HOSTOS}_${HOSTARCH}.tar.gz
install sonobuoy /usr/local/bin
- name: Sonobuoy version
run: sonobuoy version
shell: bash
- name: Run e2e test
shell: bash
env:
KUBECONFIG: ${{ inputs.kubeconfig }}
run: sonobuoy run --wait=300 ${{ inputs.sonobuoyTestSuiteCmd }} --kubeconfig constellation-admin.conf
- name: Download results
shell: bash
env:
KUBECONFIG: ${{ inputs.kubeconfig }}
run: sonobuoy retrieve --kubeconfig constellation-admin.conf
- name: Upload test results
if: ${{ always() && !env.ACT }}
uses: actions/upload-artifact@83fd05a356d7e2593de66fc9913b3002723633cb # tag=v3.1.1
with:
name: "sonobuoy_logs_${{ inputs.cloudProvider}}.tar.gz"
path: "*_sonobuoy_*.tar.gz"
- name: Publish test results
if: ${{ !env.ACT }}
uses: mikepenz/action-junit-report@7210fead7f92f6395c37241964df3b0f730f5e4e # v3.7.1
with:
report_paths: "**/junit_01.xml"
fail_on_failure: true