Skip to content

Run sig-network test with Antrea v1.14.1 and K8s v1.29.0 #32

Run sig-network test with Antrea v1.14.1 and K8s v1.29.0

Run sig-network test with Antrea v1.14.1 and K8s v1.29.0 #32

Workflow file for this run

name: Manually run upstream conformance test on Linux
run-name: Run ${{ inputs.test-suite }} test with Antrea ${{ inputs.antrea-version }} and K8s ${{ inputs.k8s-version }}
on:
workflow_dispatch:
inputs:
antrea-version:
description: The Antrea version to test. It could be a SHA-1 value, a branch, or a tag (e.g. a7b012b, release-1.12, v1.12.0). The main branch will be used if empty.
required: false
antrea-values:
description: The Antrea Chart values. Multiple values can be separated with commas (e.g. key1=val1,key2=val2). Default configuration will be tested if empty.
required: false
k8s-version:
description: The K8s version (e.g. v1.27.1) to test. Kind's default K8s version will be used if empty.
required: false
test-suite:
description: The test suite to run. Check run-k8s-e2e-tests.sh for which test cases these values represent.
type: choice
options:
- whole-conformance
- conformance
- network-policy
- sig-network
- all
default: whole-conformance
required: true
always-upload-logs:
description: Always upload logs regardless of the test result.
type: boolean
default: false
env:
KIND_VERSION: v0.18.0
jobs:
test:
name: Run tests
runs-on: [ubuntu-latest]
steps:
- name: Free disk space
# https://github.com/actions/virtual-environments/issues/709
run: |
sudo apt-get clean
df -h
- uses: actions/checkout@v4
with:
ref: ${{ inputs.antrea-version }}
fetch-depth: 0
show-progress: false
- name: Check if it is a released version
id: check-release
run: |
if git show-ref --tags --verify --quiet refs/tags/${{ inputs.antrea-version }}; then
echo "released=true" >> $GITHUB_OUTPUT
else
echo "released=false" >> $GITHUB_OUTPUT
fi
- name: Build Antrea image if required
if: ${{ steps.check-release.outputs.released == 'false' }}
run: |
./hack/build-antrea-linux-all.sh --pull
- name: Install Kind
run: |
curl -Lo ./kind https://github.com/kubernetes-sigs/kind/releases/download/${KIND_VERSION}/kind-$(uname)-amd64
chmod +x ./kind
sudo mv kind /usr/local/bin
- name: Create K8s cluster
run: |
# The command also loads local antrea/antrea-ubuntu:latest into Nodes if it exists.
./ci/kind/kind-setup.sh create kind \
--k8s-version "${{ inputs.k8s-version }}"
- name: Install Antrea
run: |
if [ ${{ steps.check-release.outputs.released }} == 'true' ]; then
helm repo add antrea https://charts.antrea.io
helm repo update
helm install --namespace kube-system antrea antrea/antrea --version "${{ inputs.antrea-version }}" \
--set "${{ inputs.antrea-values }}"
else
helm install --namespace kube-system antrea ./build/charts/antrea \
--set "${{ inputs.antrea-values }}"
fi
kubectl rollout status -n kube-system ds/antrea-agent --timeout=5m
- name: Run e2e tests
run: |
./ci/run-k8s-e2e-tests.sh "--e2e-${{ inputs.test-suite }}"
- name: Upload test log
uses: actions/upload-artifact@v3
if: ${{ failure() || inputs.always-upload-logs }}
with:
name: sonobuoy.tar.gz
path: "*_sonobuoy_*.tar.gz"
retention-days: 7