Skip to content

change Build.cs

change Build.cs #104

Workflow file for this run

name: "Build"
on:
push:
branches:
- master
paths-ignore:
- '**/*.md'
- '**/*.gitignore'
- '**/*.gitattributes'
jobs:
Libs:
name: Build and deploy NuGet
runs-on: ubuntu-latest
env:
FeedzApiKey: ${{ secrets.FEEDZ_TOKEN }}
DOTNET_CLI_TELEMETRY_OPTOUT: 1
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
DOTNET_GENERATE_ASPNET_CERTIFICATE: false
DOTNET_ADD_GLOBAL_TOOLS_TO_PATH: false
DOTNET_MULTILEVEL_LOOKUP: 0
DOTNET_SYSTEM_CONSOLE_ALLOW_ANSI_COLOR_REDIRECTION: true
TERM: xterm
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.100
- uses: actions/cache@v3
with:
path: ~/.nuget/packages
key: ${{ runner.os }}-nuget-${{ hashFiles('**/*.csproj') }}
restore-keys: |
${{ runner.os }}-nuget-
- name: set script permissions
run: chmod +x ./build.sh
- name: Run './build.cmd'
run: ./build.sh LibsPush
env:
NuGetApiKey: ${{ secrets.NUGET_API_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
build-desktop-app:
name: "Build HolyClient.Desktop"
runs-on: ubuntu-latest
needs: [Libs]
env:
DOTNET_CLI_TELEMETRY_OPTOUT: 1
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
DOTNET_GENERATE_ASPNET_CERTIFICATE: false
DOTNET_ADD_GLOBAL_TOOLS_TO_PATH: false
DOTNET_MULTILEVEL_LOOKUP: 0
DOTNET_SYSTEM_CONSOLE_ALLOW_ANSI_COLOR_REDIRECTION: true
TERM: xterm
strategy:
matrix:
target: [win-x86, win-x64, linux-x64, linux-arm, linux-arm64, osx-x64, osx-arm64]
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.100
- name: Restore NuGet
uses: actions/cache@v3
with:
path: ~/.nuget/packages
key: ${{ runner.os }}-nuget-${{ hashFiles('**/*.csproj') }}
restore-keys: |
${{ runner.os }}-nuget-
- name: set script permissions
run: chmod +x ./build.sh
- name: Run './build.cmd'
run: ./build.sh PublishApp -Runtime ${{ matrix.target }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: HolyClient.Desktop-${{matrix.target}}
path: .artifacts
CreateRelease:
name: "CreateRelease"
needs: [build-desktop-app]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.100
- name: Restore NuGet
uses: actions/cache@v3
with:
path: ~/.nuget/packages
key: ${{ runner.os }}-nuget-${{ hashFiles('**/*.csproj') }}
restore-keys: |
${{ runner.os }}-nuget-
- name: Download All Artifacts
uses: actions/[email protected]
with:
path: .artifacts
pattern: HolyClient.Desktop-*
merge-multiple: true
- name: set script permissions
run: chmod +x ./build.sh
- name: Run './build.cmd'
run: ./build.sh CreateRelease
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: ls -R .publish
#dotnet.exe publish ~\Minecraft-Holy-Client\Minecraft-Holy-Client\src\Platforms\HolyClient.Desktop\HolyClient.Desktop.csproj --no-restore --no-build /property:DebugType=None /property:DebugSymbols=False /property:PublishProfile=FolderProfile /property:PublishDir=~\Minecraft-Holy-Client\Minecraft-Holy-Client\.artifacts