Fix rocket.surgery.nuke Update #4184
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
# ------------------------------------------------------------------------------ | |
# <auto-generated> | |
# | |
# This code was generated. | |
# | |
# - To turn off auto-generation set: | |
# | |
# [GitHubActionsSteps (AutoGenerate = false)] | |
# | |
# - To trigger manual generation invoke: | |
# | |
# nuke --generate-configuration GitHubActions_ci --host GitHubActions | |
# | |
# </auto-generated> | |
# ------------------------------------------------------------------------------ | |
name: ci | |
on: | |
push: | |
branches: | |
- 'master' | |
- 'main' | |
- 'next' | |
tags: | |
- 'v*' | |
paths-ignore: | |
- '.codecov.yml' | |
- '.editorconfig' | |
- '.gitattributes' | |
- '.gitignore' | |
- '.gitmodules' | |
- '.lintstagedrc.js' | |
- '.prettierignore' | |
- '.prettierrc' | |
- 'LICENSE' | |
- 'nukeeper.settings.json' | |
- 'omnisharp.json' | |
- 'package-lock.json' | |
- 'package.json' | |
- 'Readme.md' | |
- '.github/dependabot.yml' | |
- '.github/labels.yml' | |
- '.github/release.yml' | |
- '.github/renovate.json' | |
pull_request: | |
branches: | |
- 'master' | |
- 'main' | |
- 'next' | |
paths-ignore: | |
- '.codecov.yml' | |
- '.editorconfig' | |
- '.gitattributes' | |
- '.gitignore' | |
- '.gitmodules' | |
- '.lintstagedrc.js' | |
- '.prettierignore' | |
- '.prettierrc' | |
- 'LICENSE' | |
- 'nukeeper.settings.json' | |
- 'omnisharp.json' | |
- 'package-lock.json' | |
- 'package.json' | |
- 'Readme.md' | |
- '.github/dependabot.yml' | |
- '.github/labels.yml' | |
- '.github/release.yml' | |
- '.github/renovate.json' | |
permissions: | |
actions: read | |
checks: read | |
contents: read | |
deployments: read | |
id-token: none | |
issues: write | |
discussions: none | |
packages: none | |
pages: none | |
pull-requests: write | |
repository-projects: none | |
security-events: none | |
statuses: write | |
jobs: | |
build: | |
env: | |
NUGET_PACKAGES: '${{ github.workspace }}/.nuget/packages' | |
permissions: | |
actions: read | |
checks: write | |
contents: read | |
deployments: read | |
id-token: none | |
issues: write | |
discussions: none | |
packages: none | |
pages: none | |
pull-requests: write | |
repository-projects: none | |
security-events: none | |
statuses: write | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: | |
clean: 'false' | |
fetch-depth: '0' | |
- name: Restore NuGet Cache | |
id: restore-nuget-cache | |
uses: actions/cache/restore@v4 | |
with: | |
path: '${{ github.workspace }}/.nuget/packages' | |
key: "${{ runner.os }}-nuget-${{ hashFiles('**/Directory.Packages.props') }}-${{ hashFiles('**/dotnet-tools.json') }}" | |
- name: π¨ Use .NET Core 6.0 SDK | |
uses: actions/[email protected] | |
with: | |
dotnet-version: '6.0.x' | |
- name: π¨ Use .NET Core 8.0 SDK | |
uses: actions/[email protected] | |
with: | |
dotnet-version: '8.0.x' | |
- name: π¨ Use .NET Core 9.0 SDK | |
uses: actions/[email protected] | |
with: | |
dotnet-version: '9.0.x' | |
- name: π dotnet workload restore | |
continue-on-error: true | |
run: | | |
dotnet workload restore | |
- name: βοΈ dotnet tool restore | |
run: | | |
dotnet tool restore | |
- name: π Restore | |
id: restore | |
run: | | |
dotnet nuke --target DotnetCoreRestore Restore | |
- name: Update NuGet Cache | |
if: always() && steps.restore-nuget-cache.outputs.cache-hit != 'true' | |
uses: actions/cache/save@v4 | |
with: | |
key: "${{ runner.os }}-nuget-${{ hashFiles('**/Directory.Packages.props') }}-${{ hashFiles('**/dotnet-tools.json') }}" | |
path: '${{ github.workspace }}/.nuget/packages' | |
- name: βοΈ Build | |
id: build | |
run: | | |
dotnet .build/bin/Debug/.build.dll --target DotnetCoreBuild Build | |
- name: π¨ Test | |
id: test | |
run: | | |
dotnet .build/bin/Debug/.build.dll --target DotnetCoreTest Test CollectCodeCoverage GenerateCodeCoverageReportCobertura GenerateCodeCoverageBadges GenerateCodeCoverageSummary GenerateCodeCoverageReport | |
- name: π¦ Pack | |
id: pack | |
run: | | |
dotnet .build/bin/Debug/.build.dll --target DotnetCorePack Pack --skip Build | |
- name: Npm install | |
working-directory: vscode-testextension | |
run: | | |
npm ci | |
- name: π¨ Vscode extension tests | |
uses: coactions/setup-xvfb@v1 | |
with: | |
run: 'npm run test' | |
working-directory: 'vscode-testextension' | |
- name: πΊ Publish logs (${{ matrix.os }}) | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'logs-${{ matrix.os }}' | |
path: 'artifacts/logs/' | |
- name: πΊ Publish test data (${{ matrix.os }}) | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'test data-${{ matrix.os }}' | |
path: 'artifacts/test/' | |
- name: π Publish Test Results | |
if: always() && matrix.os == 'macos-latest' | |
uses: EnricoMi/publish-unit-test-result-action/macos@v2 | |
with: | |
files: 'artifacts/test/**/*.trx' | |
- name: πΊ Publish coverage data (${{ matrix.os }}) | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'coverage-${{ matrix.os }}' | |
path: 'coverage/' | |
- name: π Publish Coverage Comment | |
if: always() && github.event_name == 'pull_request' | |
continue-on-error: true | |
uses: marocchino/sticky-pull-request-comment@v2 | |
with: | |
header: 'Coverage' | |
path: 'coverage/summary/SummaryGithub.md' | |
GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}' | |
- name: π Publish Codecov Coverage | |
if: always() && (github.event_name != 'pull_request' && github.event_name != 'pull_request_target') || ((github.event_name == 'pull_request' || github.event_name == 'pull_request_target') && github.event.pull_request.user.login != 'renovate[bot]' && github.event.pull_request.user.login != 'dependabot[bot]') | |
continue-on-error: true | |
uses: codecov/[email protected] | |
with: | |
name: 'actions-${{ matrix.os }}' | |
- name: πΊ Publish NuGet Packages (${{ matrix.os }}) | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'nuget-${{ matrix.os }}' | |
path: 'artifacts/nuget/' | |
Merge: | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Merge Artifacts | |
uses: actions/upload-artifact/merge@v4 | |
with: | |
name: nuget | |
pattern: nuget-* | |
Publish: | |
needs: Merge | |
uses: RocketSurgeonsGuild/actions/.github/workflows/[email protected] | |
secrets: | |
RSG_NUGET_API_KEY: '${{ secrets.RSG_NUGET_API_KEY }}' | |
RSG_AZURE_DEVOPS: '${{ secrets.RSG_AZURE_DEVOPS }}' |