46
46
fail-fast : false
47
47
matrix :
48
48
config :
49
- - { platform: "linux/amd64", debian_codename: "bookworm", debian_version: "12"}
50
- - { platform: "linux/amd64", debian_codename: "trixie", debian_version: "13" }
49
+ - { platform: "linux/amd64", debian_version: "12", debian_codename: "bookworm"}
50
+ - { platform: "linux/amd64", debian_version: "13", debian_codename: "trixie" }
51
+ - { platform: "linux/amd64", debian_version: "14", debian_codename: "forky" }
52
+ - { platform: "linux/amd64", debian_version: "sid", debian_codename: "unstable" }
51
53
52
54
steps :
53
55
- name : ✂️ Free Disk Space
62
64
- name : 🔍 Run hadolint
63
65
uses :
hadolint/[email protected] # https://github.com/hadolint/hadolint-action
64
66
with :
65
- dockerfile : .devcontainer/debian/${{ matrix.config.debian_codename }}/Dockerfile
67
+ dockerfile : .devcontainer/debian/${{ matrix.config.debian_version }}-${{ matrix.config. debian_codename }}/Dockerfile
66
68
no-fail : true
67
69
68
70
- name : 🔒 Login to DockerHub Container Registry
91
93
# cpp-devbox:{debian_codename}-{{date}} # only on scheduled builds
92
94
# cpp-devbox:{debian_codename}-{{version}} # only on git tag
93
95
# cpp-devbox:{debian_codename}-{{major}}.{{minor}} # only on git tag
94
- # cpp-devbox:{debian_codename}-{{date}}-sha-{{sha}} # only on push, not when tagging
95
96
# cpp-devbox:{debian_codename}-latest # always
96
97
- name : ✏ Setup Docker Metadata ➔ Stage cpp-devbox-base
97
98
id : metadata-base
@@ -107,13 +108,11 @@ jobs:
107
108
type=schedule,pattern={{ date 'YYYYMMDD' }}
108
109
type=semver,pattern={{ version }}
109
110
type=semver,pattern={{ major }}.{{ minor }}
110
- type=raw,value={{ date 'YYYYMMDD' }}-sha-{{ sha }},enabled=${{ github.event_name == 'push' }}
111
111
type=raw,value=latest
112
112
113
113
# cpp-devbox:{debian_codename}-with-vulkansdk-{{date}} # only on scheduled builds
114
114
# cpp-devbox:{debian_codename}-with-vulkansdk-{{version}} # only on git tag
115
115
# cpp-devbox:{debian_codename}-with-vulkansdk-{{major}}.{{minor}} # only on git tag
116
- # cpp-devbox:{debian_codename}-with-vulkansdk-{{date}}-sha-{{sha}} # only on push, not when tagging
117
116
# cpp-devbox:{debian_codename}-with-vulkansdk-latest # always
118
117
- name : ✏ Setup Docker Metadata ➔ Stage cpp-devbox-base-with-vulkansdk
119
118
id : metadata-base-with-vulkansdk
@@ -129,7 +128,6 @@ jobs:
129
128
type=schedule,pattern={{ date 'YYYYMMDD' }}
130
129
type=semver,pattern={{ version }}
131
130
type=semver,pattern={{ major }}.{{ minor }}
132
- type=raw,value={{ date 'YYYYMMDD' }}-sha-{{ sha }},enabled=${{ github.event_name == 'push' }}
133
131
type=raw,value=latest
134
132
135
133
- name : ✏ Create info.json
@@ -150,7 +148,7 @@ jobs:
150
148
uses : docker/build-push-action@v6 # https://github.com/docker/build-push-action
151
149
with :
152
150
context : .
153
- file : .devcontainer/debian/${{ matrix.config.debian_codename }}/Dockerfile
151
+ file : .devcontainer/debian/${{ matrix.config.debian_version }}-${{ matrix.config. debian_codename }}/Dockerfile
154
152
target : cpp-devbox-base
155
153
platforms : ${{ matrix.config.platform }}
156
154
tags : ${{ steps.metadata-base.outputs.tags }}
@@ -166,7 +164,7 @@ jobs:
166
164
uses : docker/build-push-action@v6 # https://github.com/docker/build-push-action
167
165
with :
168
166
context : .
169
- file : .devcontainer/debian/${{ matrix.config.debian_codename }}/Dockerfile
167
+ file : .devcontainer/debian/${{ matrix.config.debian_version }}-${{ matrix.config. debian_codename }}/Dockerfile
170
168
target : cpp-devbox-with-vulkansdk
171
169
platforms : ${{ matrix.config.platform }}
172
170
tags : ${{ steps.metadata-base-with-vulkansdk.outputs.tags }}
0 commit comments