mirror of
https://github.com/velopack/velopack.git
synced 2025-10-25 15:19:22 +00:00
86 lines
2.5 KiB
YAML
86 lines
2.5 KiB
YAML
name: Build Packages
|
|
on:
|
|
workflow_call:
|
|
|
|
jobs:
|
|
package:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Setup Job Environment
|
|
uses: ./.github/actions/job-setup
|
|
with:
|
|
update-dotnet: true
|
|
- name: Download Rust Artifacts
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
path: target/release
|
|
pattern: rust-*
|
|
merge-multiple: true
|
|
- name: Build .NET
|
|
run: dotnet build -c Release /p:PackRustAssets=true /p:ContinuousIntegrationBuild=true
|
|
- name: Build lib-nodejs
|
|
working-directory: src/lib-nodejs
|
|
run: |
|
|
npm install
|
|
npm run build
|
|
- name: Write Version File
|
|
run: echo $NBGV_NuGetPackageVersion > version.txt
|
|
- name: Upload version file as artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: build-version
|
|
path: version.txt
|
|
- name: Upload Package Artifacts
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: packages
|
|
path: build/Release/*nupkg
|
|
- name: Rearrange Artifacts
|
|
run: |
|
|
mkdir src/lib-nodejs/lib/native
|
|
mv target/release/*.node src/lib-nodejs/lib/native/
|
|
|
|
mkdir lib-c
|
|
mkdir lib-c/lib
|
|
mkdir lib-c/lib-static
|
|
mkdir lib-c/include
|
|
|
|
mv target/release/*.so lib-c/lib/
|
|
mv target/release/*.dylib lib-c/lib/
|
|
mv target/release/*.dll lib-c/lib/
|
|
mv target/release/*.dll.lib lib-c/lib/
|
|
mv target/release/*.a lib-c/lib-static/
|
|
mv target/release/*.lib lib-c/lib-static/
|
|
|
|
cp src/lib-cpp/include/* lib-c/include/
|
|
|
|
mkdir bin-core
|
|
mv target/release/* bin-core/
|
|
- name: Upload Core Bins
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: bin-core
|
|
path: bin-core/*
|
|
- name: Upload lib-c
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: lib-c
|
|
path: lib-c/*
|
|
- name: Pack lib-nodejs
|
|
working-directory: src/lib-nodejs
|
|
run: npm pack
|
|
- name: Pack lib-rust
|
|
run: cargo package -p velopack --allow-dirty
|
|
- name: Upload lib-nodejs package
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: lib-nodejs
|
|
path: src/lib-nodejs/velopack-*.tgz
|
|
- name: Upload lib-rust package
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: lib-rust
|
|
path: target/package/velopack-*.crate |