@@ -11,6 +11,7 @@ Our main goal is to provide tools for maintainers working on Python 2 projects.
11
11
Workflows:
12
12
13
13
- [ docker-build-push-multi-platform] ( #githubworkflowsdocker-build-push-multi-platform )
14
+ - [ docker-build-push-multi-registry] ( #githubworkflowsdocker-build-push-multi-registry )
14
15
- [ pip-compile-upgrade] ( #githubworkflowspip-compile-upgrade )
15
16
- [ pre-commit-autoupdate] ( #githubworkflowspre-commit-autoupdate )
16
17
- [ pre-commit] ( #githubworkflowspre-commityml )
@@ -27,10 +28,6 @@ GitHub action for using a matrix strategy to distribute the build for
27
28
` linux/amd64 ` and ` linux/arm64 ` , and publish to a Docker registry of your choice
28
29
(Docker Hub, ghcr.io or quay.io).
29
30
30
- > [ !NOTE]
31
- > ` linux/amd64 ` images are built using ` ubuntu-24.04 ` and ` linux/arm64 ` images
32
- > are built using ` ubuntu-24.04-arm ` .
33
-
34
31
** Inputs** :
35
32
36
33
- ` registry-image ` (` string ` ): Docker image to use as base name for tags.
@@ -62,7 +59,7 @@ GitHub action for using a matrix strategy to distribute the build for
62
59
``` yml
63
60
jobs :
64
61
main :
65
- uses : coatl-dev/workflows/.github/workflows/docker-build-push-multi-platform.yml@v4.1.7
62
+ uses : coatl-dev/workflows/.github/workflows/docker-build-push-multi-platform.yml@v4.2.0
66
63
with :
67
64
registry-image : user/app
68
65
metadata-tags : |
78
75
registry-password : ${{ secrets.DOCKERHUB_TOKEN }}
79
76
` ` `
80
77
78
+ ### .github/workflows/docker-build-push-multi-registry
79
+
80
+ GitHub action for using a matrix strategy to distribute the build for
81
+ ` linux/amd64` and `linux/arm64`, and publish to Docker Hub and quay.io.
82
+
83
+ **Inputs**:
84
+
85
+ - `dockerhub-repo` (`string`) : Docker Hub repository to push the image to.
86
+ - `dockerhub-username` (`string`) : Username for authenticating to Docker Hub.
87
+ - `quay-repo` (`string`) : Quay repository to push the image to.
88
+ - `quay-username` (`string`) : Username for authenticating to Quay.
89
+ - `build-context` (`string`) : Build's context is the set of files located in the
90
+ specified PATH or URL. Optional.
91
+ - `build-file` (`string`) : Path to the Dockerfile. Optional.
92
+ - `build-cache-key` (`string`) : An explicit key for a cache entry. This will be
93
+ used in conjunction with the platform set in `build-platforms`, e.g.
94
+ ` coatl-linux-amd64` . Defaults to `coatl`. Optional.
95
+ - `build-digest-key` (`string`) : Name of the build digest. This will be used in
96
+ conjunction with the platform set in `build-platforms`, e.g.
97
+ ` coatl-linux-amd64` . Defaults to `coatl`. Optional.
98
+ - `metadata-tags` (`string`) : List of tags as key-value pair attributes.
99
+ Optional.
100
+
101
+ **Secrets**:
102
+
103
+ - `dockerhub-password` (`secret`) : Password or personal access token for
104
+ authenticating against Docker Hub.
105
+ - `quay-password` (`secret`) : Password or personal access token for
106
+ authenticating against Quay.
107
+
108
+ **Example**:
109
+
110
+ ` ` ` yml
111
+ jobs:
112
+ main:
113
+ uses: coatl-dev/workflows/.github/workflows/[email protected]
114
+ with:
115
+ dockerhub-repo: user/app
116
+ dockerhub-username: ${{ vars.DOCKERHUB_USERNAME }}
117
+ quay-repo: quay.io/user/app
118
+ quay-username: ${{ vars.QUAY_USERNAME }}
119
+ build-context: "{{defaultContext}}:mysubdir"
120
+ build-cache-key: mykey
121
+ build-digest-key: mydigest
122
+ metadata-tags: |
123
+ type=semver,pattern={{version}}
124
+ type=semver,pattern={{major}}.{{minor}}
125
+ type=semver,pattern={{major}}
126
+ secrets:
127
+ dockerhub-password: ${{ secrets.DOCKERHUB_TOKEN }}
128
+ quay-password: ${{ secrets.QUAY_ROBOT_TOKEN }}
129
+ ` ` `
130
+
81
131
# ## .github/workflows/pip-compile-upgrade
82
132
83
133
GitHub action for running `pip-compile upgrade` on your Python 2 and 3
120
170
121
171
jobs:
122
172
pip-compile-upgrade:
123
- uses: coatl-dev/workflows/.github/workflows/pip-compile-upgrade.yml@v4.1.7
173
+ uses: coatl-dev/workflows/.github/workflows/pip-compile-upgrade.yml@v4.2.0
124
174
with:
125
175
path: requirements.txt
126
176
secrets:
171
221
172
222
jobs:
173
223
pre-commit-autoupdate:
174
- uses: coatl-dev/workflows/.github/workflows/pre-commit-autoupdate.yml@v4.1.7
224
+ uses: coatl-dev/workflows/.github/workflows/pre-commit-autoupdate.yml@v4.2.0
175
225
with:
176
226
skip-repos: 'flake8'
177
227
secrets:
@@ -196,7 +246,7 @@ to install Python and invoke [`pre-commit`].
196
246
` ` ` yaml
197
247
jobs:
198
248
main:
199
- uses: coatl-dev/workflows/.github/workflows/pre-commit.yml@v4.1.7
249
+ uses: coatl-dev/workflows/.github/workflows/pre-commit.yml@v4.2.0
200
250
with:
201
251
skip-hooks: 'pylint'
202
252
` ` `
@@ -210,7 +260,7 @@ This workflow will install Python and invoke `pylint` to analyze your code.
210
260
` ` ` yaml
211
261
jobs:
212
262
main:
213
- uses: coatl-dev/workflows/.github/workflows/pylint.yml@v4.1.7
263
+ uses: coatl-dev/workflows/.github/workflows/pylint.yml@v4.2.0
214
264
` ` `
215
265
216
266
# ## .github/workflows/pypi-upload.yml
@@ -244,7 +294,7 @@ Secrets:
244
294
` ` ` yaml
245
295
jobs:
246
296
main:
247
- uses: coatl-dev/workflows/.github/workflows/pypi-upload.yml@v4.1.7
297
+ uses: coatl-dev/workflows/.github/workflows/pypi-upload.yml@v4.2.0
248
298
with:
249
299
python-version: '3.13'
250
300
secrets:
@@ -272,7 +322,7 @@ requires =
272
322
` ` ` yaml
273
323
jobs:
274
324
main:
275
- uses: coatl-dev/workflows/.github/workflows/tox-docker.yml@v4.1.7
325
+ uses: coatl-dev/workflows/.github/workflows/tox-docker.yml@v4.2.0
276
326
` ` `
277
327
278
328
# ## .github/workflows/tox-envs.yml
@@ -304,7 +354,7 @@ requires =
304
354
` ` ` yaml
305
355
jobs:
306
356
main:
307
- uses: coatl-dev/workflows/.github/workflows/tox-envs.yml@v4.1.7
357
+ uses: coatl-dev/workflows/.github/workflows/tox-envs.yml@v4.2.0
308
358
with:
309
359
python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]'
310
360
` ` `
@@ -341,7 +391,7 @@ and on your workflow:
341
391
` ` ` yaml
342
392
jobs:
343
393
main:
344
- uses: coatl-dev/workflows/.github/workflows/tox-gh.yml@v4.1.7
394
+ uses: coatl-dev/workflows/.github/workflows/tox-gh.yml@v4.2.0
345
395
with:
346
396
python-versions: '["3.9", "3.10", "3.11", "3.12", "3.13"]'
347
397
` ` `
@@ -356,7 +406,7 @@ This workflow will install Python and invoke `tox` to run all envs found in
356
406
` ` ` yaml
357
407
jobs:
358
408
main:
359
- uses: coatl-dev/workflows/.github/workflows/tox.yml@v4.1.7
409
+ uses: coatl-dev/workflows/.github/workflows/tox.yml@v4.2.0
360
410
` ` `
361
411
362
412
[`actions/setup-python`] : https://github.com/actions/setup-python
0 commit comments