Skip to content

Run CI on self-hosted runners #194

Run CI on self-hosted runners

Run CI on self-hosted runners #194

Workflow file for this run

name: Operator Tests
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
pull_request:
workflow_call:
workflow_dispatch:
jobs:
build:
name: Build rock
uses: canonical/data-platform-workflows/.github/workflows/build_rock.yaml@v16
integration:
runs-on: [self-hosted, linux, X64, jammy, large]
timeout-minutes: 120
needs: build
strategy:
matrix:
env: [integration, ha-integration, tls-integration]
fail-fast: false
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup operator environment
uses: charmed-kubernetes/actions-operator@main
with:
provider: microk8s
channel: "1.29-strict/stable"
bootstrap-constraints: "cores=2 mem=2G"
juju-channel: 3.1/stable
# This is needed until
# https://bugs.launchpad.net/juju/+bug/1977582 is fixed
bootstrap-options: "--agent-version 3.1.7"
- name: Install rockcraft
run: |
sudo snap install rockcraft --classic --revision 1206
sudo snap refresh rockcraft --hold=forever
- name: Download rock package(s)
uses: actions/download-artifact@v4
with:
pattern: ${{ needs.build.outputs.artifact-prefix }}-*
merge-multiple: true
- name: Install tox & poetry
run: |
pipx install tox
pipx install poetry
- name: Integration Tests
run: |
sg snap_microk8s -c "tox -e ${{ matrix.env }}"
- name: Free disk space
run: |
echo "Free disk space after int tests"
df -T
# free space in the runner
rockcraft clean
sudo rm -rf /usr/share/dotnet
sudo rm -rf /opt/ghc
sudo rm -rf /usr/local/share/boost
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
echo "Free disk after int tests"
df -T