Skip to content

Add canary service to web #1873

Add canary service to web

Add canary service to web #1873

Workflow file for this run

name: e2e - kubetest
on:
workflow_dispatch:
pull_request:
paths:
- ci/**
- charts/**
- .github/workflows/test-kubetest.yaml
push:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
test-kubetest-prep:
runs-on: ubuntu-20.04
name: e2e - kubetest parallel prep
outputs:
test-files: ${{ steps.test-files-generator.outputs.test-files }}
steps:
- uses: actions/checkout@v3
name: Checkout
- run: echo "test-files=$(cd ./ci/kubetest/ && ls test_*.py | jq -R '[.]' | jq -s -c 'add')\n" >> $GITHUB_OUTPUT
id: test-files-generator
test-kubetest:
runs-on: ubuntu-20.04
name: e2e - kubetest (${{ matrix.test-file }})
needs: test-kubetest-prep
strategy:
fail-fast: false
matrix:
test-file: ${{ fromJson(needs.test-kubetest-prep.outputs.test-files) }}
steps:
- uses: actions/checkout@v3
name: Checkout
- name: Setup k3s
run: |
curl -sfL https://get.k3s.io | INSTALL_K3S_CHANNEL=v1.24 INSTALL_K3S_EXEC="--disable=traefik --disable=metrics-server" sh -
mkdir ~/.kube
sudo k3s kubectl config view --raw > ~/.kube/config
- name: Install Python dependencies
run: |
python -m pip install -r ci/kubetest/requirements.txt
- name: Run kubetest
run: |
cd ci/kubetest
export PYTHONUNBUFFERED=1
python -m pytest ${{ matrix.test-file }} \
-s \
--maxfail=1
- name: Emit namespace report
uses: jupyterhub/action-k8s-namespace-report@v1
if: always()
with:
namespace: posthog