Skip to content

Commit da21340

Browse files
authored
Merge pull request #1174 from k1LoW/fix-docker-image
ci(workflow): add release test workflow for Docker images
2 parents f2ebc09 + a01f02d commit da21340

File tree

3 files changed

+93
-4
lines changed

3 files changed

+93
-4
lines changed

.github/workflows/release-test.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: release test
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
paths:
9+
- .github/workflows/release-test.yml
10+
- .goreleaser.yml
11+
12+
jobs:
13+
dockerimage-slim:
14+
runs-on: ubuntu-latest
15+
env:
16+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
17+
steps:
18+
- name: Check out source code
19+
uses: actions/checkout@v4
20+
with:
21+
fetch-depth: 0
22+
23+
- name: Get latest version
24+
id: latest_version
25+
run: |
26+
echo -n 'version=' > $GITHUB_OUTPUT
27+
gh release list --limit 1 | cut -f 1 >> $GITHUB_OUTPUT
28+
cat $GITHUB_OUTPUT
29+
30+
- name: Set up QEMU
31+
uses: docker/setup-qemu-action@v3
32+
33+
- name: Set up Docker Buildx
34+
uses: docker/setup-buildx-action@v3
35+
36+
- name: Build (slim)
37+
uses: docker/build-push-action@v6
38+
with:
39+
context: .
40+
file: Dockerfile.slim
41+
platforms: linux/amd64,linux/arm64
42+
push: false
43+
tags: |
44+
ghcr.io/k1low/runn:${{ steps.latest_version.outputs.version }}-slim
45+
ghcr.io/k1low/runn:latest-slim
46+
labels: |
47+
org.opencontainers.image.name=runn
48+
org.opencontainers.image.revision=${{ github.sha }}
49+
org.opencontainers.image.version=${{ steps.latest_version.outputs.version }}
50+
org.opencontainers.image.source=https://github.com/k1LoW/runn
51+
52+
dockerimage:
53+
runs-on: ubuntu-latest
54+
env:
55+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
56+
steps:
57+
- name: Check out source code
58+
uses: actions/checkout@v4
59+
with:
60+
fetch-depth: 0
61+
62+
- name: Get latest version
63+
id: latest_version
64+
run: |
65+
echo -n 'version=' > $GITHUB_OUTPUT
66+
gh release list --limit 1 | cut -f 1 >> $GITHUB_OUTPUT
67+
cat $GITHUB_OUTPUT
68+
69+
- name: Set up QEMU
70+
uses: docker/setup-qemu-action@v3
71+
72+
- name: Set up Docker Buildx
73+
uses: docker/setup-buildx-action@v3
74+
75+
- name: Build
76+
uses: docker/build-push-action@v6
77+
with:
78+
context: .
79+
file: Dockerfile
80+
platforms: linux/amd64,linux/arm64
81+
push: false
82+
tags: |
83+
ghcr.io/k1low/runn:${{ steps.latest_version.outputs.version }}
84+
ghcr.io/k1low/runn:latest
85+
labels: |
86+
org.opencontainers.image.name=runn
87+
org.opencontainers.image.revision=${{ github.sha }}
88+
org.opencontainers.image.version=${{ steps.latest_version.outputs.version }}
89+
org.opencontainers.image.source=https://github.com/k1LoW/runn

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM golang:1-bullseye AS builder
1+
FROM golang:1-bookworm AS builder
22

33
WORKDIR /workdir/
44
COPY . /workdir/
@@ -9,7 +9,7 @@ RUN update-ca-certificates
99

1010
RUN make build
1111

12-
FROM debian:bullseye-slim
12+
FROM debian:bookworm-slim
1313

1414
RUN apt-get update \
1515
&& apt-get install -y fonts-noto-cjk \

Dockerfile.slim

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM golang:1-bullseye AS builder
1+
FROM golang:1-bookworm AS builder
22

33
WORKDIR /workdir/
44
COPY . /workdir/
@@ -9,7 +9,7 @@ RUN update-ca-certificates
99

1010
RUN make build
1111

12-
FROM debian:bullseye-slim
12+
FROM debian:bookworm-slim
1313

1414
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
1515
COPY --from=builder /workdir/runn ./usr/bin

0 commit comments

Comments
 (0)