fix ci #82
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
name: .NET | |
on: | |
push: | |
branches: [ master ] | |
env: | |
DOTNET_SDK_VERSION: '8.0.x' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup .NET | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: ${{ env.DOTNET_SDK_VERSION }} | |
- name: Build | |
run: dotnet build | |
publish-windows: | |
runs-on: windows-latest | |
needs: build | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup .NET | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: ${{ env.DOTNET_SDK_VERSION }} | |
- name: Publish Windows x64 Release | |
run: | | |
dotnet publish SysuSurf/SysuSurf.csproj -c Release -r win-x64 -o WindowsBuildx64 /p:PublishAot=true | |
del WindowsBuildx64\*.pdb | |
del WindowsBuildx64\*.json | |
copy config.json WindowsBuildx64\config.json | |
- name: Upload Windows x64 artifact | |
uses: actions/upload-artifact@v1.0.0 | |
with: | |
name: Windows_x64 | |
path: WindowsBuildx64 | |
- name: Publish Windows Arm64 Release | |
run: | | |
dotnet publish SysuSurf/SysuSurf.csproj -c Release -r win-arm64 -o WindowsBuildArm64 /p:PublishAot=true /p:CrossCompileWindowsArm64=true | |
del WindowsBuildArm64\*.pdb | |
del WindowsBuildArm64\*.json | |
copy config.json WindowsBuildArm64\config.json | |
- name: Upload Windows Arm64 artifact | |
uses: actions/upload-artifact@v1.0.0 | |
with: | |
name: Windows_Arm64 | |
path: WindowsBuildArm64 | |
publish-linux-x64: | |
runs-on: ubuntu-latest | |
needs: build | |
container: | |
image: mcr.microsoft.com/dotnet/sdk:8.0-alpine | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Publish Linux x64 Release | |
run: | | |
apk --no-cache add clang libpcap-dev cmake krb5-dev zlib-dev binutils build-base zlib-static | |
dotnet publish SysuSurf/SysuSurf.csproj -c Release -r linux-x64 -o LinuxBuildx64 /p:PublishAot=true | |
rm LinuxBuildx64/*.pdb LinuxBuildx64/*.json | |
cp config.json LinuxBuildx64/config.json | |
- name: Upload Linux x64 artifact | |
uses: actions/upload-artifact@v1.0.0 | |
with: | |
name: Linux_x64 | |
path: LinuxBuildx64 | |
publish-linux-arm64: | |
runs-on: ubuntu-latest | |
needs: build | |
container: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-cross-arm64-alpine | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup .NET | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: ${{ env.DOTNET_SDK_VERSION }} | |
- name: Publish Native Linux ARM64 Release | |
run: | | |
apk --no-cache add clang libpcap-dev cmake krb5-dev zlib-dev binutils build-base zlib-static | |
dotnet publish SysuSurf/SysuSurf.csproj -c Release -r linux-arm64 -o LinuxBuildArm64 /p:PublishAot=true /p:CrossCompileLinuxArm64=true /p:CppCompilerAndLinker=clang /p:SysRoot=/crossrootfs/arm64 | |
rm LinuxBuildArm64/*.pdb LinuxBuildArm64/*.json | |
aarch64-linux-gnu-strip LinuxBuildArm64/SysuSurf | |
cp config.json LinuxBuildArm64/config.json | |
- name: Upload Linux ARM64 native artifact | |
uses: actions/upload-artifact@v1.0.0 | |
with: | |
name: Linux_ARM64 | |
path: LinuxBuildArm64 | |
publish-macos: | |
runs-on: macos-latest | |
needs: build | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup .NET | |
uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: ${{ env.DOTNET_SDK_VERSION }} | |
- name: Publish macOS x64 Release | |
run: | | |
dotnet publish SysuSurf/SysuSurf.csproj -c Release -r osx-x64 -o macOSBuildx64 | |
rm -f macOSBuildx64/*.pdb macOSBuildx64/*.json | |
strip macOSBuildx64/SysuSurf | |
cp config.json macOSBuildx64/config.json | |
- name: Upload macOS x64 artifact | |
uses: actions/upload-artifact@v1.0.0 | |
with: | |
name: macOS_x64 | |
path: macOSBuildx64 |