Unstable Build #3238
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Unstable Build | |
on: | |
schedule: | |
- cron: "0 6 * * *" | |
workflow_dispatch: | |
jobs: | |
version: | |
runs-on: ubuntu-latest | |
outputs: | |
base: unstable | |
date: unstable-${{ steps.date.outputs.date }} | |
prosody_version: prosody-${{ steps.prosody_version.outputs.version }} | |
jicofo_version: jicofo-${{ steps.jicofo_version.outputs.version }} | |
web_version: web-${{ steps.web_version.outputs.version }} | |
jvb_version: jvb-${{ steps.jvb_version.outputs.version }} | |
jibri_version: jibri-${{ steps.jibri_version.outputs.version }} | |
jigasi_version: jigasi-${{ steps.jigasi_version.outputs.version }} | |
steps: | |
- name: Get current date | |
id: date | |
run: echo "date=$(date +%F)">> $GITHUB_OUTPUT | |
- name: Prosody gpg key | |
id: prosody_gpg_key | |
run: curl --location --silent --show-error https://prosody.im/files/prosody-debian-packages.key | sudo dd of=/etc/apt/trusted.gpg.d/prosody.gpg | |
- name: Prosody repo | |
uses: myci-actions/add-deb-repo@11 | |
with: | |
repo: deb https://packages.prosody.im/debian bookworm main | |
repo-name: prosody | |
keys-asc: https://prosody.im/files/prosody-debian-packages.key | |
- name: Jitsi repo | |
uses: myci-actions/add-deb-repo@11 | |
with: | |
repo: deb https://download.jitsi.org/ unstable/ | |
repo-name: jitsi | |
keys-asc: https://download.jitsi.org/jitsi-key.gpg.key | |
- name: Get current jicofo versions | |
id: jicofo_version | |
run: echo "version=$( apt-cache show jitsi-meet | head -10 | grep '^Depends:' | tr ',' '\n' | grep jicofo | cut -d'=' -f2 | tr -d ')' | awk '{print $1}' )" >> $GITHUB_OUTPUT | |
- name: Get current jitsi-meet-web versions | |
id: web_version | |
run: echo "version=$( apt-cache show jitsi-meet | head -10 | grep '^Depends:' | tr ',' '\n' | grep 'jitsi-meet-web ' | cut -d'=' -f2 | tr -d ')' | awk '{print $1}' )" >> $GITHUB_OUTPUT | |
- name: Get current jvb versions | |
id: jvb_version | |
run: echo "version=$( apt-cache show jitsi-meet | head -10 | grep '^Pre-Depends:'| tr ',' '\n' | grep 'jitsi-videobridge2' | cut -d'=' -f2 | tr -d ')' | awk '{print $1}' )" >> $GITHUB_OUTPUT | |
- name: Get current prosody versions | |
id: prosody_version | |
run: echo "version=$( apt-cache madison prosody | awk '{print $3;}' | head -1 | cut -d'-' -f1 )" >> $GITHUB_OUTPUT | |
- name: Get current jibri version | |
id: jibri_version | |
run: echo "version=$( apt-cache show jibri | head -10 | grep Version | awk '{print $2}' )" >> $GITHUB_OUTPUT | |
- name: Get current jigasi version | |
id: jigasi_version | |
run: echo "version=$( apt-cache show jigasi | head -10 | grep Version | awk '{print $2}' )" >> $GITHUB_OUTPUT | |
base: | |
runs-on: ubuntu-latest | |
needs: version | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./base | |
tags: | | |
${{ secrets.JITSI_REPO }}/base:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/base:${{ needs.version.outputs.date }} | |
build-args: | | |
JITSI_RELEASE=unstable | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
base-java: | |
runs-on: ubuntu-latest | |
needs: [version, base] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./base-java | |
tags: | | |
${{ secrets.JITSI_REPO }}/base-java:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/base-java:${{ needs.version.outputs.date }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
jibri: | |
runs-on: ubuntu-latest | |
needs: [version, base-java] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./jibri | |
tags: | | |
${{ secrets.JITSI_REPO }}/jibri:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/jibri:${{ needs.version.outputs.date }} | |
${{ secrets.JITSI_REPO }}/jibri:${{ needs.version.outputs.jibri_version }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
jicofo: | |
runs-on: ubuntu-latest | |
needs: [version, base-java] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./jicofo | |
tags: | | |
${{ secrets.JITSI_REPO }}/jicofo:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/jicofo:${{ needs.version.outputs.date }} | |
${{ secrets.JITSI_REPO }}/jicofo:${{ needs.version.outputs.jicofo_version }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
jigasi: | |
runs-on: ubuntu-latest | |
needs: [version, base-java] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./jigasi | |
tags: | | |
${{ secrets.JITSI_REPO }}/jigasi:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/jigasi:${{ needs.version.outputs.date }} | |
${{ secrets.JITSI_REPO }}/jigasi:${{ needs.version.outputs.jigasi_version }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
jvb: | |
runs-on: ubuntu-latest | |
needs: [version, base-java] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./jvb | |
tags: | | |
${{ secrets.JITSI_REPO }}/jvb:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/jvb:${{ needs.version.outputs.date }} | |
${{ secrets.JITSI_REPO }}/jvb:${{ needs.version.outputs.jvb_version }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
prosody: | |
runs-on: ubuntu-latest | |
needs: [version, base] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./prosody | |
tags: | | |
${{ secrets.JITSI_REPO }}/prosody:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/prosody:${{ needs.version.outputs.date }} | |
${{ secrets.JITSI_REPO }}/prosody:${{ needs.version.outputs.prosody_version }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max | |
web: | |
runs-on: ubuntu-latest | |
needs: [version, base] | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
with: | |
platforms: linux/amd64,linux/arm64 | |
- name: Setup Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v2 | |
with: | |
push: true | |
context: ./web | |
tags: | | |
${{ secrets.JITSI_REPO }}/web:${{ needs.version.outputs.base }} | |
${{ secrets.JITSI_REPO }}/web:${{ needs.version.outputs.date }} | |
${{ secrets.JITSI_REPO }}/web:${{ needs.version.outputs.web_version }} | |
build-args: | | |
JITSI_REPO=${{ secrets.JITSI_REPO }} | |
BASE_TAG=${{ needs.version.outputs.base }} | |
platforms: linux/amd64,linux/arm64 | |
cache-from: type=gha | |
cache-to: type=gha,mode=max |