Skip to content

deps: update dependency fluentassertions to v6.12.0 (#101) #88

deps: update dependency fluentassertions to v6.12.0 (#101)

deps: update dependency fluentassertions to v6.12.0 (#101) #88

name: release-please
on:
push:
branches: [main]
jobs:
release_please:
name: Release Please
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
actions: write
statuses: write
steps:
- id: release
uses: GoogleCloudPlatform/release-please-action@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
command: manifest
- id: transform
name: Massage output
env:
PATHS_RELEASED: ${{ steps.release.outputs.paths_released }}
TAG_NAME: ${{ steps.release.outputs.tag_name }}
UPLOAD_URL: ${{ steps.release.outputs.upload_url }}
run: |
ANY=$(echo $PATHS_RELEASED | jq '. | length | . > 0')
echo "ANY: $ANY"
echo "TAG_NAME: '$TAG_NAME'"
echo "UPLOAD_URL: '$UPLOAD_URL'"
echo "::set-output name=any::$ANY"
- name: Print outputs
env:
ANY: ${{ steps.transform.outputs.any }}
run: |
echo "any: '$ANY'"
outputs:
any_released: ${{ steps.transform.outputs.any }}
tag_name: ${{ steps.release.outputs.tag_name }}
upload_url: ${{ steps.release.outputs.upload_url }}
build:
name: Build
runs-on: ubuntu-latest
if: fromJSON(needs.release_please.outputs.any_released)
needs:
- release_please
permissions:
contents: write
concurrency:
group: release
steps:
- name: ⏬ Checkout
uses: actions/checkout@v3
- name: 🔽 Install dotnet
uses: actions/setup-dotnet@v3
- name: 🔍 Print dotnet info
run: dotnet --info
- name: 🔽 Restore
run: dotnet restore -p:Configuration=Release
- name: 🔨 Build
run: dotnet build --configuration Release
- name: 📦 Pack
run: dotnet pack --configuration Release --no-build
- name: 🔼 Upload packages as artifact
uses: actions/upload-artifact@v3
with:
name: nuget
path: artifacts/nuget/
- name: 🔼 Upload global.json as artifact
uses: actions/upload-artifact@v3
with:
name: global-json
path: global.json
- name: 🔼 Upload packages as github release asset
if: needs.release_please.outputs.upload_url != ''
uses: shogo82148/actions-upload-release-asset@v1
with:
upload_url: ${{ needs.release_please.outputs.upload_url }}
asset_path: artifacts/nuget/*
githubpkg:
name: Push to GitHub Packages
runs-on: ubuntu-latest
if: fromJSON(needs.release_please.outputs.any_released)
environment: release
needs:
- release_please
- build
permissions:
packages: write
steps:
- name: 🔽 Download nuget artifact
uses: actions/download-artifact@v3
with:
name: nuget
path: nuget
- name: 🔽 Download global-json artifact
uses: actions/download-artifact@v3
with:
name: global-json
- name: 🔽 Install dotnet
uses: actions/setup-dotnet@v3
- name: 🔼 Publish package to nuget
run: dotnet nuget push --force-english-output --api-key '${{ secrets.GITHUB_TOKEN }}' --source 'https://nuget.pkg.github.com/YoloDev/index.json' --skip-duplicate "nuget/*.nupkg"
nuget:
name: Push to Nuget
runs-on: ubuntu-latest
if: fromJSON(needs.release_please.outputs.any_released)
environment: nuget
needs:
- release_please
- build
- githubpkg
steps:
- name: 🔽 Download nuget artifact
uses: actions/download-artifact@v3
with:
name: nuget
path: nuget
- name: 🔽 Download global-json artifact
uses: actions/download-artifact@v3
with:
name: global-json
- name: 🔽 Install dotnet
uses: actions/setup-dotnet@v3
- name: 🔼 Publish package to nuget
run: dotnet nuget push --force-english-output --api-key '${{ secrets.NUGET_API_KEY }}' --source '${{ secrets.NUGET_FEED }}' --skip-duplicate "nuget/*.nupkg"