diff --git a/.github/workflows/publish-gstreamer-amd64.yaml b/.github/workflows/publish-gstreamer-amd64.yaml deleted file mode 100644 index 596db2c1..00000000 --- a/.github/workflows/publish-gstreamer-amd64.yaml +++ /dev/null @@ -1,14 +0,0 @@ -name: GStreamer build AMD64 - -on: - workflow_dispatch: - -jobs: - gstreamer-build-amd64: - uses: ./.github/workflows/publish-gstreamer-base.yaml - with: - buildjet-runs-on: buildjet-8vcpu-ubuntu-2204 - arch: amd64 - secrets: - DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} - DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} diff --git a/.github/workflows/publish-gstreamer-arm64.yaml b/.github/workflows/publish-gstreamer-arm64.yaml deleted file mode 100644 index 44c60900..00000000 --- a/.github/workflows/publish-gstreamer-arm64.yaml +++ /dev/null @@ -1,14 +0,0 @@ -name: GStreamer build ARM64 - -on: - workflow_dispatch: - -jobs: - gstreamer-build-arm64: - uses: ./.github/workflows/publish-gstreamer-base.yaml - with: - buildjet-runs-on: namespace-profile-arm-16 - arch: arm64 - secrets: - DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} - DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} diff --git a/.github/workflows/publish-gstreamer-base.yaml b/.github/workflows/publish-gstreamer-base.yaml index fa17491e..00b47e3d 100644 --- a/.github/workflows/publish-gstreamer-base.yaml +++ b/.github/workflows/publish-gstreamer-base.yaml @@ -1,6 +1,9 @@ on: workflow_call: inputs: + version: + required: true + type: string buildjet-runs-on: required: true type: string @@ -13,7 +16,7 @@ on: DOCKERHUB_TOKEN: required: true env: - GST_VERSION: "1.22.8" + GST_VERSION: "${{ inputs.version }}" LIBNICE_VERSION: "0.1.21" jobs: diff --git a/.github/workflows/publish-gstreamer-tag.yaml b/.github/workflows/publish-gstreamer-tag.yaml deleted file mode 100644 index 6b8d355e..00000000 --- a/.github/workflows/publish-gstreamer-tag.yaml +++ /dev/null @@ -1,25 +0,0 @@ -name: GStreamer publish tag - -on: - workflow_dispatch: - -jobs: - tag-gstreamer-build: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Login to Docker Hub - uses: docker/login-action@v3 - with: - username: ${{ secrets.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_TOKEN }} - - - name: Run tag script - run: ./build/gstreamer/tag.sh - - diff --git a/.github/workflows/publish-gstreamer.yaml b/.github/workflows/publish-gstreamer.yaml new file mode 100644 index 00000000..9e23fffa --- /dev/null +++ b/.github/workflows/publish-gstreamer.yaml @@ -0,0 +1,49 @@ +name: Publish GStreamer + +on: + workflow_dispatch: + inputs: + version: + description: "GStreamer version to publish (e.g. 1.24.4)" + required: true + type: string + +jobs: + gstreamer-build-amd64: + uses: ./.github/workflows/publish-gstreamer-base.yaml + with: + version: ${{ inputs.version }} + buildjet-runs-on: buildjet-8vcpu-ubuntu-2204 + arch: amd64 + secrets: + DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} + DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} + + gstreamer-build-arm64: + uses: ./.github/workflows/publish-gstreamer-base.yaml + with: + version: ${{ inputs.version }} + buildjet-runs-on: namespace-profile-arm-16 + arch: arm64 + secrets: + DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} + DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} + + tag-gstreamer-build: + needs: [gstreamer-build-amd64, gstreamer-build-arm64] + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Run tag script + run: ./build/gstreamer/tag.sh ${{ inputs.version }} diff --git a/build/gstreamer/tag.sh b/build/gstreamer/tag.sh index 7a662432..0a9ec047 100755 --- a/build/gstreamer/tag.sh +++ b/build/gstreamer/tag.sh @@ -2,7 +2,7 @@ image_suffix=(base dev prod prod-rs) archs=(amd64 arm64) -gst_version=1.22.8 +gst_version=$1 for suffix in ${image_suffix[*]} do @@ -24,4 +24,3 @@ do docker manifest create livekit/gstreamer:$gst_version-$suffix$manifests docker manifest push livekit/gstreamer:$gst_version-$suffix done -