Skip to content

Merge pull request #8836 from cri-o/dependabot/go_modules/gomod-4fb3a… #2091

Merge pull request #8836 from cri-o/dependabot/go_modules/gomod-4fb3a…

Merge pull request #8836 from cri-o/dependabot/go_modules/gomod-4fb3a… #2091

Workflow file for this run

name: integration
on:
workflow_dispatch:
push:
tags:
- v*
branches:
- main
- release-*
- update-nixpkgs-*
pull_request:
env:
GO_VERSION: "1.23"
CONMON_BINARY: /usr/local/bin/conmon # from: scripts/github-actions-setup
permissions:
contents: read
jobs:
test-binaries:
strategy:
fail-fast: false
matrix:
run:
- runner: ubuntu-latest
arch: amd64
name: binaries / ${{ matrix.run.arch }}
runs-on: ${{ matrix.run.runner }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed # v5.1.0
with:
go-version: ${{ env.GO_VERSION }}
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: go-test-binaries-${{ matrix.run.arch }}-${{ hashFiles('**/go.sum') }}-${{ hashFiles('test') }}
- run: scripts/github-actions-packages
- run: make all test-binaries
- uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3
with:
name: test-binaries-${{ matrix.run.arch }}
path: |
bin/crio
bin/pinns
test/checkcriu/checkcriu
test/checkseccomp/checkseccomp
test/copyimg/copyimg
test/nri/nri.test
integration:
needs: test-binaries
strategy:
fail-fast: false
matrix:
run:
- name: critest / conmon / runc / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: runc
runtimeType: oci
critest: 1
userns: 0
jobs: 1
timeout: 10
- name: critest / conmon / crun / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: crun
runtimeType: oci
critest: 1
userns: 0
jobs: 1
timeout: 10
- name: critest / conmon-rs / runc / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: runc
runtimeType: pod
critest: 1
userns: 0
jobs: 1
timeout: 10
- name: critest / conmon-rs / crun / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: crun
runtimeType: pod
critest: 1
userns: 0
jobs: 1
timeout: 10
- name: integration / conmon / runc / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: runc
runtimeType: oci
critest: 0
userns: 0
jobs: 2
timeout: 120
- name: integration / conmon / crun / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: crun
runtimeType: oci
critest: 0
userns: 0
jobs: 2
timeout: 120
- name: integration / conmon-rs / runc / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: runc
runtimeType: pod
critest: 0
userns: 0
jobs: 2
timeout: 120
- name: integration / userns / runc / amd64
arch: amd64
runner: ubuntu-latest
defaultRuntime: runc
runtimeType: oci
critest: 0
userns: 1
jobs: 2
timeout: 120
name: ${{ matrix.run.name }}
runs-on: ${{ matrix.run.runner }}
timeout-minutes: ${{ matrix.run.timeout }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/setup-go@41dfa10bad2bb2ae585af6ee5bb4d7d973ad74ed # v5.1.0
with:
go-version: ${{ env.GO_VERSION }}
- uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: go-${{ matrix.run.name }}-${{ matrix.run.arch }}-${{ hashFiles('**/go.sum') }}-${{ hashFiles('scripts/versions') }}
- uses: sigstore/cosign-installer@dc72c7d5c4d10cd6bcb8cf6e3fd625a9e5e537da # v3.7.0
- uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: test-binaries-${{ matrix.run.arch }}
- name: Fix artifact permissions
run: |
chmod +x \
bin/crio \
bin/pinns \
test/checkcriu/checkcriu \
test/checkseccomp/checkseccomp \
test/copyimg/copyimg \
test/nri/nri.test
- run: scripts/github-actions-packages
- run: scripts/github-actions-setup
- name: Switch to runc instead of crun
if: ${{ matrix.run.defaultRuntime == 'runc' }}
run: |
sudo ln -sf $(command -v runc) $(command -v crun)
crun --version
- name: Run the test suite
run: sudo -E test/test_runner.sh
env:
JOBS: ${{ matrix.run.jobs }}
RUN_CRITEST: ${{ matrix.run.critest }}
RUNTIME_TYPE: ${{ matrix.run.runtimeType }}
TEST_USERNS: ${{ matrix.run.userns }}
CONTAINER_DEFAULT_RUNTIME: ${{ matrix.run.defaultRuntime }}