🔧 Increase logging of GitVersion #147
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: Build and release | |
on: | |
# Dev | |
workflow_dispatch: | |
pull_request: | |
push: | |
# Preview | |
branches: [ main ] | |
# Stable | |
tags: [ "v*" ] | |
release: | |
types: | |
- published | |
env: | |
NET_SDK: '6.0.415' | |
jobs: | |
build: | |
name: "Build" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Checkout" | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # We need full history for GitVersion versioning | |
- name: "Setup .NET SDK" | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: ${{ env.NET_SDK }} | |
- name: "Build, test and bundle" | |
run: dotnet run --project build/orchestrator -- --target=CI-Build --configuration=Release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: "Test sample build system" | |
run: dotnet run --project src/Cake.Frosting.PleOps.Samples.BuildSystem | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: "Publish artifacts to CI" | |
uses: actions/upload-artifact@v3 | |
with: | |
name: "Artifacts" | |
retention-days: 7 | |
path: | | |
build/artifacts/ | |
!build/artifacts/docs | |
- name: Publish docs artifact to CI | |
uses: actions/upload-pages-artifact@v2 | |
with: | |
path: build/artifacts/docs | |
# Preview release on push to main only | |
# Stable release on version tag push only | |
deploy: | |
name: "Deploy" | |
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v') | |
needs: "build" | |
runs-on: ubuntu-latest | |
# Grant GITHUB_TOKEN the permissions required to make a Pages deployment | |
permissions: | |
pages: write # to deploy to Pages | |
id-token: write # to verify the deployment originates from an appropriate source | |
# Deploy to the github-pages environment | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
env: | |
# Needed only for Azure DevOps Artifacts due to its weird auth method. | |
PREVIEW_NUGET_FEED: 'https://pkgs.dev.azure.com/benito356/NetDevOpsTest/_packaging/PleOps/nuget/v3/index.json' | |
steps: | |
- name: "Checkout" | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # We need full history for GitVersion versioning | |
- name: "Download artifacts" | |
uses: actions/download-artifact@v3 | |
with: | |
name: "Artifacts" | |
path: "./build/artifacts/" | |
- name: "Setup .NET SDK" | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: ${{ env.NET_SDK }} | |
# Weird way to authenticate in Azure DevOps Artifacts | |
# Then, we need to setup VSS_NUGET_EXTERNAL_FEED_ENDPOINTS | |
- name: "Install Azure Artifacts Credential Provider" | |
run: wget -qO- https://aka.ms/install-artifacts-credprovider.sh | bash | |
- name: "Deploy artifacts" | |
run: dotnet run --project build/orchestrator -- --target=CI-Deploy | |
env: | |
GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }} | |
STABLE_NUGET_FEED_TOKEN: ${{ secrets.STABLE_NUGET_FEED_TOKEN }} | |
PREVIEW_NUGET_FEED_TOKEN: "az" # Dummy, auth via below env var | |
VSS_NUGET_EXTERNAL_FEED_ENDPOINTS: '{"endpointCredentials": [{"endpoint":"${{ env.PREVIEW_NUGET_FEED }}", "username":"", "password":"${{ secrets.NUGET_PREVIEW_TOKEN }}"}]}' | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v2 |