Skip to content

E2E Tests

E2E Tests #38

Workflow file for this run

---
name: E2E Tests
on:
workflow_dispatch:
schedule:
- cron: 0 1 * * 1-5
jobs:
runE2ETests:
name: Run E2E Tests
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
tool-cache: false # this might remove tools that are actually needed, if set to "true" but frees about 6 GB
android: true
dotnet: true
haskell: true
large-packages: true
docker-images: true
swap-storage: true
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Go and restore cached dependencies
uses: ./.github/actions/setup-go
- name: Install Helmfile and Telepresence
run: |
mkdir bin
curl -fL https://github.com/helmfile/helmfile/releases/download/v0.154.0/helmfile_0.154.0_linux_amd64.tar.gz -o bin/helmfile.tar.gz
tar -xf bin/helmfile.tar.gz -C bin
chmod +x bin/helmfile
curl -fL https://ambassador-labs.gateway.scarf.sh/telepresenceio/telepresence/releases/download/v2.13.2/telepresence-linux-amd64 -o bin/telepresence
chmod +x bin/telepresence
echo "$(pwd)/bin" >> $GITHUB_PATH
mkdir -p ~/.config/telepresence
cat >~/.config/telepresence/config.yml <<EOF
timeouts:
helm: 60s
trafficManagerAPI: 30s
EOF
go install github.com/stern/stern@latest
- name: Initialize Helmfile
run: helmfile init --force
- name: Install KinD
uses: helm/[email protected]
with:
cluster_name: cerbos-e2e
config: e2e/kind.yaml
wait: 180s
- name: Run E2E Tests
run: e2e/run.sh
env:
E2E_SKIP_CLUSTER: "true"
E2E_NO_CLEANUP: "true"
- name: Notify Slack
if: failure()
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
uses: voxmedia/github-action-slack-notify-build@v2
with:
channel_id: C02TMGNNL4V
status: FAILED
color: danger