Skip to content

chore(deps): update konflux references to v0.3 (#254) #1412

chore(deps): update konflux references to v0.3 (#254)

chore(deps): update konflux references to v0.3 (#254) #1412

Workflow file for this run

name: Main CI
on:
push:
branches:
- main
- release-*
- konflux/**
tags:
- '*'
pull_request:
schedule:
- cron: '0 6 * * *'
concurrency:
# append event name on the off chance that a push to master
# runs at the same time as the nightlies - we want both to run
group: ${{ github.head_ref || github.run_id }}-${{ github.event_name }}
cancel-in-progress: true
jobs:
basic:
runs-on: ${{ (matrix.arch == 'arm64' && 'ubuntu-24.04-arm') || 'ubuntu-24.04' }}
strategy:
fail-fast: false
matrix:
arch:
- amd64
- arm64
rust-version:
- stable
- nightly
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
libbpf-dev \
protobuf-compiler
rustup +${{ matrix.rust-version }} component add clippy
- uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ matrix.rust-version }}-${{ hashFiles('**/Cargo.lock') }}
- name: Build
run: cargo +${{ matrix.rust-version }} build --release
- name: Lint
run: cargo +${{ matrix.rust-version }} clippy -- -D warnings
- name: Test
run: cargo +${{ matrix.rust-version }} test
format-check:
runs-on: ubuntu-24.04
env:
CLANG_FMT: clang-format-18
steps:
- uses: actions/checkout@v4
- name: Check code format
run: |
rustup component add rustfmt
make format-check
vars:
runs-on: ubuntu-24.04
outputs:
tag: ${{ steps.vars.outputs.tag }}
image-name: ${{ steps.vars.outputs.image-name }}
rhacs-eng-image: ${{ steps.vars.outputs.rhacs-eng-image }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
fetch-depth: 0
- id: vars
run: |
cat << EOF >> "$GITHUB_OUTPUT"
tag=$(make tag)
image-name=$(make image-name)
rhacs-eng-image=$(FACT_REGISTRY="quay.io/rhacs-eng/fact" make image-name)
EOF
container:
needs:
- vars
strategy:
fail-fast: false
matrix:
arch:
- amd64
- arm64
runs-on: ${{ (matrix.arch == 'arm64' && 'ubuntu-24.04-arm') || 'ubuntu-24.04' }}
env:
FACT_TAG: ${{ needs.vars.outputs.tag }}-${{ matrix.arch }}
FACT_VERSION: ${{ needs.vars.outputs.tag }}
steps:
- uses: actions/checkout@v4
with:
submodules: true
- run: make image
- name: Login to quay.io/stackrox-io
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_STACKROX_IO_RW_USERNAME }}
password: ${{ secrets.QUAY_STACKROX_IO_RW_PASSWORD }}
- run: docker push "$(make image-name)"
- name: Login to quay.io/rhacs-eng
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_RHACS_ENG_RW_USERNAME }}
password: ${{ secrets.QUAY_RHACS_ENG_RW_PASSWORD }}
- name: Tag and push to rhacs-eng
run: |
RHACS_ENG_IMAGE="$(FACT_REGISTRY="quay.io/rhacs-eng/fact" make image-name)"
docker tag "$(make image-name)" "${RHACS_ENG_IMAGE}"
docker push "${RHACS_ENG_IMAGE}"
manifest:
runs-on: ubuntu-24.04
needs:
- container
- vars
env:
ARCHS: amd64 arm64
steps:
- uses: actions/checkout@v4
with:
repository: stackrox/collector
path: collector
ref: master
- uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_STACKROX_IO_RW_USERNAME }}
password: ${{ secrets.QUAY_STACKROX_IO_RW_PASSWORD }}
- uses: ./collector/.github/actions/create-multiarch-manifest
with:
base-image: ${{ needs.vars.outputs.image-name }}
archs: ${{ env.ARCHS }}
- uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_RHACS_ENG_RW_USERNAME }}
password: ${{ secrets.QUAY_RHACS_ENG_RW_PASSWORD }}
- uses: ./collector/.github/actions/create-multiarch-manifest
with:
base-image: ${{ needs.vars.outputs.rhacs-eng-image }}
archs: ${{ env.ARCHS }}
unit-tests:
uses: ./.github/workflows/unit-tests.yml
secrets: inherit
integration-tests:
needs:
- vars
- manifest
uses: ./.github/workflows/integration-tests.yml
with:
tag: ${{ needs.vars.outputs.tag }}
secrets: inherit
performance-tests:
if: github.event_name == 'schedule'
needs:
- vars
- manifest
- integration-tests
uses: ./.github/workflows/performance-tests.yml
with:
tag: ${{ needs.vars.outputs.tag }}
secrets: inherit