mirror of https://github.com/rancher/webhook.git
94 lines
2.6 KiB
YAML
94 lines
2.6 KiB
YAML
# Add a comment to force a change.
|
|
|
|
name: Webhook CI
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- release/v*
|
|
paths-ignore:
|
|
- '.gitignore'
|
|
- 'CODEOWNERS'
|
|
- 'LICENSE'
|
|
pull_request:
|
|
paths-ignore:
|
|
- '.gitignore'
|
|
- 'CODEOWNERS'
|
|
- 'LICENSE'
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build:
|
|
name: CI
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
archBox:
|
|
- { arch: amd64, vmArch: x64 }
|
|
- { arch: arm64, vmArch: arm64 }
|
|
runs-on: runs-on,runner=1cpu-linux-${{ matrix.archBox.vmArch }},run-id=${{ github.run_id }}
|
|
steps:
|
|
- name : Checkout repository
|
|
# https://github.com/actions/checkout/releases/tag/v4.1.1
|
|
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
|
|
- name: Setup Go
|
|
# https://github.com/actions/setup-go/releases/tag/v5.0.0
|
|
uses: actions/setup-go@44694675825211faa026b3c33043df3e48a5fa00 # v6.0.0
|
|
with:
|
|
go-version-file: 'go.mod'
|
|
- name: Install golangci-lint
|
|
uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.2
|
|
with:
|
|
version: v1.64.8
|
|
|
|
# TODO: Pull this next one out once there's a helm-release for rancher 2.9
|
|
- name: Checkout rancher/rancher and build the chart
|
|
run: |
|
|
mkdir -p "${{ runner.temp}}"
|
|
pushd "${{ runner.temp}}"
|
|
git clone --depth 1 -b main https://github.com/rancher/rancher.git rancherDir
|
|
cd rancherDir
|
|
./scripts/chart/build chart
|
|
tar cfz "${{ runner.temp }}/rancher.tgz" -C build/chart/rancher .
|
|
popd
|
|
|
|
- name: install K3d
|
|
run: ./.github/workflows/scripts/install-k3d.sh
|
|
env:
|
|
K3D_VERSION: latest
|
|
|
|
- name: ci
|
|
run: make ci
|
|
|
|
- name: setup cluster
|
|
run: ./.github/workflows/scripts/setup-cluster.sh
|
|
env:
|
|
CLUSTER_NAME: webhook
|
|
K3S_VERSION: v1.28.9-k3s1
|
|
ARCH: "${{ matrix.archBox.arch }}"
|
|
|
|
- name: import image
|
|
run: k3d image import dist/rancher-webhook-image.tar -c webhook
|
|
|
|
- name: start rancher
|
|
run: ./.github/workflows/scripts/start-rancher.sh
|
|
env:
|
|
CHART_PATH: "${{ runner.temp }}/rancher.tgz"
|
|
RANCHER_IMAGE_TAG: "head"
|
|
VERSION: "main"
|
|
|
|
- name: get vars
|
|
run: cat dist/image_tag >> $GITHUB_ENV
|
|
|
|
- name: Run integration tests
|
|
run: ./.github/workflows/scripts/integration-test-ci
|
|
env:
|
|
ARCH: "${{ matrix.archBox.arch }}"
|
|
CLUSTER_NAME: webhook
|
|
IMAGE_REPO: rancher/webhook
|
|
IMAGE_TAG: "${{ env.IMAGE_TAG }}"
|