Skip to content

CI: Properly terminate sed substitute script #7

CI: Properly terminate sed substitute script

CI: Properly terminate sed substitute script #7

name: Build and Publish Unstable (main branch)
on:
push:
branches:
- 'main'
# Make sure jobs cannot overlap.
concurrency:
group: build-${{ github.ref }}
cancel-in-progress: true
jobs:
# First, build the extension and upload the artifacts.
build-linux:
name: Compile and upload Linux version
uses: ./.github/workflows/extension-build-linux.yml
with:
git-base-ref: 'main'
build-macos:
name: Compile and upload macOS version
uses: ./.github/workflows/extension-build-macos.yml
with:
git-base-ref: 'main'
build-windows:
name: Compile and upload Windows version
uses: ./.github/workflows/extension-build-windows.yml
with:
git-base-ref: 'main'
build-web:
name: Compile and upload Web version
uses: ./.github/workflows/extension-build-web.yml
with:
git-base-ref: 'main'
build-android:
name: Compile and upload Android version
uses: ./.github/workflows/extension-build-android.yml
with:
git-base-ref: 'main'
# Then, use the artifacts to prepare the example project and publish the build.
publish-all:
name: Package and publish the extension
needs: [ build-linux, build-macos, build-windows, build-web, build-android ]
uses: ./.github/workflows/extension-publish-all.yml
with:
release-version: 'latest-unstable'
export-example-project:
name: Export the example project for target platforms
needs: [ build-linux, build-macos, build-windows, build-web, build-android ]
uses: ./.github/workflows/example-export-project.yml
publish-example-project:
name: Package and publish the example project
needs: [ export-example-project ]
uses: ./.github/workflows/example-publish-project.yml
with:
release-version: 'latest-unstable'
# Lastly, update the release tag and republish it.
release-all:
name: Update tag and re-release the GitHub Release
needs: [ publish-all, publish-example-project ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Update GitHub Release
uses: ./.github/actions/update-release
with:
release-version: 'latest-unstable'
republish: true