(WIP)chore: Refactor HTTPRoute and HTTPRoutePolicy tests condition assertion #537
This file contains hidden or 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: Conformance Test | |
on: | |
push: | |
branches: | |
- master | |
- release-v2-dev | |
pull_request: | |
branches: | |
- master | |
- release-v2-dev | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
prepare: | |
name: Prepare | |
runs-on: buildjet-2vcpu-ubuntu-2204 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Go Env | |
id: go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.22" | |
- name: Install kind | |
run: | | |
go install sigs.k8s.io/[email protected] | |
- name: Install Helm | |
run: | | |
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | |
chmod 700 get_helm.sh | |
./get_helm.sh | |
conformance-test: | |
timeout-minutes: 60 | |
needs: | |
- prepare | |
runs-on: buildjet-2vcpu-ubuntu-2204 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Setup Go Env | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.22" | |
- name: Login to Private Registry | |
uses: docker/login-action@v1 | |
with: | |
registry: hkccr.ccs.tencentyun.com | |
username: ${{ secrets.PRIVATE_DOCKER_USERNAME }} | |
password: ${{ secrets.PRIVATE_DOCKER_PASSWORD }} | |
- name: Build images | |
env: | |
TAG: dev | |
ARCH: amd64 | |
ENABLE_PROXY: "false" | |
BASE_IMAGE_TAG: "debug" | |
run: | | |
echo "building images..." | |
make build-image | |
- name: Launch Kind Cluster | |
run: | | |
make kind-up | |
- name: Install And Run Cloud Provider KIND | |
run: | | |
go install sigs.k8s.io/cloud-provider-kind@latest | |
nohup cloud-provider-kind > /tmp/kind-loadbalancer.log 2>&1 & | |
- name: Install Gateway API And CRDs | |
run: | | |
make install | |
- name: Loading Docker Image to Kind Cluster | |
run: | | |
make kind-load-images | |
- name: Install API7EE3 | |
run: | | |
make download-api7ee3-chart | |
- name: Run Conformance Test | |
shell: bash | |
env: | |
API7_EE_LICENSE: ${{ secrets.API7_EE_LICENSE }} | |
continue-on-error: true | |
run: | | |
make conformance-test | |
- name: Get Logs from api7-ingress-controller | |
shell: bash | |
run: | | |
export KUBECONFIG=/tmp/apisix-ingress-cluster.kubeconfig | |
kubectl logs -n apisix-conformance-test -l app=apisix-ingress-controller | |
- name: Upload Gateway API Conformance Report | |
if: ${{ github.event_name == 'push' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: apisix-ingress-controller-conformance-report.yaml | |
path: apisix-ingress-controller-conformance-report.yaml | |
- name: Format Conformance Test Report | |
if: ${{ github.event_name == 'pull_request' }} | |
run: | | |
echo '# conformance test report' > report.md | |
echo '```yaml' >> report.md | |
cat apisix-ingress-controller-conformance-report.yaml >> report.md | |
echo '```' >> report.md | |
- name: Report Conformance Test Result to PR Comment | |
if: ${{ github.event_name == 'pull_request' }} | |
uses: mshick/add-pr-comment@v2 | |
with: | |
message-id: '${{ matrix.target }}' | |
message-path: | | |
report.md |