Skip to content

NuGet Publishing Infrastructure #9

NuGet Publishing Infrastructure

NuGet Publishing Infrastructure #9

Workflow file for this run

# SPDX-FileCopyrightText: 2025 Cesium contributors <https://github.com/ForNeVeR/Cesium>
#
# SPDX-License-Identifier: MIT
name: Release
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:
schedule:
- cron: '0 0 * * 0'
jobs:
main:
runs-on: ${{ matrix.environment }}
strategy:
matrix:
environment:
- macos-latest
- ubuntu-latest
- windows-latest
fail-fast: false
env:
DOTNET_NOLOGO: 1
DOTNET_CLI_TELEMETRY_OPTOUT: 1
NUGET_PACKAGES: ${{ github.workspace }}/.github/nuget-packages
steps:
- name: πŸ“ Fetch Sources πŸ“
uses: actions/checkout@v4
- name: πŸ’‘ Perform Common Steps πŸ’‘
uses: ./.github/workflows/perform-common-steps
- name: πŸ“¦ Pack Everything πŸ“¦
shell: bash
run: dotnet nuke PackAllCompilerRuntimeSpecificBundles PackCompilerNuPkg PackSdk PackTemplates --configuration Release
- id: version
name: πŸ‘€ Get Version πŸ‘€
shell: pwsh
run: echo "version=$(scripts/Get-Version.ps1 -RefName $env:GITHUB_REF)" >> $env:GITHUB_OUTPUT
- name: βœ… Upload Compiler βœ…
uses: actions/upload-artifact@v4
if: runner.os == 'Linux'
with:
if-no-files-found: 'error'
name: Compiler
path: |-
./artifacts/package/release/Cesium.Compiler.${{ steps.version.outputs.version }}.nupkg
./artifacts/package/release/Cesium.Compiler.${{ steps.version.outputs.version }}.snupkg
./artifacts/package/release/Cesium.Compiler.linux-arm64.${{ steps.version.outputs.version }}.zip
./artifacts/package/release/Cesium.Compiler.linux-x64.${{ steps.version.outputs.version }}.zip
./artifacts/package/release/Cesium.Compiler.osx-arm64.${{ steps.version.outputs.version }}.zip
./artifacts/package/release/Cesium.Compiler.osx-x64.${{ steps.version.outputs.version }}.zip
./artifacts/package/release/Cesium.Compiler.win-arm64.${{ steps.version.outputs.version }}.zip
./artifacts/package/release/Cesium.Compiler.win-x64.${{ steps.version.outputs.version }}.zip
./artifacts/package/release/Cesium.Compiler.win-x86.${{ steps.version.outputs.version }}.zip
- name: βœ… Upload Runtime βœ…
uses: actions/upload-artifact@v4
if: runner.os == 'Linux'
with:
if-no-files-found: 'error'
name: Runtime
path: |-
./artifacts/package/release/Cesium.Runtime.${{ steps.version.outputs.version }}.nupkg
./artifacts/package/release/Cesium.Runtime.${{ steps.version.outputs.version }}.snupkg
- name: βœ… Upload SDK βœ…
uses: actions/upload-artifact@v4
if: runner.os == 'Linux'
with:
if-no-files-found: 'error'
name: SDK
path: |-
./artifacts/package/release/Cesium.Sdk.${{ steps.version.outputs.version }}.nupkg
./artifacts/package/release/Cesium.Sdk.${{ steps.version.outputs.version }}.snupkg
- name: βœ… Upload Templates βœ…
uses: actions/upload-artifact@v4
if: runner.os == 'Linux'
with:
if-no-files-found: 'error'
name: Templates
path: |-
./artifacts/package/release/Cesium.Templates.${{ steps.version.outputs.version }}.nupkg
./artifacts/package/release/Cesium.Templates.${{ steps.version.outputs.version }}.snupkg
#- name: βœ… Publish to NuGet βœ…
# # TODO