55 workflow_dispatch : # Allow manual triggering
66
77jobs :
8- bake :
8+ bake_pyenv :
99 runs-on : ubuntu-latest
1010 steps :
11+ - name : Free Disk Space (Ubuntu)
12+ uses : jlumbroso/free-disk-space@main
13+ with :
14+ # this might remove tools that are actually needed,
15+ # if set to "true" but frees about 6 GB
16+ tool-cache : true
17+ android : true
18+ dotnet : true
19+ haskell : true
20+ large-packages : true
21+ docker-images : true # we want to re-download freshest layers anyway
22+ swap-storage : true
1123 -
1224 name : Checkout
1325 uses : actions/checkout@v4
26+ -
27+ name : Set up QEMU
28+ uses : docker/setup-qemu-action@v3
1429 -
1530 name : Set up Docker Buildx
1631 uses : docker/setup-buildx-action@v3
32+ with :
33+ buildkitd-config : ./buildkitd.toml
1734 -
1835 name : Login to DockerHub
1936 uses : docker/login-action@v3
@@ -30,12 +47,54 @@ jobs:
3047 run : |
3148 export DHUBREPO=advian
3249 ./create_builds.py pyenv > pyenv.hcl
33- ./create_builds.py tox-base > tox-base.hcl
3450
3551 - name : Bake pyenv
3652 run : |
37- docker buildx bake --pull --push --file ./pyenv.hcl
53+ docker buildx bake --pull --provenance=true --sbom=true --push --file ./pyenv.hcl
54+ # FIXME: How to copy the buildx cache between jobs ?
55+ bake_tox :
56+ runs-on : ubuntu-latest
57+ needs : bake_pyenv
58+ steps :
59+ - name : Free Disk Space (Ubuntu)
60+ uses : jlumbroso/free-disk-space@main
61+ with :
62+ # this might remove tools that are actually needed,
63+ # if set to "true" but frees about 6 GB
64+ tool-cache : true
65+ android : true
66+ dotnet : true
67+ haskell : true
68+ large-packages : true
69+ docker-images : true # we want to re-download freshest layers anyway
70+ swap-storage : true
71+ -
72+ name : Checkout
73+ uses : actions/checkout@v4
74+ -
75+ name : Set up QEMU
76+ uses : docker/setup-qemu-action@v3
77+ -
78+ name : Set up Docker Buildx
79+ uses : docker/setup-buildx-action@v3
80+ with :
81+ buildkitd-config : ./buildkitd.toml
82+ -
83+ name : Login to DockerHub
84+ uses : docker/login-action@v3
85+ with :
86+ username : ${{ secrets.DOCKERHUB_USERNAME }}
87+ password : ${{ secrets.DOCKERHUB_TOKEN }}
3888
39- - name : Bake tox
89+ - name : Set up Python
90+ uses : actions/setup-python@v4
91+ with :
92+ python-version : 3.11
93+
94+ - name : Create bakefiles
95+ run : |
96+ export DHUBREPO=advian
97+ ./create_builds.py tox-base > tox-base.hcl
98+ - name : Bake pyenv
4099 run : |
41- docker buildx bake --pull --push --file ./tox-base.hcl
100+ docker buildx bake --pull --provenance=true --sbom=true -- push --file ./tox-base.hcl
0 commit comments