+13
-18
.forgejo/workflows/ci.yaml
+13
-18
.forgejo/workflows/ci.yaml
···
7
8
jobs:
9
check:
10
-
runs-on: codeberg-small-lazy
11
container:
12
image: docker.io/library/node:24-trixie-slim@sha256:9ad7e7db423b2ca7ddcc01568da872701ef6171505bd823978736247885c7eb4
13
steps:
···
34
# IMPORTANT: This workflow step will not work without the Releases unit enabled!
35
if: ${{ forge.ref == 'refs/heads/main' || startsWith(forge.event.ref, 'refs/tags/v') }}
36
needs: [check]
37
-
runs-on: codeberg-small-lazy
38
container:
39
image: docker.io/library/node:24-trixie-slim@sha256:9ad7e7db423b2ca7ddcc01568da872701ef6171505bd823978736247885c7eb4
40
steps:
···
70
package:
71
if: ${{ forge.ref == 'refs/heads/main' || startsWith(forge.event.ref, 'refs/tags/v') }}
72
needs: [check]
73
-
runs-on: codeberg-small-lazy
74
container:
75
image: docker.io/library/node:24-trixie-slim@sha256:9ad7e7db423b2ca7ddcc01568da872701ef6171505bd823978736247885c7eb4
76
steps:
77
- name: Install dependencies
78
run: |
79
apt-get -y update
80
-
apt-get -y install buildah ca-certificates
81
- name: Check out source code
82
uses: https://code.forgejo.org/actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
83
- name: Build container
84
run: |
85
printf '[storage]\ndriver="vfs"\nrunroot="/run/containers/storage"\ngraphroot="/var/lib/containers/storage"\n' | tee /etc/containers/storage.conf
86
-
buildah build --arch=amd64 --tag=container:${VER}-amd64 .
87
-
buildah build --arch=arm64 --tag=container:${VER}-arm64 .
88
-
buildah manifest create container:${VER} \
89
-
container:${VER}-amd64 \
90
-
container:${VER}-arm64
91
env:
92
BUILDAH_ISOLATION: chroot
93
-
VER: ${{ startsWith(forge.event.ref, 'refs/tags/v') && forge.ref_name || 'latest' }}
94
- if: ${{ forge.repository == 'git-pages/git-pages-cli' }}
95
name: Push container to Codeberg
96
run: |
97
-
buildah login --authfile=/tmp/authfile-${FORGE}.json \
98
-u ${{ vars.PACKAGES_USER }} -p ${{ secrets.PACKAGES_TOKEN }} ${FORGE}
99
-
buildah manifest push --authfile=/tmp/authfile-${FORGE}.json \
100
-
--all container:${VER} "docker://${FORGE}/${{ forge.repository }}:${VER/v/}"
101
env:
102
-
BUILDAH_ISOLATION: chroot
103
FORGE: codeberg.org
104
VER: ${{ startsWith(forge.event.ref, 'refs/tags/v') && forge.ref_name || 'latest' }}
105
- if: ${{ forge.repository == 'git-pages/git-pages-cli' }}
106
name: Push container to code.forgejo.org
107
run: |
108
-
buildah login --authfile=/tmp/authfile-${FORGE}.json \
109
-u ${{ vars.PACKAGES_USER }} -p ${{ secrets.CFO_PACKAGES_TOKEN }} ${FORGE}
110
-
buildah manifest push --authfile=/tmp/authfile-${FORGE}.json \
111
-
--all container:${VER} "docker://${FORGE}/${{ forge.repository }}:${VER/v/}"
112
env:
113
-
BUILDAH_ISOLATION: chroot
114
FORGE: code.forgejo.org
115
VER: ${{ startsWith(forge.event.ref, 'refs/tags/v') && forge.ref_name || 'latest' }}
···
7
8
jobs:
9
check:
10
+
runs-on: debian-trixie
11
container:
12
image: docker.io/library/node:24-trixie-slim@sha256:9ad7e7db423b2ca7ddcc01568da872701ef6171505bd823978736247885c7eb4
13
steps:
···
34
# IMPORTANT: This workflow step will not work without the Releases unit enabled!
35
if: ${{ forge.ref == 'refs/heads/main' || startsWith(forge.event.ref, 'refs/tags/v') }}
36
needs: [check]
37
+
runs-on: debian-trixie
38
container:
39
image: docker.io/library/node:24-trixie-slim@sha256:9ad7e7db423b2ca7ddcc01568da872701ef6171505bd823978736247885c7eb4
40
steps:
···
70
package:
71
if: ${{ forge.ref == 'refs/heads/main' || startsWith(forge.event.ref, 'refs/tags/v') }}
72
needs: [check]
73
+
runs-on: debian-trixie
74
container:
75
image: docker.io/library/node:24-trixie-slim@sha256:9ad7e7db423b2ca7ddcc01568da872701ef6171505bd823978736247885c7eb4
76
steps:
77
- name: Install dependencies
78
run: |
79
apt-get -y update
80
+
apt-get -y install ca-certificates buildah qemu-user-binfmt
81
- name: Check out source code
82
uses: https://code.forgejo.org/actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
83
- name: Build container
84
run: |
85
printf '[storage]\ndriver="vfs"\nrunroot="/run/containers/storage"\ngraphroot="/var/lib/containers/storage"\n' | tee /etc/containers/storage.conf
86
+
buildah build --arch=amd64 --tag=container:amd64
87
+
buildah build --arch=arm64 --tag=container:arm64
88
+
buildah manifest create container container:amd64 container:arm64
89
env:
90
BUILDAH_ISOLATION: chroot
91
- if: ${{ forge.repository == 'git-pages/git-pages-cli' }}
92
name: Push container to Codeberg
93
run: |
94
+
buildah login --authfile=/tmp/authfile.json \
95
-u ${{ vars.PACKAGES_USER }} -p ${{ secrets.PACKAGES_TOKEN }} ${FORGE}
96
+
buildah manifest push --authfile=/tmp/authfile.json \
97
+
--all container "docker://${FORGE}/${{ forge.repository }}:${VER/v/}"
98
env:
99
FORGE: codeberg.org
100
VER: ${{ startsWith(forge.event.ref, 'refs/tags/v') && forge.ref_name || 'latest' }}
101
- if: ${{ forge.repository == 'git-pages/git-pages-cli' }}
102
name: Push container to code.forgejo.org
103
run: |
104
+
buildah login --authfile=/tmp/authfile.json \
105
-u ${{ vars.PACKAGES_USER }} -p ${{ secrets.CFO_PACKAGES_TOKEN }} ${FORGE}
106
+
buildah manifest push --authfile=/tmp/authfile.json \
107
+
--all container "docker://${FORGE}/${{ forge.repository }}:${VER/v/}"
108
env:
109
FORGE: code.forgejo.org
110
VER: ${{ startsWith(forge.event.ref, 'refs/tags/v') && forge.ref_name || 'latest' }}