5
5
branches :
6
6
- " main"
7
7
8
+ env :
9
+ DOCKER_BUILDKIT : 1
10
+
8
11
jobs :
9
- docker :
12
+ version :
10
13
runs-on : arc-arm64
14
+ outputs :
15
+ new_tag : ${{ steps.tag_version.outputs.new_tag }}
16
+ changelog : ${{ steps.tag_version.outputs.changelog }}
11
17
steps :
12
18
- name : Checkout
13
19
uses : actions/checkout@v4
@@ -22,15 +28,22 @@ jobs:
22
28
tag : ${{ steps.tag_version.outputs.new_tag }}
23
29
name : Release ${{ steps.tag_version.outputs.new_tag }}
24
30
body : ${{ steps.tag_version.outputs.changelog }}
25
- - name : Docker meta
26
- id : meta
31
+
32
+ build-ecran :
33
+ needs : version
34
+ runs-on : arc-arm64
35
+ steps :
36
+ - name : Checkout
37
+ uses : actions/checkout@v4
38
+ - name : Docker meta for ecran
39
+ id : meta_ecran
27
40
uses : docker/metadata-action@v5
28
41
with :
29
42
images : |
30
43
gitea.grisha.cloud/lab/ecran
31
44
tags : |
32
45
type=ref,event=branch
33
- type=semver,pattern={{version}},value=${{ steps.tag_version .outputs.new_tag }}
46
+ type=semver,pattern={{version}},value=${{ needs.version .outputs.new_tag }}
34
47
type=sha
35
48
- name : Set up QEMU
36
49
uses : docker/setup-qemu-action@v3
48
61
platforms : linux/arm64
49
62
context : ./apps/ecran
50
63
file : ./apps/ecran/Dockerfile
51
- tags : ${{ steps.meta .outputs.tags }}
52
- labels : ${{ steps.meta .outputs.labels }}
64
+ tags : ${{ steps.meta_ecran .outputs.tags }}
65
+ labels : ${{ steps.meta_ecran .outputs.labels }}
53
66
push : true
54
67
cache-from : type=registry,ref=gitea.grisha.cloud/lab/ecran:latest
55
68
cache-to : type=inline
69
+ build-args : |
70
+ BUILDKIT_INLINE_CACHE=1
71
+
72
+ build-ecran-worker :
73
+ needs : version
74
+ runs-on : arc-arm64
75
+ steps :
76
+ - name : Checkout
77
+ uses : actions/checkout@v4
78
+ - name : Docker meta for ecran-worker
79
+ id : meta_ecran_worker
80
+ uses : docker/metadata-action@v5
81
+ with :
82
+ images : |
83
+ gitea.grisha.cloud/lab/ecran-worker
84
+ tags : |
85
+ type=ref,event=branch
86
+ type=semver,pattern={{version}},value=${{ needs.version.outputs.new_tag }}
87
+ type=sha
88
+ - name : Set up QEMU
89
+ uses : docker/setup-qemu-action@v3
90
+ - name : Set up Docker Buildx
91
+ uses : docker/setup-buildx-action@v3
92
+ - name : Login to Docker Hub
93
+ uses : docker/login-action@v3
94
+ with :
95
+ registry : gitea.grisha.cloud
96
+ username : ${{ secrets.REGISTRY_USERNAME }}
97
+ password : ${{ secrets.REGISTRY_TOKEN }}
98
+ - name : Build and push ecran-worker
99
+ uses : docker/build-push-action@v5
100
+ with :
101
+ platforms : linux/arm64
102
+ context : ./apps/ecran
103
+ file : ./apps/ecran/Dockerfile.worker
104
+ tags : ${{ steps.meta_ecran_worker.outputs.tags }}
105
+ labels : ${{ steps.meta_ecran_worker.outputs.labels }}
106
+ push : true
107
+ cache-from : type=registry,ref=gitea.grisha.cloud/lab/ecran-worker:latest
108
+ cache-to : type=inline
109
+ build-args : |
110
+ BUILDKIT_INLINE_CACHE=1
111
+
112
+ build-ecran-migrator :
113
+ needs : version
114
+ runs-on : arc-arm64
115
+ steps :
116
+ - name : Checkout
117
+ uses : actions/checkout@v4
118
+ - name : Docker meta for ecran-migrator
119
+ id : meta_ecran_migrator
120
+ uses : docker/metadata-action@v5
121
+ with :
122
+ images : |
123
+ gitea.grisha.cloud/lab/ecran-migrator
124
+ tags : |
125
+ type=ref,event=branch
126
+ type=semver,pattern={{version}},value=${{ needs.version.outputs.new_tag }}
127
+ type=sha
128
+ - name : Set up QEMU
129
+ uses : docker/setup-qemu-action@v3
130
+ - name : Set up Docker Buildx
131
+ uses : docker/setup-buildx-action@v3
132
+ - name : Login to Docker Hub
133
+ uses : docker/login-action@v3
134
+ with :
135
+ registry : gitea.grisha.cloud
136
+ username : ${{ secrets.REGISTRY_USERNAME }}
137
+ password : ${{ secrets.REGISTRY_TOKEN }}
138
+ - name : Build and push ecran-migrator
139
+ uses : docker/build-push-action@v5
140
+ with :
141
+ platforms : linux/arm64
142
+ context : ./apps/ecran
143
+ file : ./apps/ecran/Dockerfile.migrator
144
+ tags : ${{ steps.meta_ecran_migrator.outputs.tags }}
145
+ labels : ${{ steps.meta_ecran_migrator.outputs.labels }}
146
+ push : true
147
+ cache-from : type=registry,ref=gitea.grisha.cloud/lab/ecran-migrator:latest
148
+ cache-to : type=inline
149
+ build-args : |
150
+ BUILDKIT_INLINE_CACHE=1
0 commit comments