Skip to content

build(deps): bump actions/checkout from 4.0.0 to 4.1.0 (#99) #30

build(deps): bump actions/checkout from 4.0.0 to 4.1.0 (#99)

build(deps): bump actions/checkout from 4.0.0 to 4.1.0 (#99) #30

Workflow file for this run

name: Build and Release
on:
push:
branches: [ main ]
env:
configuration: Release
productNamespacePrefix: "ReactiveMarbles"
jobs:
build:
runs-on: windows-2022
environment:
name: release
outputs:
nbgv: ${{ steps.nbgv.outputs.SemVer2 }}
steps:
- name: Checkout
uses: actions/[email protected]
with:
fetch-depth: 0
lfs: true
- name: Install .NET 6
uses: actions/[email protected]
with:
dotnet-version: 6.0.x
- name: NBGV
id: nbgv
uses: dotnet/nbgv@master
with:
setAllVars: true
- name: NuGet Restore
run: dotnet restore
working-directory: src
- name: Build
run: dotnet build --configuration=${{ env.configuration }} --verbosity=minimal --no-restore
working-directory: src
- name: Pack
run: dotnet pack --configuration=${{ env.configuration }} --verbosity=minimal --no-restore
working-directory: src
- uses: nuget/setup-nuget@v1
name: Setup NuGet
# Decode the base 64 encoded pfx and save the Signing_Certificate
- name: Sign NuGet packages
shell: pwsh
run: |
$pfx_cert_byte = [System.Convert]::FromBase64String("${{ secrets.SIGNING_CERTIFICATE }}")
[IO.File]::WriteAllBytes("GitHubActionsWorkflow.pfx", $pfx_cert_byte)
$secure_password = ConvertTo-SecureString ${{ secrets.SIGN_CERTIFICATE_PASSWORD }} –asplaintext –force
Import-PfxCertificate -FilePath GitHubActionsWorkflow.pfx -Password $secure_password -CertStoreLocation Cert:\CurrentUser\My
nuget sign -Timestamper http://timestamp.digicert.com -CertificateFingerprint ${{ secrets.SIGN_CERTIFICATE_HASH }} **/*.nupkg
- name: Changelog
uses: glennawatson/[email protected]
id: changelog
- name: Create Release
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
tag_name: ${{ steps.nbgv.outputs.SemVer2 }}
release_name: ${{ steps.nbgv.outputs.SemVer2 }}
body: |
${{ steps.changelog.outputs.commitLog }}
- name: NuGet Push
env:
NUGET_AUTH_TOKEN: ${{ secrets.NUGET_API_KEY }}
SOURCE_URL: https://api.nuget.org/v3/index.json
run: |
dotnet nuget push -s ${{ env.SOURCE_URL }} -k ${{ env.NUGET_AUTH_TOKEN }} **/*.nupkg