Skip to content

fix: adjust e2e tests #1707

fix: adjust e2e tests

fix: adjust e2e tests #1707

name: PR Integration Cluster Tests
on:
pull_request:
types: [opened, edited, synchronize, reopened, ready_for_review]
paths:
- ".github/workflows/pull-integration-cluster-k3d.yml"
- "resources/**"
- "tests/**"
- "nginx/**"
- "src/**"
- "backend/**"
jobs:
run-cluster-test:
runs-on: ubuntu-latest
if: github.event.pull_request.draft == false
steps:
- uses: gardenlinux/workflow-telemetry-action@v2
with:
comment_on_pr: false
- uses: actions/checkout@v4
- uses: ./.github/actions/rebase
- name: Create Single Cluster
uses: AbsaOSS/k3d-action@4e8b3239042be1dc0aed6c5eb80c13b18200fc79 #v2.4.0
with:
cluster-name: "k3dCluster"
args: >-
--agents 1
--port 80:80@loadbalancer
--port 443:443@loadbalancer
--wait
- uses: actions/setup-node@v4
with:
node-version: 20
- name: setup_busola
shell: bash
run: |
set -e
npm ci
npm run build
npm i -g serve
- name: run_tests
shell: bash
run: |
k3d kubeconfig get k3dCluster > tests/integration/fixtures/kubeconfig.yaml
export CYPRESS_DOMAIN=http://localhost:3000
serve -s build > busola.log &
pushd backend
npm start > backend.log &
popd
echo "waiting for server to be up..."
while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' "$CYPRESS_DOMAIN")" != "200" ]]; do sleep 5; done
sleep 10
cd tests/integration
npm ci && npm run "test:cluster"
- name: Uploads artifacts
uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: cypress-${{ github.job }}
path: tests/integration/cypress/
retention-days: 90
- name: Upload Busola logs
uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: busola-logs-${{ github.job }}
path: |
backend/backend.log
busola.log
retention-days: 90