Naar inhoud springen

Ingebouwde firmware

Ingebouwde firmware-CI op GitHub Actions

Cross-compilatie toolchains worden bij elke run gedownload en opnieuw opgebouwd.

3m → 8s
Gereedschapsketen instellen
9m → 2m
Bouw

Cross-compilatie toolchains worden bij elke run gedownload en opnieuw opgebouwd.

Waarom het gebeurt

Toolchain-archieven en de build-directory worden niet in de cache opgeslagen, dus elke firmware-build is koud.

Wat te veranderen

  1. Cache de toolchain-installatiemap die is ingetoetst op de toolchain-versie
  2. Gebruik ccache met de cross-compiler als opstartprogramma
  3. Bouw varianten als een matrix in plaats van opeenvolgend in één taak

Ingebouwde firmware op runnerhut

yaml
jobs:
build:
runs-on: runnerhut-8vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v4
- uses: hendrikmuhs/ccache-action@v1
- run: west build -b nucleo_f429zi
Een werkend uitgangspunt

De enige runnerhut-specifieke regel is `runs-on: runnerhut-8vcpu-ubuntu-2404`. Al het andere is standaard GitHub Actions — dezelfde acties, dezelfde geheimen en hetzelfde machtigingsmodel dat u vandaag de dag gebruikt.

Je volgende build kan twee keer zo snel zijn, voor de halve prijs

Begin gratis. Weggaan is dezelfde ene regel, en die diff publiceren we ook.