mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-02-06 15:05:19 +00:00
110 lines
3.4 KiB
YAML
110 lines
3.4 KiB
YAML
# Copyright (C) 2019 Intel Corporation. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
name: build wamr-sdk
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
arch:
|
|
description: arch of the release
|
|
type: string
|
|
required: false
|
|
default: x86_64
|
|
config_file:
|
|
description: warm-sdk config file path
|
|
type: string
|
|
required: true
|
|
runner:
|
|
description: OS of compilation
|
|
type: string
|
|
required: true
|
|
upload_url:
|
|
description: upload binary assets to the URL of release
|
|
type: string
|
|
required: true
|
|
ver_num:
|
|
description: a semantic version number
|
|
type: string
|
|
required: true
|
|
wasi_sdk_url:
|
|
description: download WASI_SDK from this URL
|
|
type: string
|
|
required: true
|
|
wamr_app_framework_url:
|
|
description: download WAMR app framework to get wamr_sdk
|
|
type: string
|
|
required: true
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ inputs.runner }}
|
|
permissions:
|
|
contents: write # for uploading release artifacts
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: download wamr-app-framework
|
|
run: |
|
|
git clone ${{ inputs.wamr_app_framework_url }}
|
|
cd wamr-app-framework
|
|
git submodule init
|
|
git submodule update
|
|
working-directory: wamr-sdk
|
|
|
|
- name: download and install wasi-sdk
|
|
run: |
|
|
cd /opt
|
|
basename=$(basename ${{ inputs.wasi_sdk_url }})
|
|
sudo wget --progress=dot:giga ${{ inputs.wasi_sdk_url }}
|
|
sudo tar -xzf ${basename}
|
|
sudo rm ${basename}
|
|
sudo mv wasi-sdk-* wasi-sdk
|
|
|
|
- name: download dependencies
|
|
run: |
|
|
cd ./wamr-app-framework/deps
|
|
./download.sh
|
|
working-directory: wamr-sdk
|
|
|
|
- name: generate wamr-sdk release
|
|
run: |
|
|
cd ./wamr-app-framework/wamr-sdk
|
|
./build_sdk.sh -n wamr-sdk -x $(pwd)/${{ inputs.config_file }}
|
|
working-directory: wamr-sdk
|
|
|
|
- name: compress the binary
|
|
run: |
|
|
cd wamr-app-framework/wamr-sdk/out
|
|
tar czf wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz wamr-sdk
|
|
zip -r wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.zip wamr-sdk
|
|
working-directory: wamr-sdk
|
|
|
|
- name: upload release tar.gz
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ inputs.upload_url }}
|
|
asset_path: wamr-sdk/wamr-app-framework/wamr-sdk/out/wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.tar.gz
|
|
asset_name: wamr-sdk-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.tar.gz
|
|
asset_content_type: application/x-gzip
|
|
|
|
- name: upload release zip
|
|
uses: actions/upload-release-asset@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
upload_url: ${{ inputs.upload_url }}
|
|
asset_path: wamr-sdk/wamr-app-framework/wamr-sdk/out/wamr-sdk-${{ inputs.ver_num }}-${{ inputs.runner }}.zip
|
|
asset_name: wamr-sdk-${{ inputs.ver_num }}-${{ inputs.arch }}-${{ inputs.runner }}.zip
|
|
asset_content_type: application/zip
|
|
|
|
- name: delete wamr-app-framework
|
|
run: |
|
|
rm -rf wamr-app-framework
|
|
working-directory: wamr-sdk
|