58 lines
1.8 KiB
YAML
58 lines
1.8 KiB
YAML
name: Run tests with Tox
|
|
|
|
on:
|
|
pull_request:
|
|
branch:
|
|
- main
|
|
|
|
jobs:
|
|
call-inclusive-naming-check:
|
|
name: Inclusive naming
|
|
uses: canonical-web-and-design/Inclusive-naming/.github/workflows/woke.yaml@main
|
|
with:
|
|
fail-on-error: "true"
|
|
|
|
lint-unit:
|
|
name: Lint Unit
|
|
uses: charmed-kubernetes/workflows/.github/workflows/lint-unit.yaml@main
|
|
|
|
integration-tests:
|
|
name: Integration test with VMWare
|
|
runs-on: self-hosted
|
|
needs:
|
|
- lint-unit
|
|
- call-inclusive-naming-check
|
|
timeout-minutes: 60
|
|
steps:
|
|
- name: Check out code
|
|
uses: actions/checkout@v2
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: 3.9
|
|
- name: Setup operator environment
|
|
uses: charmed-kubernetes/actions-operator@main
|
|
with:
|
|
provider: vsphere
|
|
credentials-yaml: ${{ secrets.CREDENTIALS_YAML }}
|
|
clouds-yaml: ${{ secrets.CLOUDS_YAML }}
|
|
bootstrap-constraints: "arch=amd64 cores=2 mem=4G"
|
|
bootstrap-options: "${{ secrets.FOCAL_BOOTSTRAP_OPTIONS }} --model-default datastore=vsanDatastore --model-default primary-network=VLAN_2763"
|
|
- name: Run integration test
|
|
run: tox -e integration -- --model-config=.github/data/proxy_config.yaml
|
|
- name: Setup Debug Artifact Collection
|
|
if: ${{ failure() }}
|
|
run: mkdir tmp
|
|
- name: Collect Juju Status
|
|
if: ${{ failure() }}
|
|
run: |
|
|
juju status 2>&1 | tee tmp/juju-status.txt
|
|
juju-crashdump -s -m controller -a debug-layer -a config -o tmp/
|
|
mv juju-crashdump-* tmp/ | true
|
|
- name: Upload debug artifacts
|
|
if: ${{ failure() }}
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: test-run-artifacts
|
|
path: tmp
|