build(deps): bump google.golang.org/protobuf from 1.36.12-0.20260120151049-f2248ac996af to 1.36.12 #4060
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: CRI-O | |
| on: | |
| push: | |
| tags: | |
| - "*" | |
| branches: | |
| - master | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| suite: | |
| - e2e | |
| - critest | |
| oci-runtime: | |
| - crun | |
| - runc | |
| monitor: | |
| - conmon | |
| - conmon-rs | |
| name: ${{matrix.suite}} / ${{matrix.oci-runtime}} / ${{matrix.monitor}} | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout cri-tools | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - name: Install go | |
| uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 | |
| with: | |
| go-version-file: go.mod | |
| cache: false | |
| # Paired with "Save go modules and build cache" at end of job. | |
| - name: Restore go modules and build cache | |
| uses: actions/cache/restore@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: | | |
| ~/go/pkg/mod | |
| ~/.cache/go-build | |
| key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
| - name: Setup system | |
| run: | | |
| # enable necessary kernel modules | |
| sudo modprobe br_netfilter | |
| sudo sysctl -p /etc/sysctl.conf | |
| # enable necessary sysctls | |
| sudo sysctl -w net.ipv4.conf.all.route_localnet=1 | |
| sudo sysctl -w net.bridge.bridge-nf-call-iptables=1 | |
| sudo sysctl -w net.ipv4.ip_forward=1 | |
| sudo iptables -t nat -I POSTROUTING -s 127.0.0.0/8 ! -d 127.0.0.0/8 -j MASQUERADE | |
| - name: Install ginkgo | |
| run: | | |
| go install github.com/onsi/ginkgo/v2/ginkgo@latest | |
| ginkgo version | |
| sudo cp $(command -v ginkgo) /usr/local/bin | |
| - name: Install CRI-O | |
| run: | | |
| curl https://raw.githubusercontent.com/cri-o/packaging/main/get | sudo bash | |
| - name: Configure CRI-O | |
| run: | | |
| sudo mkdir -p /etc/crio/crio.conf.d | |
| printf '[crio.runtime]\nlog_level = "debug"\n[crio.image]\nshort_name_mode = "disabled"\n' | sudo tee /etc/crio/crio.conf.d/01-base.conf | |
| printf '[crio.stats]\nincluded_pod_metrics = [\n"all",\n]\n' | sudo tee -a /etc/crio/crio.conf.d/01-base.conf | |
| - name: Configure NRI for CRI-O | |
| run: | | |
| sudo mkdir -p /var/run/nri /opt/nri/plugins | |
| sudo tee /etc/crio/crio.conf.d/05-nri.conf <<EOF | |
| [crio.nri] | |
| enable_nri = true | |
| nri_listen = "/var/run/nri/nri.sock" | |
| nri_plugin_dir = "/opt/nri/plugins" | |
| EOF | |
| - name: Configure CRI-O to use conmon-rs instead of the default conmon | |
| if: ${{matrix.monitor == 'conmon-rs'}} | |
| run: | | |
| sudo sed -i -E 's;(monitor_path = ).*;\1"/usr/libexec/crio/conmonrs"\nruntime_type = "pod";g' /etc/crio/crio.conf.d/10-crio.conf | |
| - name: Configure CRI-O to use runc instead of the default crun | |
| if: ${{matrix.oci-runtime == 'runc'}} | |
| run: | | |
| sudo sed -i -E 's;(default_runtime = ).*;\1"runc";g' /etc/crio/crio.conf.d/10-crio.conf | |
| - name: Show the CRI-O config drop-in | |
| run: cat /etc/crio/crio.conf.d/10-crio.conf | |
| - name: Start CRI-O | |
| run: | | |
| sudo systemctl daemon-reload | |
| sudo systemctl start crio | |
| sudo crio status config | |
| - name: Build cri-tools | |
| run: | | |
| make | |
| sudo -E PATH=$PATH make install | |
| - name: Run critest | |
| if: ${{matrix.suite == 'critest'}} | |
| shell: bash | |
| run: | | |
| set -euox pipefail | |
| set +o errexit | |
| sudo -E PATH=$PATH critest \ | |
| --runtime-endpoint=unix:///var/run/crio/crio.sock \ | |
| --nri-socket=/var/run/nri/nri.sock \ | |
| --parallel=$(nproc) \ | |
| --ginkgo.flake-attempts=3 \ | |
| --ginkgo.randomize-all \ | |
| --ginkgo.timeout=2m \ | |
| --ginkgo.trace \ | |
| --ginkgo.v | |
| TEST_RC=$? | |
| set -o errexit | |
| sudo journalctl --no-pager > journal.log | |
| test $TEST_RC -ne 0 && cat journal.log | |
| exit $TEST_RC | |
| - name: Run crictl e2e tests | |
| if: ${{matrix.suite == 'e2e'}} | |
| shell: bash | |
| run: | | |
| set -euox pipefail | |
| set +o errexit | |
| sudo -E PATH=$PATH make test-e2e \ | |
| TESTFLAGS="-crictl-runtime-endpoint=unix://var/run/crio/crio.sock" | |
| TEST_RC=$? | |
| set -o errexit | |
| sudo journalctl --no-pager > journal.log | |
| test $TEST_RC -ne 0 && cat journal.log | |
| exit $TEST_RC | |
| - name: Upload logs | |
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | |
| with: | |
| name: ${{matrix.suite}}-${{matrix.oci-runtime}}-${{matrix.monitor}}-${{github.sha}}.log | |
| path: journal.log | |
| # Paired with "Restore go modules and build cache" near top of job. | |
| # Placed here so the cache includes dependencies fetched during the build. | |
| - name: Save go modules and build cache | |
| if: github.event_name != 'pull_request' | |
| uses: actions/cache/save@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: | | |
| ~/go/pkg/mod | |
| ~/.cache/go-build | |
| key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} |