Skip to content

Cache Charm Builds #485

Cache Charm Builds

Cache Charm Builds #485

name: Integration tests
on:
pull_request:
jobs:
extra-args:
runs-on: ubuntu-latest
outputs:
args: ${{ steps.flags.outputs.args }}
steps:
- name: Determine extra args
id: flags
env:
TITLE: ${{ github.event.pull_request.title }}
JOB: ${{ github.job }}
WORKFLOW: ${{ github.workflow }}
run: |
EXTRA_ARGS="--crash-dump=on-failure"
if [[ "$TITLE" == *"[COS]"* ]]; then
EXTRA_ARGS="$EXTRA_ARGS --cos"
fi
echo "args=$EXTRA_ARGS" >> "$GITHUB_OUTPUT"
build-all-charms:
needs: [extra-args]
strategy:
matrix:
path:
- "./charms/worker/k8s/"
- "./charms/worker/"
uses: ./.github/workflows/build-charm.yaml
with:
working-directory: ${{ matrix.path }}
integration-tests:
uses: canonical/operator-workflows/.github/workflows/integration_test.yaml@main
needs: [build-all-charms, extra-args]
strategy:
matrix:
suite: ["k8s", "etcd"]
secrets: inherit
with:
provider: lxd
juju-channel: 3.3/stable
extra-arguments: ${{needs.extra-args.outputs.args}} -k test_${{ matrix.suite }}
load-test-enabled: false
zap-enabled: false
trivy-fs-enabled: true
trivy-image-config: "trivy.yaml"
tmate-debug: true
test-timeout: 120
test-tox-env: integration-${{ matrix.suite }}