Use Debian as the base image and remove obselete platforms #178
Workflow file for this run
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: CI | |
| on: [push, pull_request, workflow_dispatch] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: make DEBIAN=trixie update | |
| - run: make DEBIAN=trixie build | |
| - name: Log in to docker | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - run: make DEBIAN=trixie push | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| build-ds: | |
| name: Build Driver Station | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: make update/ds | |
| - run: make build/ds | |
| - name: Log in to docker | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - run: make push/ds | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| build-arm-ds: | |
| name: Build Driver Station Arm | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: make update/armds | |
| - run: make build/armds | |
| - name: Log in to docker | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - run: make push/armds | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| build-arm: | |
| name: Build ARM | |
| runs-on: ubuntu-24.04-arm | |
| strategy: | |
| matrix: | |
| debian-version: | |
| - trixie | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: make DEBIAN=${{ matrix.debian-version }} update/arm | |
| - run: make DEBIAN=${{ matrix.debian-version }} build/arm-base | |
| - name: Log in to docker | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - run: make DEBIAN=${{ matrix.debian-version }} push/arm-base | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| build-minimal: | |
| name: Build Minimal | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - run: make DEBIAN=trixie update | |
| - run: make DEBIAN=trixie build/minimal-cross | |
| - name: Log in to docker | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - run: make DEBIAN=trixie push/minimal-cross | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - run: make DEBIAN=trixie save/minimal-cross | |
| - name: Upload systemcore cross base image | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: systemcore-trixie | |
| path: systemcore.tar.zst | |
| retention-days: 1 | |
| build-python: | |
| name: Build Python Images | |
| needs: [build-minimal] | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| type: | |
| - debian | |
| pyversion: | |
| - py313 | |
| - py314 | |
| debian-version: | |
| - trixie | |
| include: | |
| - type: systemcore | |
| pyversion: py313 | |
| debian-version: trixie | |
| - type: systemcore | |
| pyversion: py314 | |
| debian-version: trixie | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Download image | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: ${{ matrix.type }}-${{ matrix.debian-version }} | |
| path: img | |
| - name: Load image | |
| run: | | |
| unzstd -c img/${{ matrix.type }}.tar.zst | docker load | |
| rm img/${{ matrix.type }}.tar.zst | |
| - name: Build image | |
| run: make DEBIAN=trixie build/cross-${{ matrix.type }}-${{ matrix.pyversion }} | |
| - name: Log in to docker | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_USERNAME }} | |
| password: ${{ secrets.DOCKER_PASSWORD }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} | |
| - name: Upload image | |
| run: make DEBIAN=trixie push/cross-${{ matrix.type }}-${{ matrix.pyversion }} | |
| if: ${{ github.repository_owner == 'wpilibsuite' && github.ref == 'refs/heads/main' }} |