test: add github action to run test-e2e #1
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lagoon tests | |
on: pull_request | |
jobs: | |
# runs for lagoon-core, lagoon-remote, lagoon-test | |
test-suite: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
# Continue after getting a shell via: `touch continue` | |
- name: Setup tmate session | |
uses: mxschmitt/action-tmate@v3 | |
timeout-minutes: 1 | |
continue-on-error: true | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: "0" | |
- name: Configure kind network | |
if: | | |
(contains(github.event.pull_request.labels.*.name, 'needs-testing')) | |
run: | | |
docker network create kind | |
- name: Create kind cluster | |
uses: helm/[email protected] | |
if: | | |
(contains(github.event.pull_request.labels.*.name, 'needs-testing')) | |
with: | |
version: v0.22.0 | |
node_image: kindest/node:v1.28.7@sha256:9bc6c451a289cf96ad0bbaf33d416901de6fd632415b076ab05f5fa7e4f65c58 | |
kubectl_version: v1.28.7 | |
- name: Install gojq | |
if: | | |
(steps.list-changed.outputs.changed == 'true') || | |
(contains(github.event.pull_request.labels.*.name, 'needs-testing')) | |
run: | | |
cd /tmp | |
curl -sSLO https://github.com/itchyny/gojq/releases/download/v0.12.13/gojq_v0.12.13_linux_amd64.tar.gz | |
tar -xf ./gojq_v0.12.13_linux_amd64.tar.gz | |
sudo cp /tmp/gojq_v0.12.13_linux_amd64/gojq /usr/local/bin/jq | |
- name: Install kubens and kubectl alias | |
run: | | |
cd /tmp | |
curl -sSLO https://github.com/ahmetb/kubectx/releases/download/v0.9.5/kubens_v0.9.5_linux_x86_64.tar.gz | |
tar -xf ./kubens_v0.9.5_linux_x86_64.tar.gz | |
sudo cp /tmp/kubens /usr/local/bin/kubens | |
sudo ln -s $(which kubectl) /usr/local/bin/kc | |
- name: Run test-e2e | |
if: | | |
(contains(github.event.pull_request.labels.*.name, 'needs-testing')) | |
run: make test-e2e |