unos-repository

APK repository for unos
git clone git://git.finwo.net/misc/unos-repository
Log | Files | Refs | README

.conductor.yml (13922B)


      1 # GENERATED by mk/gen-pipeline.sh -- do not edit by hand.
      2 #
      3 # Regenerate with:   ./mk/gen-pipeline.sh --write
      4 # Verified by:       tests/unit/test_deps.sh
      5 #
      6 # One task per package, with `needs` taken from each template's makedepends,
      7 # so a package never builds before something it links against. The list is
      8 # written out rather than discovered because the conductor treats this file as
      9 # data and will not execute repository code to build its graph.
     10 #
     11 # No mounts are provided and artifacts are not shared between tasks. Each build
     12 # therefore seeds its sysroot from the published S3 repo (mk/sysroot.sh) and
     13 # publishes its own result back (mk/publish.sh). `needs` is what guarantees a
     14 # dependency is already published by the time a dependent starts.
     15 #
     16 # Credentials arrive as environment: BUCKET_ACCESS_KEY, BUCKET_SECRET_KEY,
     17 # BUCKET_NAME, BUCKET_ENDPOINT (URL), BUCKET_REGION (region name),
     18 # BUCKET_PUBLIC_URL (public https endpoint, e.g. https://repo.unos.finwo.net/).
     19 #
     20 # Signing comes from the unos-sign-key worker feature, which mounts the key and
     21 # exports UNOS_KEY_APK_RSA_PRI. Each worker holds a distinct key, so the signer
     22 # varies with scheduling and packages/unos-keys must trust all of them.
     23 
     24 version: 1
     25 
     26 defaults:
     27   image: debian:bookworm-slim
     28   timeout: 2h
     29   env:
     30     DEBIAN_FRONTEND: noninteractive
     31 
     32 tasks:
     33   check:
     34     timeout: 30m
     35     arch: [x86_64]
     36     requires: [unos-sign-key]
     37     script:
     38       - ./mk/ci-setup.sh
     39       # Before deps.sh check, not after: muon is a declared hostmakedepends of
     40       # apk-tools but is built here rather than installed from a distribution,
     41       # so the check reports it missing until bootstrap has produced it.
     42       - ./mk/bootstrap-host.sh
     43       - ./mk/deps.sh check
     44       - ./mk/gen-pipeline.sh --check
     45       - ./tests/run.sh --unit
     46       - ./mk/bootstrap-repo.sh
     47 
     48   pkg-zlib:
     49     needs:
     50       - check
     51     arch: [x86_64]
     52     requires: [unos-sign-key]
     53     script:
     54       - ./mk/check-revision.sh zlib --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
     55       - ./mk/ci-setup.sh
     56       - ./mk/bootstrap-host.sh
     57       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" zlib
     58       - ./mk/build.sh zlib
     59       - ./mk/publish.sh --arch "$ARCH" zlib
     60 
     61   pkg-openssl:
     62     needs:
     63       - check
     64     arch: [x86_64]
     65     requires: [unos-sign-key]
     66     script:
     67       - ./mk/check-revision.sh openssl --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
     68       - ./mk/ci-setup.sh
     69       - ./mk/bootstrap-host.sh
     70       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" openssl
     71       - ./mk/build.sh openssl
     72       - ./mk/publish.sh --arch "$ARCH" openssl
     73 
     74   pkg-apk-tools:
     75     needs:
     76       - check
     77       - pkg-zlib
     78       - pkg-openssl
     79     arch: [x86_64]
     80     requires: [unos-sign-key]
     81     script:
     82       - ./mk/check-revision.sh apk-tools --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
     83       - ./mk/ci-setup.sh
     84       - ./mk/bootstrap-host.sh
     85       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" apk-tools
     86       - ./mk/build.sh apk-tools
     87       - ./mk/publish.sh --arch "$ARCH" apk-tools
     88 
     89   pkg-base-files:
     90     needs:
     91       - check
     92     arch: [x86_64]
     93     requires: [unos-sign-key]
     94     script:
     95       - ./mk/check-revision.sh base-files --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
     96       - ./mk/ci-setup.sh
     97       - ./mk/bootstrap-host.sh
     98       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" base-files
     99       - ./mk/build.sh base-files
    100       - ./mk/publish.sh --arch "$ARCH" base-files
    101 
    102   pkg-busybox:
    103     needs:
    104       - check
    105     arch: [x86_64]
    106     requires: [unos-sign-key]
    107     script:
    108       - ./mk/check-revision.sh busybox --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    109       - ./mk/ci-setup.sh
    110       - ./mk/bootstrap-host.sh
    111       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" busybox
    112       - ./mk/build.sh busybox
    113       - ./mk/publish.sh --arch "$ARCH" busybox
    114 
    115   pkg-curl:
    116     needs:
    117       - check
    118       - pkg-openssl
    119       - pkg-zlib
    120     arch: [x86_64]
    121     requires: [unos-sign-key]
    122     script:
    123       - ./mk/check-revision.sh curl --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    124       - ./mk/ci-setup.sh
    125       - ./mk/bootstrap-host.sh
    126       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" curl
    127       - ./mk/build.sh curl
    128       - ./mk/publish.sh --arch "$ARCH" curl
    129 
    130   pkg-dosfstools:
    131     needs:
    132       - check
    133     arch: [x86_64]
    134     requires: [unos-sign-key]
    135     script:
    136       - ./mk/check-revision.sh dosfstools --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    137       - ./mk/ci-setup.sh
    138       - ./mk/bootstrap-host.sh
    139       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" dosfstools
    140       - ./mk/build.sh dosfstools
    141       - ./mk/publish.sh --arch "$ARCH" dosfstools
    142 
    143   pkg-e2fsprogs:
    144     needs:
    145       - check
    146     arch: [x86_64]
    147     requires: [unos-sign-key]
    148     script:
    149       - ./mk/check-revision.sh e2fsprogs --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    150       - ./mk/ci-setup.sh
    151       - ./mk/bootstrap-host.sh
    152       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" e2fsprogs
    153       - ./mk/build.sh e2fsprogs
    154       - ./mk/publish.sh --arch "$ARCH" e2fsprogs
    155 
    156   pkg-efivar:
    157     needs:
    158       - check
    159     arch: [x86_64]
    160     requires: [unos-sign-key]
    161     script:
    162       - ./mk/check-revision.sh efivar --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    163       - ./mk/ci-setup.sh
    164       - ./mk/bootstrap-host.sh
    165       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" efivar
    166       - ./mk/build.sh efivar
    167       - ./mk/publish.sh --arch "$ARCH" efivar
    168 
    169   pkg-popt:
    170     needs:
    171       - check
    172     arch: [x86_64]
    173     requires: [unos-sign-key]
    174     script:
    175       - ./mk/check-revision.sh popt --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    176       - ./mk/ci-setup.sh
    177       - ./mk/bootstrap-host.sh
    178       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" popt
    179       - ./mk/build.sh popt
    180       - ./mk/publish.sh --arch "$ARCH" popt
    181 
    182   pkg-efibootmgr:
    183     needs:
    184       - check
    185       - pkg-efivar
    186       - pkg-popt
    187     arch: [x86_64]
    188     requires: [unos-sign-key]
    189     script:
    190       - ./mk/check-revision.sh efibootmgr --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    191       - ./mk/ci-setup.sh
    192       - ./mk/bootstrap-host.sh
    193       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" efibootmgr
    194       - ./mk/build.sh efibootmgr
    195       - ./mk/publish.sh --arch "$ARCH" efibootmgr
    196 
    197   pkg-glibc:
    198     needs:
    199       - check
    200     arch: [x86_64]
    201     requires: [unos-sign-key]
    202     script:
    203       - ./mk/check-revision.sh glibc --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    204       - ./mk/ci-setup.sh
    205       - ./mk/bootstrap-host.sh
    206       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" glibc
    207       - ./mk/build.sh glibc
    208       - ./mk/publish.sh --arch "$ARCH" glibc
    209 
    210   pkg-libstdcxx:
    211     needs:
    212       - check
    213     arch: [x86_64]
    214     requires: [unos-sign-key]
    215     script:
    216       - ./mk/check-revision.sh libstdc++ --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    217       - ./mk/ci-setup.sh
    218       - ./mk/bootstrap-host.sh
    219       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" libstdc++
    220       - ./mk/build.sh libstdc++
    221       - ./mk/publish.sh --arch "$ARCH" libstdc++
    222 
    223   pkg-gptfdisk:
    224     needs:
    225       - check
    226       - pkg-e2fsprogs
    227       - pkg-popt
    228       - pkg-libstdcxx
    229     arch: [x86_64]
    230     requires: [unos-sign-key]
    231     script:
    232       - ./mk/check-revision.sh gptfdisk --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    233       - ./mk/ci-setup.sh
    234       - ./mk/bootstrap-host.sh
    235       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" gptfdisk
    236       - ./mk/build.sh gptfdisk
    237       - ./mk/publish.sh --arch "$ARCH" gptfdisk
    238 
    239   pkg-xz:
    240     needs:
    241       - check
    242     arch: [x86_64]
    243     requires: [unos-sign-key]
    244     script:
    245       - ./mk/check-revision.sh xz --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    246       - ./mk/ci-setup.sh
    247       - ./mk/bootstrap-host.sh
    248       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" xz
    249       - ./mk/build.sh xz
    250       - ./mk/publish.sh --arch "$ARCH" xz
    251 
    252   pkg-grub:
    253     needs:
    254       - check
    255       - pkg-xz
    256     arch: [x86_64]
    257     requires: [unos-sign-key]
    258     script:
    259       - ./mk/check-revision.sh grub --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    260       - ./mk/ci-setup.sh
    261       - ./mk/bootstrap-host.sh
    262       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" grub
    263       - ./mk/build.sh grub
    264       - ./mk/publish.sh --arch "$ARCH" grub
    265 
    266   pkg-libmnl:
    267     needs:
    268       - check
    269     arch: [x86_64]
    270     requires: [unos-sign-key]
    271     script:
    272       - ./mk/check-revision.sh libmnl --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    273       - ./mk/ci-setup.sh
    274       - ./mk/bootstrap-host.sh
    275       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" libmnl
    276       - ./mk/build.sh libmnl
    277       - ./mk/publish.sh --arch "$ARCH" libmnl
    278 
    279   pkg-libcap:
    280     needs:
    281       - check
    282     arch: [x86_64]
    283     requires: [unos-sign-key]
    284     script:
    285       - ./mk/check-revision.sh libcap --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    286       - ./mk/ci-setup.sh
    287       - ./mk/bootstrap-host.sh
    288       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" libcap
    289       - ./mk/build.sh libcap
    290       - ./mk/publish.sh --arch "$ARCH" libcap
    291 
    292   pkg-iproute2:
    293     needs:
    294       - check
    295       - pkg-libmnl
    296       - pkg-libcap
    297     arch: [x86_64]
    298     requires: [unos-sign-key]
    299     script:
    300       - ./mk/check-revision.sh iproute2 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    301       - ./mk/ci-setup.sh
    302       - ./mk/bootstrap-host.sh
    303       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" iproute2
    304       - ./mk/build.sh iproute2
    305       - ./mk/publish.sh --arch "$ARCH" iproute2
    306 
    307   pkg-linkd:
    308     needs:
    309       - check
    310     arch: [x86_64]
    311     requires: [unos-sign-key]
    312     script:
    313       - ./mk/check-revision.sh linkd --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    314       - ./mk/ci-setup.sh
    315       - ./mk/bootstrap-host.sh
    316       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linkd
    317       - ./mk/build.sh linkd
    318       - ./mk/publish.sh --arch "$ARCH" linkd
    319 
    320   pkg-linux-longterm:
    321     needs:
    322       - check
    323     arch: [x86_64]
    324     requires: [unos-sign-key]
    325     script:
    326       - ./mk/check-revision.sh linux-longterm --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    327       - ./mk/ci-setup.sh
    328       - ./mk/bootstrap-host.sh
    329       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linux-longterm
    330       - ./mk/build.sh linux-longterm
    331       - ./mk/publish.sh --arch "$ARCH" linux-longterm
    332 
    333   pkg-linux-mainline:
    334     needs:
    335       - check
    336     arch: [x86_64]
    337     requires: [unos-sign-key]
    338     script:
    339       - ./mk/check-revision.sh linux-mainline --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    340       - ./mk/ci-setup.sh
    341       - ./mk/bootstrap-host.sh
    342       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linux-mainline
    343       - ./mk/build.sh linux-mainline
    344       - ./mk/publish.sh --arch "$ARCH" linux-mainline
    345 
    346   pkg-linux-stable:
    347     needs:
    348       - check
    349     arch: [x86_64]
    350     requires: [unos-sign-key]
    351     script:
    352       - ./mk/check-revision.sh linux-stable --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    353       - ./mk/ci-setup.sh
    354       - ./mk/bootstrap-host.sh
    355       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linux-stable
    356       - ./mk/build.sh linux-stable
    357       - ./mk/publish.sh --arch "$ARCH" linux-stable
    358 
    359   pkg-smartmontools:
    360     needs:
    361       - check
    362       - pkg-libstdcxx
    363     arch: [x86_64]
    364     requires: [unos-sign-key]
    365     script:
    366       - ./mk/check-revision.sh smartmontools --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    367       - ./mk/ci-setup.sh
    368       - ./mk/bootstrap-host.sh
    369       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" smartmontools
    370       - ./mk/build.sh smartmontools
    371       - ./mk/publish.sh --arch "$ARCH" smartmontools
    372 
    373   pkg-tinyssh:
    374     needs:
    375       - check
    376     arch: [x86_64]
    377     requires: [unos-sign-key]
    378     script:
    379       - ./mk/check-revision.sh tinyssh --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    380       - ./mk/ci-setup.sh
    381       - ./mk/bootstrap-host.sh
    382       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" tinyssh
    383       - ./mk/build.sh tinyssh
    384       - ./mk/publish.sh --arch "$ARCH" tinyssh
    385 
    386   pkg-unos-firstboot:
    387     needs:
    388       - check
    389     arch: [x86_64]
    390     requires: [unos-sign-key]
    391     script:
    392       - ./mk/check-revision.sh unos-firstboot --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    393       - ./mk/ci-setup.sh
    394       - ./mk/bootstrap-host.sh
    395       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" unos-firstboot
    396       - ./mk/build.sh unos-firstboot
    397       - ./mk/publish.sh --arch "$ARCH" unos-firstboot
    398 
    399   pkg-unos-keys:
    400     needs:
    401       - check
    402     arch: [x86_64]
    403     requires: [unos-sign-key]
    404     script:
    405       - ./mk/check-revision.sh unos-keys --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
    406       - ./mk/ci-setup.sh
    407       - ./mk/bootstrap-host.sh
    408       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" unos-keys
    409       - ./mk/build.sh unos-keys
    410       - ./mk/publish.sh --arch "$ARCH" unos-keys
    411 
    412   index:
    413     needs:
    414       - pkg-zlib
    415       - pkg-openssl
    416       - pkg-apk-tools
    417       - pkg-base-files
    418       - pkg-busybox
    419       - pkg-curl
    420       - pkg-dosfstools
    421       - pkg-e2fsprogs
    422       - pkg-efivar
    423       - pkg-popt
    424       - pkg-efibootmgr
    425       - pkg-glibc
    426       - pkg-libstdcxx
    427       - pkg-gptfdisk
    428       - pkg-xz
    429       - pkg-grub
    430       - pkg-libmnl
    431       - pkg-libcap
    432       - pkg-iproute2
    433       - pkg-linkd
    434       - pkg-linux-longterm
    435       - pkg-linux-mainline
    436       - pkg-linux-stable
    437       - pkg-smartmontools
    438       - pkg-tinyssh
    439       - pkg-unos-firstboot
    440       - pkg-unos-keys
    441     arch: [x86_64]
    442     requires: [unos-sign-key]
    443     script:
    444       - ./mk/ci-setup.sh
    445       - ./mk/bootstrap-host.sh
    446       # Pull every published package down so the index describes the whole
    447       # repo, not just whatever this container happened to build.
    448       - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL"
    449       - ./mk/repo-index.sh
    450       - ./mk/publish.sh --arch "$ARCH" --index-only