# Copyright (C) 2019 Intel Corporation. All rights reserved. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception name: the binary release processes on: workflow_dispatch: inputs: require_confirmation: description: "If the process requires a confirmation" type: boolean required: false default: false # Cancel any in-flight jobs for the same PR/branch so there's only one active # at a time concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: create_tag: uses: ./.github/workflows/create_tag.yml create_release: needs: [create_tag] runs-on: ubuntu-latest outputs: upload_url: ${{ steps.create_release.outputs.upload_url }} steps: - uses: actions/checkout@v3 - name: prepare the release note run: | extract_result="$(python3 ./.github/scripts/extract_from_release_notes.py RELEASE_NOTES.md)" echo "RELEASE_NOTE<> $GITHUB_ENV echo "${extract_result}" >> $GITHUB_ENV echo "EOF" >> $GITHUB_ENV - name: create a release id: create_release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ needs.create_tag.outputs.new_tag }} release_name: ${{ needs.create_tag.outputs.new_tag }} prerelease: ${{ inputs.require_confirmation || needs.create_tag.outputs.minor_version }} draft: false body: ${{ env.RELEASE_NOTE }} # # WAMRC release_wamrc_on_ubuntu_2004: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamrc.yml with: # can't take an env variable here llvm_cache_key: ubuntu-20.04-build-llvm_libraries_ex release: true runner: ubuntu-20.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} release_wamrc_on_ubuntu_2204: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamrc.yml with: # can't take an env variable here llvm_cache_key: ubuntu-22.04-build-llvm_libraries_ex release: true runner: ubuntu-22.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver }} release_wamrc_on_ubuntu_macos: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamrc.yml with: # can't take an env variable here llvm_cache_key: macos-latest-build-llvm_libraries_ex release: true runner: macos-latest upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver }} # # IWASM release_iwasm_on_ubuntu_2004: needs: [create_tag, create_release] uses: ./.github/workflows/build_iwasm_release.yml with: cwd: product-mini/platforms/linux runner: ubuntu-20.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} release_iwasm_on_ubuntu_2204: needs: [create_tag, create_release] uses: ./.github/workflows/build_iwasm_release.yml with: cwd: product-mini/platforms/linux runner: ubuntu-22.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} release_iwasm_on_macos: needs: [create_tag, create_release] uses: ./.github/workflows/build_iwasm_release.yml with: cwd: product-mini/platforms/darwin runner: macos-latest upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} # # WAMR_SDK release_wamr_sdk_on_ubuntu_2004: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_sdk.yml with: config_file: wamr_config_ubuntu_release.cmake runner: ubuntu-20.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} wasi_sdk_url: https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-12/wasi-sdk-12.0-linux.tar.gz release_wamr_sdk_on_ubuntu_2204: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_sdk.yml with: config_file: wamr_config_ubuntu_release.cmake runner: ubuntu-22.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} wasi_sdk_url: https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-12/wasi-sdk-12.0-linux.tar.gz release_wamr_sdk_on_macos: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_sdk.yml with: config_file: wamr_config_macos_release.cmake runner: macos-latest upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} wasi_sdk_url: https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-12/wasi-sdk-12.0-macos.tar.gz # # vscode extension cross-platform release_wamr_ide_vscode_ext: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_vscode_ext.yml with: upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver }} # # vscode extension docker images package release_wamr_ide_docker_images_package: needs: [create_tag, create_release] uses: ./.github/workflows/build_docker_images.yml with: upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver }} # # WAMR_LLDB release_wamr_lldb_on_ubuntu_2004: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_lldb.yml with: runner: ubuntu-20.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} release_wamr_lldb_on_ubuntu_2204: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_lldb.yml with: runner: ubuntu-22.04 upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}} release_wamr_lldb_on_macos_universal: needs: [create_tag, create_release] uses: ./.github/workflows/build_wamr_lldb.yml with: runner: macos-latest arch: universal upload_url: ${{ needs.create_release.outputs.upload_url }} ver_num: ${{ needs.create_tag.outputs.new_ver}}