Skip to content

Update publish-dotnet-binaries.yml #35

Update publish-dotnet-binaries.yml

Update publish-dotnet-binaries.yml #35

name: Publish .NET Core binaries
on:
push:
branches:
- main
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
jobs:
publish:
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Get commit message
run: |
$COMMIT_MESSAGE = git log -1 --pretty=format:%s
Write-Host "::set-env name=COMMIT_MESSAGE::$COMMIT_MESSAGE"
#COMMIT_MESSAGE=$(git log -1 --pretty=format:%s)
#echo "::set-env name=COMMIT_MESSAGE::$COMMIT_MESSAGE"
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 8.0.x
- name: Creating Paths
run: |
md build
md release
- name: Restore dependencies
run: |
dotnet restore ./src/jsunmap.sln
- name: Build binaries
run: |
dotnet build ./src/jsunmap.sln --configuration Release
- name: Build win-x64
run: |
$RUNTIMES = @("win-x64","linux-x64","osx-x64","win-arm64","linux-arm64","osx-arm64")
foreach ($RUNTIME in $RUNTIMES) {
echo "building $RUNTIME"
dotnet publish ./src/jsunmap.sln --configuration Release --self-contained --runtime $RUNTIME --verbosity quiet -p:PublishTrimmed=true -o ./build/$RUNTIME
Compress-Archive -Path ./build/$RUNTIME -DestinationPath ./release/JsUnMap-$RUNTIME-$RUNTIME.zip
}
- name: Create release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.BUILD_KEY }}
with:
tag_name: v${{ github.run_number }}
release_name: Release v${{ github.run_number }}
body: |
Auto release.
${{ env.COMMIT_MESSAGE }}
draft: false
prerelease: false
- name: Upload release asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.BUILD_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: |
./release/JsUnMap-win-x64.zip
./release/JsUnMap-linux-x64.zip
./release/JsUnMap-osx-x64.zip
./release/JsUnMap-win-arm64.zip
./release/JsUnMap-linux-arm64.zip
./release/JsUnMap-osx-arm64.zip
asset_name: |
JsUnMap-win-x64.zip
JsUnMap-linux-x64.zip
JsUnMap-osx-x64.zip
JsUnMap-win-arm64.zip
JsUnMap-linux-arm64.zip
JsUnMap-osx-arm64.zip
asset_content_type: |
application/zip
application/zip
application/zip
application/zip
application/zip
application/zip