Commit 183074e0 authored by Derek Nola's avatar Derek Nola

Run docker tests in E2E GH Action

Build image with new input option Run most of the basic docker tests in E2E Signed-off-by: 's avatarDerek Nola <derek.nola@suse.com>
parent 95f23a4a
......@@ -7,6 +7,10 @@ on:
type: boolean
required: false
default: false
upload-image:
type: boolean
required: false
default: false
permissions:
contents: read
......@@ -23,6 +27,9 @@ jobs:
run: |
DOCKER_BUILDKIT=1 SKIP_IMAGE=1 SKIP_AIRGAP=1 SKIP_VALIDATE=1 GOCOVER=1 make
sha256sum dist/artifacts/k3s | sed 's|dist/artifacts/||' > dist/artifacts/k3s.sha256sum
- name: Build K3s image
if: inputs.upload-image == true
run: make package-image
- name: bundle repo
if: inputs.upload-repo == true
run: |
......@@ -34,6 +41,9 @@ jobs:
with:
name: k3s-repo.tar.gz
path: k3s-repo.tar.gz
- name: "Save K3s image"
if: inputs.upload-image == true
run: docker image save rancher/k3s -o ./dist/artifacts/k3s-image.tar
- name: "Upload K3s binary"
if: inputs.upload-repo == false
uses: actions/upload-artifact@v4
......
......@@ -26,8 +26,10 @@ permissions:
jobs:
build:
uses: ./.github/workflows/build-k3s.yaml
test:
name: "E2E Test"
with:
upload-image: true
e2e:
name: "E2E Tests"
needs: build
runs-on: ubuntu-latest
timeout-minutes: 40
......@@ -64,7 +66,7 @@ jobs:
name: k3s
path: ./dist/artifacts
- name: Run E2E Tests
- name: Run ${{ matrix.etest }} Test
env:
E2E_GOCOVER: "true"
run: |
......@@ -83,4 +85,31 @@ jobs:
token: ${{ secrets.CODECOV_TOKEN }}
files: tests/e2e/${{ matrix.etest }}/coverage.out
flags: e2etests # optional
verbose: true # optional (default = false)
\ No newline at end of file
verbose: true # optional (default = false)
docker:
needs: build
name: Docker Tests
runs-on: ubuntu-latest
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
dtest: [basics, bootstraptoken, cacerts, lazypull, upgrade]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: "Download k3s image"
uses: actions/download-artifact@v4
with:
name: k3s
path: ./dist/artifacts
- name: Load k3s image
run: docker image load -i ./dist/artifacts/k3s-image.tar
- name: Run ${{ matrix.dtest }} Test
run: |
chmod +x ./dist/artifacts/k3s
. ./tests/docker/test-helpers
. ./tests/docker/test-run-${{ matrix.dtest }}
echo "Did test-run-${{ matrix.dtest }} pass $?"
\ No newline at end of file
......@@ -31,10 +31,10 @@ env:
jobs:
build:
uses: ./.github/workflows/build-k3s.yaml
test:
itest:
needs: build
name: Integration Tests
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
timeout-minutes: 45
strategy:
fail-fast: false
......
......@@ -20,9 +20,24 @@ mkdir -p $artifacts
docker ps
# ---
# Only run basic tests on non amd64 archs, we use GitHub Actions for amd64
if [ "$ARCH" != 'amd64' ]; then
. ./tests/docker/test-run-basics
echo "Did test-run-basics $?"
. ./tests/docker/test-run-basics
echo "Did test-run-basics $?"
. ./tests/docker/test-run-cacerts
echo "Did test-run-cacerts $?"
. ./tests/docker/test-run-bootstraptoken
echo "Did test-run-bootstraptoken $?"
. ./tests/docker/test-run-upgrade
echo "Did test-run-upgrade $?"
. ./tests/docker/test-run-lazypull
echo "Did test-run-lazypull $?"
fi
. ./tests/docker/test-run-compat
echo "Did test-run-compat $?"
......@@ -30,21 +45,9 @@ echo "Did test-run-compat $?"
. ./tests/docker/test-run-hardened
echo "Did test-run-hardened $?"
. ./tests/docker/test-run-cacerts
echo "Did test-run-cacerts $?"
. ./tests/docker/test-run-bootstraptoken
echo "Did test-run-bootstraptoken $?"
. ./tests/docker/test-run-upgrade
echo "Did test-run-upgrade $?"
. ./tests/docker/test-run-etcd
echo "Did test-run-etcd $?"
. ./tests/docker/test-run-lazypull
echo "Did test-run-lazypull $?"
# ---
[ "$ARCH" != 'amd64' ] && \
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment