dev-scripts: Spawn arbitrary amount of downstream clusters #1067
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
# Upgrade Fleet standalone from latest released to dev version | |
name: E2E Upgrade Fleet Standalone to HEAD | |
on: | |
schedule: | |
- cron: '0 8 */2 * *' | |
pull_request: | |
env: | |
GOARCH: amd64 | |
CGO_ENABLED: 0 | |
SETUP_K3D_VERSION: 'v5.7.4' | |
jobs: | |
fleet-upgrade-test: | |
runs-on: runs-on,runner=8cpu-linux-x64,mem=16,run-id=${{ github.run_id }} | |
strategy: | |
matrix: | |
k3s: | |
- name: k3s-new | |
version: v1.31.1-k3s1 | |
name: fleet-upgrade-test-${{ matrix.k3s.name }} | |
steps: | |
- | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
check-latest: true | |
- | |
name: Install Ginkgo CLI | |
run: go install github.com/onsi/ginkgo/v2/ginkgo | |
- | |
name: Install crust-gather CLI | |
run: curl -sSfL https://github.com/crust-gather/crust-gather/raw/main/install.sh | sh -s -- --yes | |
- | |
name: Install k3d | |
run: curl --silent --fail https://raw.githubusercontent.com/k3d-io/k3d/main/install.sh | TAG=${{ env.SETUP_K3D_VERSION }} bash | |
- | |
name: Provision k3d Cluster | |
run: | | |
k3d cluster create upstream --wait \ | |
--agents 1 \ | |
--network "nw01" \ | |
--image docker.io/rancher/k3s:${{matrix.k3s.version}} | |
- | |
name: Deploy Latest Release | |
run: | | |
./.github/scripts/deploy-fleet-latest-release.sh | |
- | |
name: Create example workload | |
run: | | |
kubectl apply -n fleet-local -f e2e/assets/installation/simple.yaml | |
- | |
name: Build Fleet Binaries | |
run: | | |
./.github/scripts/build-fleet-binaries.sh | |
- | |
name: Build Docker Images | |
run: | | |
./.github/scripts/build-fleet-images.sh | |
- | |
name: Import Images Into k3d | |
run: | | |
./.github/scripts/k3d-import-retry.sh rancher/fleet:dev rancher/fleet-agent:dev -c upstream | |
- | |
name: Verify Example Workload | |
run: | | |
# we waited long enough by importing the image first | |
kubectl get configmap -n simple-example | grep -q -m 1 "simple-config" | |
- | |
name: Upgrade to Dev Version | |
run: | | |
./.github/scripts/deploy-fleet.sh | |
- | |
name: Verify Installation | |
env: | |
FLEET_E2E_NS: fleet-local | |
run: | | |
ginkgo --github-output --label-filter="!multi-cluster" e2e/installation | |
- | |
name: Upload Logs | |
uses: actions/upload-artifact@v4 | |
if: failure() | |
with: | |
name: gha-fleet-e2e-logs-${{ github.sha }}-${{ matrix.k3s.version }}-${{ github.run_id }} | |
path: | | |
tmp/upstream | |
retention-days: 2 |