release-stable.yml 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288
  1. name: "Release Stable"
  2. on:
  3. workflow_dispatch:
  4. inputs:
  5. version:
  6. description: Version number
  7. required: true
  8. type: string
  9. jobs:
  10. gh-release:
  11. runs-on: ubuntu-latest
  12. needs: [base, base-java, jibri, jicofo, jigasi, jvb, prosody, web]
  13. permissions:
  14. # Give the default GITHUB_TOKEN write permission to commit and push the changed files back to the repository.
  15. contents: write
  16. steps:
  17. - uses: actions/checkout@v4
  18. - run: |
  19. sed -i "" -e "s/unstable/stable-${{ github.event.inputs.version }}/" *.yml
  20. - uses: stefanzweifel/git-auto-commit-action@v5
  21. with:
  22. commit_message: "release: stable-${{ github.event.inputs.version }}"
  23. - name: release
  24. uses: softprops/action-gh-release@v2
  25. with:
  26. tag_name: stable-${{ github.event.inputs.version }}
  27. generate_release_notes: true
  28. make_latest: true
  29. - run: |
  30. sed -i "" -e "s/stable-${{ github.event.inputs.version }}/unstable/" *.yml
  31. - uses: stefanzweifel/git-auto-commit-action@v5
  32. with:
  33. commit_message: "misc: working on unstable"
  34. base:
  35. runs-on: ubuntu-latest
  36. steps:
  37. - name: Check out code
  38. uses: actions/checkout@v4
  39. - name: Set up QEMU
  40. uses: docker/setup-qemu-action@v3
  41. with:
  42. platforms: linux/amd64,linux/arm64
  43. - name: Setup Docker Buildx
  44. uses: docker/setup-buildx-action@v3
  45. - name: Login to DockerHub
  46. uses: docker/login-action@v3
  47. with:
  48. username: ${{ secrets.DOCKERHUB_USERNAME }}
  49. password: ${{ secrets.DOCKERHUB_TOKEN }}
  50. - name: Build and push
  51. uses: docker/build-push-action@v6
  52. with:
  53. push: true
  54. context: ./base
  55. tags: |
  56. ${{ secrets.JITSI_REPO }}/base:stable-${{ github.event.inputs.version }}
  57. ${{ secrets.JITSI_REPO }}/base:stable
  58. build-args: |
  59. JITSI_RELEASE=stable
  60. platforms: linux/amd64,linux/arm64
  61. cache-from: type=gha
  62. cache-to: type=gha,mode=max
  63. base-java:
  64. runs-on: ubuntu-latest
  65. needs: base
  66. steps:
  67. - name: Check out code
  68. uses: actions/checkout@v4
  69. - name: Set up QEMU
  70. uses: docker/setup-qemu-action@v3
  71. with:
  72. platforms: linux/amd64,linux/arm64
  73. - name: Setup Docker Buildx
  74. uses: docker/setup-buildx-action@v3
  75. - name: Login to DockerHub
  76. uses: docker/login-action@v3
  77. with:
  78. username: ${{ secrets.DOCKERHUB_USERNAME }}
  79. password: ${{ secrets.DOCKERHUB_TOKEN }}
  80. - name: Build and push
  81. uses: docker/build-push-action@v6
  82. with:
  83. push: true
  84. context: ./base-java
  85. tags: |
  86. ${{ secrets.JITSI_REPO }}/base-java:stable-${{ github.event.inputs.version }}
  87. ${{ secrets.JITSI_REPO }}/base-java:stable
  88. build-args: |
  89. JITSI_REPO=${{ secrets.JITSI_REPO }}
  90. BASE_TAG=stable-${{ github.event.inputs.version }}
  91. platforms: linux/amd64,linux/arm64
  92. cache-from: type=gha
  93. cache-to: type=gha,mode=max
  94. jibri:
  95. runs-on: ubuntu-latest
  96. needs: base-java
  97. steps:
  98. - name: Check out code
  99. uses: actions/checkout@v4
  100. - name: Set up QEMU
  101. uses: docker/setup-qemu-action@v3
  102. with:
  103. platforms: linux/amd64,linux/arm64
  104. - name: Setup Docker Buildx
  105. uses: docker/setup-buildx-action@v3
  106. - name: Login to DockerHub
  107. uses: docker/login-action@v3
  108. with:
  109. username: ${{ secrets.DOCKERHUB_USERNAME }}
  110. password: ${{ secrets.DOCKERHUB_TOKEN }}
  111. - name: Build and push
  112. uses: docker/build-push-action@v6
  113. with:
  114. push: true
  115. context: ./jibri
  116. tags: |
  117. ${{ secrets.JITSI_REPO }}/jibri:stable-${{ github.event.inputs.version }}
  118. ${{ secrets.JITSI_REPO }}/jibri:stable
  119. build-args: |
  120. JITSI_REPO=${{ secrets.JITSI_REPO }}
  121. BASE_TAG=stable-${{ github.event.inputs.version }}
  122. platforms: linux/amd64,linux/arm64
  123. cache-from: type=gha
  124. cache-to: type=gha,mode=max
  125. jicofo:
  126. runs-on: ubuntu-latest
  127. needs: base-java
  128. steps:
  129. - name: Check out code
  130. uses: actions/checkout@v4
  131. - name: Set up QEMU
  132. uses: docker/setup-qemu-action@v3
  133. with:
  134. platforms: linux/amd64,linux/arm64
  135. - name: Setup Docker Buildx
  136. uses: docker/setup-buildx-action@v3
  137. - name: Login to DockerHub
  138. uses: docker/login-action@v3
  139. with:
  140. username: ${{ secrets.DOCKERHUB_USERNAME }}
  141. password: ${{ secrets.DOCKERHUB_TOKEN }}
  142. - name: Build and push
  143. uses: docker/build-push-action@v6
  144. with:
  145. push: true
  146. context: ./jicofo
  147. tags: |
  148. ${{ secrets.JITSI_REPO }}/jicofo:stable-${{ github.event.inputs.version }}
  149. ${{ secrets.JITSI_REPO }}/jicofo:stable
  150. build-args: |
  151. JITSI_REPO=${{ secrets.JITSI_REPO }}
  152. BASE_TAG=stable-${{ github.event.inputs.version }}
  153. platforms: linux/amd64,linux/arm64
  154. cache-from: type=gha
  155. cache-to: type=gha,mode=max
  156. jigasi:
  157. runs-on: ubuntu-latest
  158. needs: base-java
  159. steps:
  160. - name: Check out code
  161. uses: actions/checkout@v4
  162. - name: Set up QEMU
  163. uses: docker/setup-qemu-action@v3
  164. with:
  165. platforms: linux/amd64,linux/arm64
  166. - name: Setup Docker Buildx
  167. uses: docker/setup-buildx-action@v3
  168. - name: Login to DockerHub
  169. uses: docker/login-action@v3
  170. with:
  171. username: ${{ secrets.DOCKERHUB_USERNAME }}
  172. password: ${{ secrets.DOCKERHUB_TOKEN }}
  173. - name: Build and push
  174. uses: docker/build-push-action@v6
  175. with:
  176. push: true
  177. context: ./jigasi
  178. tags: |
  179. ${{ secrets.JITSI_REPO }}/jigasi:stable-${{ github.event.inputs.version }}
  180. ${{ secrets.JITSI_REPO }}/jigasi:stable
  181. build-args: |
  182. JITSI_REPO=${{ secrets.JITSI_REPO }}
  183. BASE_TAG=stable-${{ github.event.inputs.version }}
  184. platforms: linux/amd64,linux/arm64
  185. cache-from: type=gha
  186. cache-to: type=gha,mode=max
  187. jvb:
  188. runs-on: ubuntu-latest
  189. needs: base-java
  190. steps:
  191. - name: Check out code
  192. uses: actions/checkout@v4
  193. - name: Set up QEMU
  194. uses: docker/setup-qemu-action@v3
  195. with:
  196. platforms: linux/amd64,linux/arm64
  197. - name: Setup Docker Buildx
  198. uses: docker/setup-buildx-action@v3
  199. - name: Login to DockerHub
  200. uses: docker/login-action@v3
  201. with:
  202. username: ${{ secrets.DOCKERHUB_USERNAME }}
  203. password: ${{ secrets.DOCKERHUB_TOKEN }}
  204. - name: Build and push
  205. uses: docker/build-push-action@v6
  206. with:
  207. push: true
  208. context: ./jvb
  209. tags: |
  210. ${{ secrets.JITSI_REPO }}/jvb:stable-${{ github.event.inputs.version }}
  211. ${{ secrets.JITSI_REPO }}/jvb:stable
  212. build-args: |
  213. JITSI_REPO=${{ secrets.JITSI_REPO }}
  214. BASE_TAG=stable-${{ github.event.inputs.version }}
  215. platforms: linux/amd64,linux/arm64
  216. cache-from: type=gha
  217. cache-to: type=gha,mode=max
  218. prosody:
  219. runs-on: ubuntu-latest
  220. needs: base
  221. steps:
  222. - name: Check out code
  223. uses: actions/checkout@v4
  224. - name: Set up QEMU
  225. uses: docker/setup-qemu-action@v3
  226. with:
  227. platforms: linux/amd64,linux/arm64
  228. - name: Setup Docker Buildx
  229. uses: docker/setup-buildx-action@v3
  230. - name: Login to DockerHub
  231. uses: docker/login-action@v3
  232. with:
  233. username: ${{ secrets.DOCKERHUB_USERNAME }}
  234. password: ${{ secrets.DOCKERHUB_TOKEN }}
  235. - name: Build and push
  236. uses: docker/build-push-action@v6
  237. with:
  238. push: true
  239. context: ./prosody
  240. tags: |
  241. ${{ secrets.JITSI_REPO }}/prosody:stable-${{ github.event.inputs.version }}
  242. ${{ secrets.JITSI_REPO }}/prosody:stable
  243. build-args: |
  244. JITSI_REPO=${{ secrets.JITSI_REPO }}
  245. BASE_TAG=stable-${{ github.event.inputs.version }}
  246. platforms: linux/amd64,linux/arm64
  247. cache-from: type=gha
  248. cache-to: type=gha,mode=max
  249. web:
  250. runs-on: ubuntu-latest
  251. needs: base
  252. steps:
  253. - name: Check out code
  254. uses: actions/checkout@v4
  255. - name: Set up QEMU
  256. uses: docker/setup-qemu-action@v3
  257. with:
  258. platforms: linux/amd64,linux/arm64
  259. - name: Setup Docker Buildx
  260. uses: docker/setup-buildx-action@v3
  261. - name: Login to DockerHub
  262. uses: docker/login-action@v3
  263. with:
  264. username: ${{ secrets.DOCKERHUB_USERNAME }}
  265. password: ${{ secrets.DOCKERHUB_TOKEN }}
  266. - name: Build and push
  267. uses: docker/build-push-action@v6
  268. with:
  269. push: true
  270. context: ./web
  271. tags: |
  272. ${{ secrets.JITSI_REPO }}/web:stable-${{ github.event.inputs.version }}
  273. ${{ secrets.JITSI_REPO }}/web:stable
  274. build-args: |
  275. JITSI_REPO=${{ secrets.JITSI_REPO }}
  276. BASE_TAG=stable-${{ github.event.inputs.version }}
  277. platforms: linux/amd64,linux/arm64
  278. cache-from: type=gha
  279. cache-to: type=gha,mode=max