Skip to content

feat: add certificate conflict detection to admission webhooks (#2603) #776

feat: add certificate conflict detection to admission webhooks (#2603)

feat: add certificate conflict detection to admission webhooks (#2603) #776

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
name: APISIX Conformance Test
on:
push:
branches:
- master
pull_request:
branches:
- master
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
pull-requests: write
jobs:
conformance-test:
env:
CONFORMANCE_TEST_REPORT_OUTPUT: /tmp/apisix-ingress-controller-conformance-report.yaml
timeout-minutes: 60
strategy:
matrix:
provider_type:
- apisix-standalone
- apisix
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Go Env
uses: actions/setup-go@v4
with:
go-version: "1.24"
- name: Install kind
run: |
go install sigs.k8s.io/[email protected]
- 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/[email protected]
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-adc-image
make kind-load-ingress-image
- name: Run Conformance Test
shell: bash
continue-on-error: true
env:
PROVIDER_TYPE: ${{ matrix.provider_type }}
run: |
make conformance-test
- name: Show Conformance Report
shell: bash
run: |
cat ${CONFORMANCE_TEST_REPORT_OUTPUT}
- name: Get Logs from apisix-ingress-controller
shell: bash
run: |
kubectl logs -n apisix-conformance-test -l app=apisix-ingress-controller
- name: Upload Gateway API Conformance Report
uses: actions/upload-artifact@v4
with:
name: apisix-ingress-controller-conformance-report-${{ matrix.provider_type }}.yaml
path: ${{ env.CONFORMANCE_TEST_REPORT_OUTPUT }}