🏡 index : quine-global-labs/mirror-ublue-os-akmods.git

---
#
# WARNING THIS IS A GENERATED WORKFLOW. DO NOT EDIT BY HAND!
#
# Generate the workflow by running `just generate-workflows` at git root
# Modify the inputs in workflow-templates
name: Build OGC akmods
on:
  push:
    branches:
      - main
  pull_request:
    branches:
      - main
    paths-ignore:
      - '**.md'
  schedule:
    - cron: '18 0 * * *'  # staggered minute past 00:00 UTC, see Justfile generate-workflows
  workflow_dispatch:
    inputs:
      force:
        description: "Force build all targets (ignore fingerprint guard)"
        type: boolean
        default: false
jobs:
  cache_kernel_ogc_45:
    name: Cache ogc (45)
    uses: ./.github/workflows/reusable-cache-kernel.yml
    secrets: inherit
    permissions:
      actions: read
      contents: read
      packages: write
    with:
      architecture: '["x86_64"]'
      kernel_flavor: ogc
      version: 45
  build-ogc_45_common:
    name: Build common ogc (45)
    uses: ./.github/workflows/reusable-build.yml
    secrets: inherit
    permissions:
      actions: read
      attestations: write
      contents: read
      id-token: write
      packages: write
    needs: cache_kernel_ogc_45
    with:
      akmods_target: common
      architecture: '["x86_64"]'
      force: ${{ inputs.force || false }}
      kernel_cache_key: ${{ needs.cache_kernel_ogc_45.outputs.KCKEY }}
      kernel_flavor: ogc
      version: 45
  build-ogc_45_extra:
    name: Build extra ogc (45)
    uses: ./.github/workflows/reusable-build.yml
    secrets: inherit
    permissions:
      actions: read
      attestations: write
      contents: read
      id-token: write
      packages: write
    needs: cache_kernel_ogc_45
    with:
      akmods_target: extra
      architecture: '["x86_64"]'
      force: ${{ inputs.force || false }}
      kernel_cache_key: ${{ needs.cache_kernel_ogc_45.outputs.KCKEY }}
      kernel_flavor: ogc
      version: 45
  build-ogc_45_nvidia-open:
    name: Build nvidia-open ogc (45)
    uses: ./.github/workflows/reusable-build.yml
    secrets: inherit
    permissions:
      actions: read
      attestations: write
      contents: read
      id-token: write
      packages: write
    needs: cache_kernel_ogc_45
    with:
      akmods_target: nvidia-open
      architecture: '["x86_64"]'
      force: ${{ inputs.force || false }}
      kernel_cache_key: ${{ needs.cache_kernel_ogc_45.outputs.KCKEY }}
      kernel_flavor: ogc
      version: 45
  check-ogc_45:
    name: Check ogc (45)
    permissions:
      actions: read
      contents: read
    needs: [build-ogc_45_common,build-ogc_45_extra,build-ogc_45_nvidia-open]
    runs-on: ubuntu-26.04
    if: always()
    steps:
      - name: Check for Build Failures
        if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') || contains(needs.*.result, 'skipped')
        run: exit 1

      - name: Exit if Success
        run: exit 0
  cache_kernel_ogc_44:
    name: Cache ogc (44)
    uses: ./.github/workflows/reusable-cache-kernel.yml
    secrets: inherit
    permissions:
      actions: read
      contents: read
      packages: write
    with:
      architecture: '["x86_64"]'
      kernel_flavor: ogc
      version: 44
  build-ogc_44_common:
    name: Build common ogc (44)
    uses: ./.github/workflows/reusable-build.yml
    secrets: inherit
    permissions:
      actions: read
      attestations: write
      contents: read
      id-token: write
      packages: write
    needs: cache_kernel_ogc_44
    with:
      akmods_target: common
      architecture: '["x86_64"]'
      force: ${{ inputs.force || false }}
      kernel_cache_key: ${{ needs.cache_kernel_ogc_44.outputs.KCKEY }}
      kernel_flavor: ogc
      version: 44
  build-ogc_44_extra:
    name: Build extra ogc (44)
    uses: ./.github/workflows/reusable-build.yml
    secrets: inherit
    permissions:
      actions: read
      attestations: write
      contents: read
      id-token: write
      packages: write
    needs: cache_kernel_ogc_44
    with:
      akmods_target: extra
      architecture: '["x86_64"]'
      force: ${{ inputs.force || false }}
      kernel_cache_key: ${{ needs.cache_kernel_ogc_44.outputs.KCKEY }}
      kernel_flavor: ogc
      version: 44
  build-ogc_44_nvidia-open:
    name: Build nvidia-open ogc (44)
    uses: ./.github/workflows/reusable-build.yml
    secrets: inherit
    permissions:
      actions: read
      attestations: write
      contents: read
      id-token: write
      packages: write
    needs: cache_kernel_ogc_44
    with:
      akmods_target: nvidia-open
      architecture: '["x86_64"]'
      force: ${{ inputs.force || false }}
      kernel_cache_key: ${{ needs.cache_kernel_ogc_44.outputs.KCKEY }}
      kernel_flavor: ogc
      version: 44
  check-ogc_44:
    name: Check ogc (44)
    permissions:
      actions: read
      contents: read
    needs: [build-ogc_44_common,build-ogc_44_extra,build-ogc_44_nvidia-open]
    runs-on: ubuntu-26.04
    if: always()
    steps:
      - name: Check for Build Failures
        if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') || contains(needs.*.result, 'skipped')
        run: exit 1

      - name: Exit if Success
        run: exit 0