Skip to content

Commit

Permalink
Add GHA to run MCS conformance tests
Browse files Browse the repository at this point in the history
The GHA clones the "sigs.k8s.io/mcs-api" repo with the desired commit
and runs `go test` directly in the directory. "v0.1.0"  doesn't have
the conformance tests so we can't run them via Go import and trying to
import a later commit is problematic due  incompatible changes to the
MCS APIs. Also the conformance tests are really tied to the MCS spec
and not specifically to the API version so they'll likely evolve
separately anyway.

Signed-off-by: Tom Pantelis <[email protected]>
  • Loading branch information
tpantelis committed Sep 19, 2024
1 parent 687c11c commit 42ced75
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,34 @@ jobs:
- name: Post mortem
if: failure()
uses: submariner-io/shipyard/gh-actions/post-mortem@devel
conformance-test:
name: MCS Conformance
needs: images
timeout-minutes: 30
runs-on: ubuntu-latest
steps:
- name: Check out the repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332

- name: Check out the mcs-api repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
with:
ref: ccc5d8474f4a8502e2a02c83aefc97e96d78655d
repository: kubernetes-sigs/mcs-api
path: mcs-api

- name: Deploy Submariner
shell: bash
run: |
make deploy
- name: Run conformance tests
shell: bash
run: |
export KUBECONFIG=$(find $(git rev-parse --show-toplevel)/output/kubeconfigs/ -type f -printf %p:)
cd mcs-api/conformance
go test -v -timeout 30m -contexts cluster1,cluster2 -args -test.timeout 15m --ginkgo.v --ginkgo.trace
- name: Post mortem
if: failure()
uses: submariner-io/shipyard/gh-actions/post-mortem@devel

0 comments on commit 42ced75

Please sign in to comment.