Skip to content

Commit 814f261

Browse files
committed
Add apko images and a workflow
Signed-off-by: Vincent Demeester <[email protected]>
1 parent de097b8 commit 814f261

File tree

10 files changed

+231
-1
lines changed

10 files changed

+231
-1
lines changed

.github/workflows/test-tasks.yaml

Lines changed: 47 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,51 @@ concurrency:
1414

1515
jobs:
1616

17+
list-apko-images:
18+
runs-on: ubuntu-latest
19+
outputs:
20+
images: ${{ steps.output-images.outputs.images }}
21+
steps:
22+
- uses: actions/checkout@v4
23+
- name: list images
24+
id: output-images
25+
run: |
26+
cd images/apko
27+
echo "images=$(ls *.yaml | sed -e 's/\.yaml$//' | jq -R -s -c 'split("\n")[:-1]')" >> $GITHUB_OUTPUT
28+
29+
build-apko-images:
30+
runs-on: ubuntu-latest
31+
permissions:
32+
contents: read
33+
packages: write
34+
needs: list-apko-images
35+
strategy:
36+
matrix:
37+
image: ${{fromJSON(needs.list-apko-images.outputs.images)}}
38+
steps:
39+
- uses: actions/checkout@v4
40+
with:
41+
fetch-depth: 2
42+
- name: Log in to the Container registry
43+
if: github.event_name != 'pull_request'
44+
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d
45+
with:
46+
registry: ghcr.io
47+
username: ${{ github.actor }}
48+
password: ${{ secrets.GITHUB_TOKEN }}
49+
- name: Build apko image ${{ matrix.image }}
50+
if: github.event_name == 'pull_request'
51+
uses: distroless/actions/apko-build@main
52+
with:
53+
config: images/apko/${{ matrix.image }}.yaml
54+
tag: ghcr.io/${{ github.repository }}/${{ matrix.image }}:latest
55+
- name: Build and publish apko image ${{ matrix.image }}
56+
if: github.event_name != 'pull_request'
57+
uses: distroless/actions/apko-publish@main
58+
with:
59+
config: images/apko/${{ matrix.image }}.yaml
60+
tag: ghcr.io/${{ github.repository }}/${{ matrix.image }}:latest
61+
1762
list-images:
1863
runs-on: ubuntu-latest
1964
outputs:
@@ -23,7 +68,8 @@ jobs:
2368
- name: list images
2469
id: output-images
2570
run: |
26-
echo "images=$(ls images | jq -R -s -c 'split("\n")[:-1]')" >> $GITHUB_OUTPUT
71+
echo "images=$(ls images | grep -v apko | jq -R -s -c 'split("\n")[:-1]')" >> $GITHUB_OUTPUT
72+
2773
2874
build-images:
2975
runs-on: ubuntu-latest

images/apko/crane.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- ko
11+
12+
accounts:
13+
run-as: nonroot
14+
15+
entrypoint:
16+
command: /bin/go
17+
18+
archs:
19+
- amd64
20+
- aarch64

images/apko/go-1.19.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.19
11+
12+
accounts:
13+
run-as: nonroot
14+
15+
entrypoint:
16+
command: /bin/go
17+
18+
archs:
19+
- amd64
20+
- aarch64

images/apko/go-1.20.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.20
11+
12+
accounts:
13+
run-as: nonroot
14+
15+
entrypoint:
16+
command: /bin/go
17+
18+
archs:
19+
- amd64
20+
- aarch64

images/apko/go-1.21.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.21
11+
12+
accounts:
13+
run-as: nonroot
14+
15+
entrypoint:
16+
command: /bin/go
17+
18+
archs:
19+
- amd64
20+
- aarch64

images/apko/go-1.22.yaml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.22
11+
12+
accounts:
13+
run-as: nonroot
14+
15+
entrypoint:
16+
command: /bin/go
17+
18+
archs:
19+
- amd64
20+
- aarch64

images/apko/ko-go-1.19.yaml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.19
11+
- ko
12+
13+
accounts:
14+
run-as: nonroot
15+
16+
entrypoint:
17+
command: /bin/go
18+
19+
archs:
20+
- amd64
21+
- aarch64

images/apko/ko-go-1.20.yaml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.20
11+
- ko
12+
13+
accounts:
14+
run-as: nonroot
15+
16+
entrypoint:
17+
command: /bin/go
18+
19+
archs:
20+
- amd64
21+
- aarch64

images/apko/ko-go-1.21.yaml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.21
11+
- ko
12+
13+
accounts:
14+
run-as: nonroot
15+
16+
entrypoint:
17+
command: /bin/go
18+
19+
archs:
20+
- amd64
21+
- aarch64

images/apko/ko-go-1.22.yaml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
contents:
2+
keyring:
3+
- https://packages.wolfi.dev/os/wolfi-signing.rsa.pub
4+
repositories:
5+
- https://packages.wolfi.dev/os
6+
packages:
7+
- ca-certificates-bundle
8+
- wolfi-base
9+
- bash
10+
- go-1.22
11+
- ko
12+
13+
accounts:
14+
run-as: nonroot
15+
16+
entrypoint:
17+
command: /bin/go
18+
19+
archs:
20+
- amd64
21+
- aarch64

0 commit comments

Comments
 (0)