mirror of
https://github.com/vector-im/element-call.git
synced 2024-11-15 00:04:59 +08:00
13ef3183e2
It thought that we were just trying to follow the latest commit on these actions, when in reality we want to follow the latest tag and pin its commit hash.
73 lines
2.4 KiB
YAML
73 lines
2.4 KiB
YAML
name: Build & publish images to the package registry for tags
|
|
|
|
on:
|
|
release:
|
|
types: [published]
|
|
workflow_run:
|
|
workflows: ["Build"]
|
|
branches: [livekit]
|
|
types:
|
|
- completed
|
|
|
|
env:
|
|
REGISTRY: ghcr.io
|
|
IMAGE_NAME: ${{ github.repository }}
|
|
|
|
jobs:
|
|
build_element_call:
|
|
if: ${{ github.event_name == 'release' }}
|
|
uses: ./.github/workflows/element-call.yaml
|
|
with:
|
|
vite_app_version: ${{ github.event.release.tag_name || github.sha }}
|
|
secrets:
|
|
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
|
|
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
|
|
SENTRY_URL: ${{ secrets.SENTRY_URL }}
|
|
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
|
|
publish_tarball:
|
|
needs: build_element_call
|
|
if: always()
|
|
name: Publish tarball
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
unix_time: ${{steps.current-time.outputs.unix_time}}
|
|
permissions:
|
|
contents: write # required to upload release asset
|
|
packages: write
|
|
steps:
|
|
- name: Get current time
|
|
id: current-time
|
|
run: echo "unix_time=$(date +'%s')" >> $GITHUB_OUTPUT
|
|
- name: 📥 Download artifact
|
|
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4
|
|
with:
|
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
run-id: ${{ github.event.workflow_run.id || github.run_id }}
|
|
name: build-output
|
|
path: dist
|
|
- name: Create Tarball
|
|
env:
|
|
TARBALL_VERSION: ${{ github.event.release.tag_name || github.sha }}
|
|
run: |
|
|
tar --numeric-owner --transform "s/dist/element-call-${TARBALL_VERSION}/" -cvzf element-call-${TARBALL_VERSION}.tar.gz dist
|
|
- name: Upload
|
|
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
|
|
env:
|
|
GITHUB_TOKEN: ${{ github.token }}
|
|
with:
|
|
path: "./element-call-*.tar.gz"
|
|
publish_docker:
|
|
needs: publish_tarball
|
|
if: always()
|
|
permissions:
|
|
contents: write
|
|
packages: write
|
|
uses: ./.github/workflows/docker.yaml
|
|
with:
|
|
artifact_run_id: ${{ github.event.workflow_run.id || github.run_id }}
|
|
docker_tags: |
|
|
type=sha,format=short,event=branch
|
|
type=semver,pattern=v{{version}}
|
|
type=raw,value=latest-ci,enable={{is_default_branch}}
|
|
type=raw,value=latest-ci_${{needs.publish_tarball.outputs.unix_time}},enable={{is_default_branch}}
|