fp6-img/.forgejo/workflows/build.yml
Jorijn van der Graaf 074d1b1c90
Some checks failed
image / image (push) Failing after 11s
build.sh: first runnable revision
Learned from the pmbootstrap 3.11 source: aports overlays must replace
upstream dirs in one tree (duplicate pkgnames are a hard error), pmbootstrap
refuses root (drop to a sudo-capable build user), and export symlinks are
boot.img + fairphone-fp6.img. Stage 1 builds without imsd until the v0.3.0
tag exists. Temporary push trigger for bring-up.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 16:20:02 +02:00

58 lines
1.7 KiB
YAML

name: image
# Builds a flashable postmarketOS image for the Fairphone 6 (kernel from
# milos-linux combined-stable + imsd) and publishes it as the rolling
# 'latest' release.
#
# Runs on the dedicated privileged runner label "pmos" (loop devices for
# pmbootstrap install, qemu-user binfmt on the host for the aarch64 chroots).
# Until that runner is registered, dispatched runs will sit queued.
on:
workflow_dispatch:
# push trigger is temporary, for pipeline bring-up; narrow to
# workflow_dispatch + a nightly schedule once the pipeline is green:
push:
branches: [main]
# schedule:
# - cron: '30 3 * * *'
jobs:
image:
runs-on: pmos
timeout-minutes: 420
steps:
- name: Checkout
uses: actions/checkout@v4
with:
persist-credentials: true
- name: Build image
run: ./build.sh
- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: fp6-image-${{ github.sha }}
path: dist/*
if-no-files-found: error
- name: Update rolling 'latest' tag
run: |
git config user.email "ci@catcrafts.net"
git config user.name "fp6-img CI"
git tag -f latest
git push origin latest --force
- name: Publish rolling 'latest' release
uses: https://code.forgejo.org/actions/forgejo-release@v2
with:
direction: upload
url: ${{ github.server_url }}
repo: ${{ github.repository }}
tag: latest
title: Latest FP6 postmarketOS image (EMERGENCY CALLING UNVERIFIED)
prerelease: true
override: true
release-dir: dist
token: ${{ secrets.GITHUB_TOKEN }}