name: Build on: pull_request: types: - synchronize - opened - labeled push: branches: [livekit, full-mesh] jobs: build_full_element_call: # Use the full package vite build uses: ./.github/workflows/build-element-call.yaml with: package: full vite_app_version: ${{ github.event.release.tag_name || github.sha }} build_mode: ${{ github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'development build') && 'development' || 'production' }} secrets: SENTRY_ORG: ${{ secrets.SENTRY_ORG }} SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} SENTRY_URL: ${{ secrets.SENTRY_URL }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} deploy_develop: # Deploy livekit branch to call.element.dev after build completes if: github.ref == 'refs/heads/livekit' needs: build_full_element_call runs-on: ubuntu-latest steps: - name: Deploy to call.element.dev uses: actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410 # v6 with: github-token: ${{ secrets.DEVELOP_DEPLOYMENT_TOKEN }} script: | await github.rest.actions.createWorkflowDispatch({ owner: 'element-hq', repo: 'element-call-webapp-deployments', workflow_id: 'deploy.yml', ref: 'main', inputs: { target: 'call.element.dev', version: '${{ github.sha }}' } }) docker_for_develop: # Build docker and publish docker for livekit branch after build completes if: github.ref == 'refs/heads/livekit' needs: build_full_element_call permissions: contents: write packages: write uses: ./.github/workflows/build-and-publish-docker.yaml with: artifact_run_id: ${{ github.run_id }} docker_tags: | type=sha,format=short,event=branch type=raw,value=latest-ci type=raw,value=latest-ci_{{date 'X' }} build_embedded_element_call: # Use the embedded package vite build uses: ./.github/workflows/build-element-call.yaml with: package: embedded vite_app_version: ${{ github.event.release.tag_name || github.sha }} build_mode: ${{ github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'development build') && 'development' || 'production' }} secrets: SENTRY_ORG: ${{ secrets.SENTRY_ORG }} SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }} SENTRY_URL: ${{ secrets.SENTRY_URL }} SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}