@@ -48,13 +48,25 @@ jobs:
48
48
username : ${{ github.repository_owner }}
49
49
password : ${{ secrets.GITHUB_TOKEN }}
50
50
51
+ # Build until the "build" stage, this then can be used by other steps.
52
+ - name : Build "build" image
53
+ if : github.ref_name == 'main' || github.event_name == 'release'
54
+ id : docker_build_monolith
55
+ uses : docker/build-push-action@v3
56
+ with :
57
+ target : build
58
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
59
+ cache-to : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache,mode=max
60
+ context : .
61
+ platforms : ${{ env.PLATFORMS }}
62
+ push : true
63
+
51
64
- name : Build main monolith image
52
65
if : github.ref_name == 'main'
53
66
id : docker_build_monolith
54
67
uses : docker/build-push-action@v3
55
68
with :
56
- cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite-monolith:buildcache
57
- cache-to : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite-monolith:buildcache,mode=max
69
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
58
70
context : .
59
71
platforms : ${{ env.PLATFORMS }}
60
72
push : true
67
79
id : docker_build_monolith_release
68
80
uses : docker/build-push-action@v3
69
81
with :
70
- cache-from : type=gha
71
- cache-to : type=gha,mode=max
82
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
72
83
context : .
73
84
platforms : ${{ env.PLATFORMS }}
74
85
push : true
93
104
demo-pinecone :
94
105
name : Pinecone demo image
95
106
runs-on : ubuntu-latest
107
+ needs : monolith
96
108
permissions :
97
109
contents : read
98
110
packages : write
@@ -124,8 +136,7 @@ jobs:
124
136
id : docker_build_demo_pinecone
125
137
uses : docker/build-push-action@v3
126
138
with :
127
- cache-from : type=gha
128
- cache-to : type=gha,mode=max
139
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
129
140
context : .
130
141
file : ./build/docker/Dockerfile.demo-pinecone
131
142
platforms : ${{ env.PLATFORMS }}
@@ -139,8 +150,7 @@ jobs:
139
150
id : docker_build_demo_pinecone_release
140
151
uses : docker/build-push-action@v3
141
152
with :
142
- cache-from : type=gha
143
- cache-to : type=gha,mode=max
153
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
144
154
context : .
145
155
file : ./build/docker/Dockerfile.demo-pinecone
146
156
platforms : ${{ env.PLATFORMS }}
@@ -154,6 +164,7 @@ jobs:
154
164
demo-yggdrasil :
155
165
name : Yggdrasil demo image
156
166
runs-on : ubuntu-latest
167
+ needs : monolith
157
168
permissions :
158
169
contents : read
159
170
packages : write
@@ -185,8 +196,7 @@ jobs:
185
196
id : docker_build_demo_yggdrasil
186
197
uses : docker/build-push-action@v3
187
198
with :
188
- cache-from : type=gha
189
- cache-to : type=gha,mode=max
199
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
190
200
context : .
191
201
file : ./build/docker/Dockerfile.demo-yggdrasil
192
202
platforms : ${{ env.PLATFORMS }}
@@ -200,8 +210,7 @@ jobs:
200
210
id : docker_build_demo_yggdrasil_release
201
211
uses : docker/build-push-action@v3
202
212
with :
203
- cache-from : type=gha
204
- cache-to : type=gha,mode=max
213
+ cache-from : type=registry,ref=ghcr.io/${{ env.GHCR_NAMESPACE }}/dendrite:buildcache
205
214
context : .
206
215
file : ./build/docker/Dockerfile.demo-yggdrasil
207
216
platforms : ${{ env.PLATFORMS }}
0 commit comments