fix: dbghelp #72
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions | |
name: Build Packages | |
on: | |
release: | |
types: [published] | |
push: | |
tags: | |
- v* | |
branches: [ master, dev, ci, mac] | |
pull_request: | |
branches: [ master ] | |
# # Allows you to run this workflow manually from the Actions tab | |
# workflow_dispatch: | |
jobs: | |
build-windows: | |
name: Build Windows | |
runs-on: windows-latest | |
strategy: | |
matrix: | |
arch: ['x86_64'] | |
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/ | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: 'recursive' | |
- name: Generate TAG | |
id: Tag | |
run: | | |
$tag="continuous" | |
$name="Continuous Build" | |
if ( "true" -eq "${{ startsWith(github.ref, 'refs/tags/') }}" ) { | |
$tag="${{ github.ref_name }}" | |
$name='${{ github.ref_name }}' | |
} | |
echo "tag result: $tag - $name" | |
echo "::set-output name=tag::$tag" | |
echo "::set-output name=name::$name" | |
- name: run-vcpkg | |
uses: lukka/[email protected] # Option 2: specify 'latest' or 'latestrc' in the input version arguments: | |
- uses: TheMrMilchmann/setup-msvc-dev@v3 | |
with: | |
arch: ${{ matrix.arch }} | |
- name: Build | |
run: | | |
powershell tools/windows/ci.ps1 ${{ matrix.arch }} ${{ steps.tag.outputs.tag }} | |
- name: Upload artifact | |
uses: actions/[email protected] | |
with: | |
# Artifact name | |
name: yukihana-${{ matrix.arch }}.build | |
path: tmp/build | |
build-linux: | |
name: Build Linux | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
arch: ['x86_64'] | |
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/ | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: 'recursive' | |
- name: Generate TAG | |
id: Tag | |
run: | | |
tag='continuous' | |
name='Continuous Build' | |
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then | |
tag='${{ github.ref_name }}' | |
name='${{ github.ref_name }}' | |
fi | |
echo "tag result: $tag - $name" | |
echo "::set-output name=tag::$tag" | |
echo "::set-output name=name::$name" | |
- name: run-vcpkg | |
uses: lukka/[email protected] # Option 2: specify 'latest' or 'latestrc' in the input version arguments: | |
- name: Build | |
run: | | |
sudo apt install -y ninja-build | |
tools/linux/ci.sh ${{ matrix.arch }} ${{ steps.tag.outputs.tag }} | |
- name: Upload artifact | |
uses: actions/[email protected] | |
with: | |
# Artifact name | |
name: yukihana-${{ matrix.arch }}.build | |
path: tmp/build | |
build-mac-x86: | |
name: Build MAC | |
runs-on: macos-13 | |
strategy: | |
matrix: | |
arch: ['x86_64'] | |
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/ | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: 'recursive' | |
- name: Generate TAG | |
id: Tag | |
run: | | |
tag='continuous' | |
name='Continuous Build' | |
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then | |
tag='${{ github.ref_name }}' | |
name='${{ github.ref_name }}' | |
fi | |
echo "tag result: $tag - $name" | |
echo "::set-output name=tag::$tag" | |
echo "::set-output name=name::$name" | |
- name: run-vcpkg | |
uses: lukka/[email protected] # Option 2: specify 'latest' or 'latestrc' in the input version arguments: | |
- name: Build | |
run: | | |
brew install ninja | |
tools/mac/ci.sh ${{ matrix.arch }} ${{ steps.tag.outputs.tag }} | |
- name: Upload artifact | |
uses: actions/[email protected] | |
with: | |
# Artifact name | |
name: yukihana-${{ matrix.arch }}.build | |
path: tmp/build | |
build-mac-arm64: | |
name: Build MAC | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
arch: ['arm64'] | |
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/ | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: 'recursive' | |
- name: Generate TAG | |
id: Tag | |
run: | | |
tag='continuous' | |
name='Continuous Build' | |
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then | |
tag='${{ github.ref_name }}' | |
name='${{ github.ref_name }}' | |
fi | |
echo "tag result: $tag - $name" | |
echo "::set-output name=tag::$tag" | |
echo "::set-output name=name::$name" | |
- name: run-vcpkg | |
uses: lukka/[email protected] # Option 2: specify 'latest' or 'latestrc' in the input version arguments: | |
- name: Build | |
run: | | |
brew install ninja | |
tools/mac/ci.sh ${{ matrix.arch }} ${{ steps.tag.outputs.tag }} | |
- name: Upload artifact | |
uses: actions/[email protected] | |
with: | |
# Artifact name | |
name: yukihana-${{ matrix.arch }}.build | |
path: tmp/build | |
upload: | |
name: Create release and upload artifacts | |
needs: | |
- build-windows | |
- build-linux | |
- build-mac-x86 | |
- build-mac-arm64 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download artifacts | |
uses: actions/download-artifact@v2 | |
- name: Inspect directory after downloading artifacts | |
run: ls -alFR | |
- name: Generate TAG | |
id: Tag | |
run: | | |
tag='continuous' | |
name='Continuous Build' | |
if [ 'true' == ${{ startsWith(github.ref, 'refs/tags/') }} ];then | |
tag='${{ github.ref_name }}' | |
name='${{ github.ref_name }}' | |
fi | |
echo "tag result: $tag - $name" | |
echo "::set-output name=tag::$tag" | |
echo "::set-output name=name::$name" | |
- name: Create release and upload artifacts | |
if: startsWith(github.ref, 'refs/heads/') | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
sudo apt install -y fuse | |
wget -q https://github.com/TheAssassin/pyuploadtool/releases/download/continuous/pyuploadtool-x86_64.AppImage | |
chmod +x pyuploadtool-x86_64.AppImage | |
./pyuploadtool-x86_64.AppImage \ | |
**build/*.dll \ | |
**build/*.so \ | |
**build/*.dylib | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
# note you'll typically need to create a personal access token | |
# with permissions to create releases in the other repo | |
name: ${{ steps.tag.outputs.name }} | |
tag_name: ${{ steps.tag.outputs.tag }} | |
files: | | |
**build/*.dll | |
**build/*.so | |
**build/*.dylib |