From 46092d7835ad84b5fc8cf1f88c7674158808c695 Mon Sep 17 00:00:00 2001 From: Daniel Cazzulino Date: Tue, 30 Mar 2021 05:15:14 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=96=86=20Apply=20kzu/oss=20template=20via?= =?UTF-8?q?=20dotnet-file?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/FUNDING.yml | 2 +- .github/workflows/changelog.yml | 37 ++++++++ .github/workflows/dotnet-file.yml | 58 ++++++++++++ .github/workflows/pages.yml | 2 +- .github/workflows/publish.yml | 40 ++++++++ .github/workflows/release-artifacts.yml | 49 ++++++++++ .github/workflows/release-notes.yml | 56 +++++++++++ .github/workflows/sponsors.ps1 | 59 ++++++++++++ .github/workflows/sponsors.yml | 25 +++++ .github/workflows/tag.yml | 51 ---------- .github_changelog_generator | 9 +- .netconfig | 94 ++++++++++++++----- NuGetizer.sln | 9 +- src/Directory.Build.props | 1 + src/Directory.Build.targets | 6 +- src/NuGetizer.Tests/CreatePackageTests.cs | 6 +- src/NuGetizer.Tests/NuGetizer.Tests.csproj | 2 + .../Scenarios/Directory.Build.props | 2 +- 18 files changed, 422 insertions(+), 86 deletions(-) create mode 100644 .github/workflows/changelog.yml create mode 100644 .github/workflows/dotnet-file.yml create mode 100644 .github/workflows/publish.yml create mode 100644 .github/workflows/release-artifacts.yml create mode 100644 .github/workflows/release-notes.yml create mode 100644 .github/workflows/sponsors.ps1 create mode 100644 .github/workflows/sponsors.yml delete mode 100644 .github/workflows/tag.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index a2e1802f..a105ac56 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1 +1 @@ -github: devlooped \ No newline at end of file +github: devlooped diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 00000000..5bf5c0d5 --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1,37 @@ +ο»Ώname: changelog +on: + release: + types: [released] + +env: + GH_TOKEN: ${{ secrets.GH_TOKEN }} + +jobs: + changelog: + runs-on: ubuntu-latest + steps: + - name: πŸ” GH_TOKEN + if: env.GH_TOKEN == '' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: echo "GH_TOKEN=${GITHUB_TOKEN}" >> $GITHUB_ENV + + - name: 🀘 checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + ref: main + token: ${{ env.GH_TOKEN }} + + - name: βš™ changelog + uses: faberNovel/github-changelog-generator-action@master + with: + options: --token ${{ secrets.GITHUB_TOKEN }} --o changelog.md + + - name: πŸš€ changelog + run: | + git config --local user.name github-actions + git config --local user.email github-actions@github.com + git add changelog.md + git commit -m "πŸ–‰ Update changelog with ${GITHUB_REF#refs/*/}" + git push \ No newline at end of file diff --git a/.github/workflows/dotnet-file.yml b/.github/workflows/dotnet-file.yml new file mode 100644 index 00000000..06c38c4d --- /dev/null +++ b/.github/workflows/dotnet-file.yml @@ -0,0 +1,58 @@ +ο»Ώ# Synchronizes .netconfig-configured files with dotnet-file +name: dotnet-file +on: + schedule: + - cron: "0 0 * * *" + push: + branches: [ 'dotnet-file' ] + +env: + DOTNET_NOLOGO: true + GH_TOKEN: ${{ secrets.GH_TOKEN }} + +jobs: + sync: + runs-on: windows-latest + steps: + - name: πŸ” GH_TOKEN + if: env.GH_TOKEN == '' + shell: bash + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: echo "GH_TOKEN=${GITHUB_TOKEN}" >> $GITHUB_ENV + + - name: 🀘 checkout + uses: actions/checkout@v2 + with: + fetch-depth: 0 + ref: main + token: ${{ env.GH_TOKEN }} + + - name: πŸ”„ sync + run: | + dotnet tool update -g dotnet-gcm + dotnet gcm store --protocol=https --host=github.com --username=$env:GITHUB_ACTOR --password=$env:GH_TOKEN + gh auth status + + dotnet tool update -g dotnet-file + dotnet file sync -c:$env:TEMP\dotnet-file.md + if (test-path $env:TEMP\dotnet-file.md) { + echo 'CHANGES<> $env:GITHUB_ENV + cat $env:TEMP\dotnet-file.md >> $env:GITHUB_ENV + echo 'EOF' >> $env:GITHUB_ENV + cat $env:TEMP\dotnet-file.md + } else { + echo 'No changelog was generated' + } + + - name: ✍ pull request + uses: peter-evans/create-pull-request@v3 + with: + base: main + branch: dotnet-file-sync + commit-message: Bump files with dotnet-file sync + + ${{ env.CHANGES }} + title: "Bump files with dotnet-file sync" + body: ${{ env.CHANGES }} + token: ${{ env.GH_TOKEN }} diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index eeec520d..eea56019 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -32,7 +32,7 @@ jobs: git add -A git config --local user.email "hello@clarius.org" git config --local user.name "GitHub Action" - git commit -m "Publish ${GITHUB_REPOSITORY}@${GITHUB_SHA:0:9}" + git commit -m "Publish pages from ${GITHUB_REPOSITORY}@${GITHUB_SHA:0:9}" - name: πŸš€ push uses: ad-m/github-push-action@v0.6.0 diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..f1e48671 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,40 @@ +ο»Ώ# Builds a final release version and pushes to nuget.org +# whenever a release is published. +# Requires: secrets.NUGET_API_KEY + +name: publish +on: + release: + types: [released] + +env: + DOTNET_NOLOGO: true + Configuration: Release + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - name: 🀘 checkout + uses: actions/checkout@v2 + with: + submodules: recursive + fetch-depth: 0 + + - name: πŸ™ build + run: dotnet build -m:1 -bl:build.binlog -p:version=${GITHUB_REF#refs/*/v} -p:RepositoryBranch=${GITHUB_REF#refs/*/} + + - name: πŸ§ͺ test + run: dotnet test --no-build -m:1 + + - name: πŸ“¦ pack + run: dotnet pack -m:1 -bl:pack.binlog -p:version=${GITHUB_REF#refs/*/v} -p:RepositoryBranch=${GITHUB_REF#refs/*/} + + - name: πŸ”Ό logs + if: ${{ always() }} + uses: actions/upload-artifact@v2 + with: + path: '**/*.binlog' + + - name: πŸš€ nuget + run: dotnet nuget push ./bin/**/*.nupkg -s https://api.nuget.org/v3/index.json -k ${{secrets.NUGET_API_KEY}} --skip-duplicate diff --git a/.github/workflows/release-artifacts.yml b/.github/workflows/release-artifacts.yml new file mode 100644 index 00000000..9f965268 --- /dev/null +++ b/.github/workflows/release-artifacts.yml @@ -0,0 +1,49 @@ +# Builds a release version of the project and uploads +# as artifacts of the release for verification/history + +name: release-artifacts +on: + release: + types: [published] + +jobs: + release-artifacts: + runs-on: ubuntu-latest + steps: + - name: 🀘 checkout + uses: actions/checkout@v2 + with: + submodules: recursive + fetch-depth: 0 + + - name: 🏷 current + run: echo "CURRENT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + + - name: πŸ™ build + run: dotnet build -m:1 -bl:build.binlog -p:version=${GITHUB_REF#refs/*/v} -p:RepositoryBranch=${GITHUB_REF#refs/*/} + + - name: πŸ§ͺ test + run: dotnet test --no-build -m:1 + + - name: πŸ“¦ pack + run: dotnet pack -m:1 -bl:pack.binlog -p:version=${GITHUB_REF#refs/*/v} -p:RepositoryBranch=${GITHUB_REF#refs/*/} + + - name: πŸ”Ό logs + if: ${{ always() }} + uses: actions/upload-artifact@v2 + with: + path: '**/*.binlog' + + - name: πŸ”½ gh + run: | + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 + sudo apt-add-repository https://cli.github.com/packages + sudo apt update + sudo apt install gh + + - name: πŸ”Ό artifacts + shell: pwsh + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gci .\bin -Recurse -Filter *.nupkg | %{ gh release upload --clobber $env:CURRENT_TAG $_ } \ No newline at end of file diff --git a/.github/workflows/release-notes.yml b/.github/workflows/release-notes.yml new file mode 100644 index 00000000..5781dd64 --- /dev/null +++ b/.github/workflows/release-notes.yml @@ -0,0 +1,56 @@ +# Updates a release with release notes +name: release-notes + +on: + release: + types: [published] + +jobs: + release-notes: + runs-on: ubuntu-latest + steps: + - name: 🀘 checkout + uses: actions/checkout@v2 + with: + submodules: recursive + fetch-depth: 0 + + - name: 🏷 current + run: echo "CURRENT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + - name: 🏷 since + run: echo "SINCE_TAG=$(git describe --abbrev=0 --tags $(git rev-list --tags --skip=1 --max-count=1))" >> $GITHUB_ENV + + - name: βš™ changelog + uses: faberNovel/github-changelog-generator-action@master + if: env.SINCE_TAG != '' + with: + options: --token ${{ secrets.GITHUB_TOKEN }} --since-tag ${{ env.SINCE_TAG }} --o changelog.md + + - name: βš™ changelog + uses: faberNovel/github-changelog-generator-action@master + if: env.SINCE_TAG == '' + with: + options: --token ${{ secrets.GITHUB_TOKEN }} --o changelog.md + + - name: πŸ–‰ release + shell: pwsh + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + $id = iwr "$env:GITHUB_API_URL/repos/$env:GITHUB_REPOSITORY/releases/tags/$env:CURRENT_TAG" | + select -ExpandProperty Content | + ConvertFrom-Json | + select -ExpandProperty id + + $notes = (Get-Content .\changelog.md | where { !($_ -like '\*') } | %{ $_.replace('\', '\\') }) -join '\n' + $headers = @{ 'Accept'='application/vnd.github.v3+json;charset=utf-8'; 'Authorization' = "bearer $env:GITHUB_TOKEN" } + $body = '{ "body":"' + $notes + '" }' + + # ensure we can convert to json + $body | ConvertFrom-Json | ConvertTo-Json + + # patch & render response nicely + iwr -Body $body "$env:GITHUB_API_URL/repos/$env:GITHUB_REPOSITORY/releases/$id" -Method PATCH -Headers $headers | + select -ExpandProperty Content | + ConvertFrom-Json | + ConvertTo-Json \ No newline at end of file diff --git a/.github/workflows/sponsors.ps1 b/.github/workflows/sponsors.ps1 new file mode 100644 index 00000000..791fd7cc --- /dev/null +++ b/.github/workflows/sponsors.ps1 @@ -0,0 +1,59 @@ +$event = Get-Content -Path $env:GITHUB_EVENT_PATH | ConvertFrom-Json +$author = $event.issue ? $event.issue.user.node_id : $event.pull_request.user.node_id + +if ($author -eq $null) { + throw 'No user id found' +} + +gh auth status + +echo "Looking up sponsorship from $env:GITHUB_ACTOR ..." + +$query = gh api graphql --paginate -f owner='devlooped' -f query=' +query($owner: String!, $endCursor: String) { + organization (login: $owner) { + sponsorshipsAsMaintainer (first: 100, after: $endCursor) { + nodes { + sponsorEntity { + ... on Organization { id, name } + ... on User { id, name } + } + tier { monthlyPriceInDollars } + } + pageInfo { + hasNextPage + endCursor + } + } + } +} +' + +$amount = + $query | + ConvertFrom-Json | + select @{ Name='nodes'; Expression={$_.data.organization.sponsorshipsAsMaintainer.nodes}} | + select -ExpandProperty nodes | + where { $_.sponsorEntity.id -eq $author } | + select -ExpandProperty tier | + select -ExpandProperty monthlyPriceInDollars + +if ($null -eq $amount) { + echo "Author is not a sponsor! Nothing left to do." + return +} + +echo "Author is a sponsor!" + +$headers = @{ 'Accept'='application/vnd.github.v3+json;charset=utf-8'; 'Authorization' = "bearer $env:GH_TOKEN" } + +# Try creating the labels, ignore errors (i.e. already created) +iwr -Body '{ "name":"sponsor :purple_heart:", "color":"ea4aaa", "description":"sponsor" }' "$env:GITHUB_API_URL/repos/$env:GITHUB_REPOSITORY/labels" -Method Post -Headers $headers -SkipHttpErrorCheck -UseBasicParsing | select -ExpandProperty StatusCode +iwr -Body '{ "name":"sponsor :yellow_heart:", "color":"ea4aaa", "description":"sponsor++" }' "$env:GITHUB_API_URL/repos/$env:GITHUB_REPOSITORY/labels" -Method Post -Headers $headers -SkipHttpErrorCheck -UseBasicParsing | select -ExpandProperty StatusCode + +$number = $event.issue ? $event.issue.number : $event.pull_request.number +$labels = $amount -ge 100 ? '{"labels":["sponsor :yellow_heart:"]}' : '{"labels":["sponsor :purple_heart:"]}' + +iwr -Body $labels "$env:GITHUB_API_URL/repos/$env:GITHUB_REPOSITORY/issues/$number/labels" -Method Post -Headers $headers -SkipHttpErrorCheck -UseBasicParsing | select -ExpandProperty StatusCode + +echo 'Label applied' diff --git a/.github/workflows/sponsors.yml b/.github/workflows/sponsors.yml new file mode 100644 index 00000000..3e909f66 --- /dev/null +++ b/.github/workflows/sponsors.yml @@ -0,0 +1,25 @@ +# Runs on new issues/PRs and applies sponsor labels + +name: sponsors +on: + pull_request: + types: [opened] + issues: + types: [opened] + +jobs: + sponsors: + runs-on: windows-latest + steps: + - name: 🀘 checkout + uses: actions/checkout@v2 + + - name: πŸ”½ gh + run: | + iwr -useb get.scoop.sh | iex + scoop install gh + + - name: πŸ’› sponsors + run: ./.github/workflows/sponsors.ps1 + env: + GH_TOKEN: ${{ secrets.DEVLOOPED_TOKEN }} \ No newline at end of file diff --git a/.github/workflows/tag.yml b/.github/workflows/tag.yml deleted file mode 100644 index 3f42147f..00000000 --- a/.github/workflows/tag.yml +++ /dev/null @@ -1,51 +0,0 @@ -ο»Ώ# Creates a draft release whenever a tag v* is pushed, -# with a changelog from the previous tag. If the tag -# contains a label, the release is flagged as a prerelease. - -name: tag -on: - push: - tags: [ 'v*' ] - -jobs: - release: - runs-on: ubuntu-latest - steps: - - name: 🀘 checkout - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: 🏷 current - run: echo "CURRENT_TAG=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV - - name: 🏷 since - run: echo "SINCE_TAG=$(git describe --abbrev=0 --tags $(git rev-list --tags --skip=1 --max-count=1))" >> $GITHUB_ENV - - name: 🚧 prerelease - run: echo "PRERELEASE=true" >> $GITHUB_ENV - if: contains(env.CURRENT_TAG, '-') - - - name: βš™ changelog - uses: faberNovel/github-changelog-generator-action@master - if: env.SINCE_TAG != '' - with: - options: --token ${{ secrets.GITHUB_TOKEN }} --since-tag ${{ env.SINCE_TAG }} - - - name: βš™ changelog - uses: faberNovel/github-changelog-generator-action@master - if: env.SINCE_TAG == '' - with: - options: --token ${{ secrets.GITHUB_TOKEN }} - - - name: 😺 changelog - run: cat CHANGELOG.md - - - name: πŸ–‰ release - uses: actions/create-release@v1 - with: - release_name: ${{ env.CURRENT_TAG }} - tag_name: ${{ env.CURRENT_TAG }} - draft: true - prerelease: ${{ env.PRERELEASE }} - body_path: CHANGELOG.md - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/.github_changelog_generator b/.github_changelog_generator index 955932c7..4e9e3343 100644 --- a/.github_changelog_generator +++ b/.github_changelog_generator @@ -1,4 +1,9 @@ usernames-as-github-logins=true header-label= -add_issues_wo_labels=false -exclude-labels=dependencies,duplicate,question,invalid,wontfix \ No newline at end of file +issues_wo_labels=true +pr_wo_labels=true +exclude-labels=dependencies,duplicate,question,invalid,wontfix +enhancement-label=:sparkles: Implemented enhancements: +bugs-label=:bug: Fixed bugs: +issues-label=:hammer: Other: +pr-label=:twisted_rightwards_arrows: Merged: diff --git a/.netconfig b/.netconfig index 1687a220..baa3739e 100644 --- a/.netconfig +++ b/.netconfig @@ -1,5 +1,6 @@ [file] url = https://github.com/devlooped/oss + url = https://github.com/devlooped/.github [file ".netconfig"] url = https://github.com/devlooped/oss/blob/main/.netconfig skip @@ -13,98 +14,149 @@ url = https://github.com/devlooped/oss/blob/main/.editorconfig etag = 985aa022503959d35b03c870f07ae604cead7580d260775235ef6665aa9a6cbe weak + sha = 0683ee777d7d878d4bf013d7deea352685135a05 [file ".gitattributes"] url = https://github.com/devlooped/oss/blob/main/.gitattributes etag = 7acb32f5fa6d4ccd9c824605a7c2b8538497f0068c165567807d393dcf4d6bb7 weak + sha = 0683ee777d7d878d4bf013d7deea352685135a05 [file ".github/FUNDING.yml"] - url = https://github.com/devlooped/oss/blob/main/.github/FUNDING.yml - etag = f4d02805592d1f86c29acc9da3a40e817fb3611d6ff0f6409f547137f38f65df + url = https://github.com/devlooped/.github/blob/main/.github/FUNDING.yml + etag = a944c728facd033bbdfb4ff8d0ef10d0b3a457c277dc499458df0ffc7e6409da weak + sha = 39f4c591716ff50dd035d2fade35e5822489ab7f [file ".github/ISSUE_TEMPLATE/bug.md"] url = https://github.com/devlooped/oss/blob/main/.github/ISSUE_TEMPLATE/bug.md etag = 026852ba1f1921f3a043bb5e09cd7a2c3d9a33ec51f48e524dc3a2ab72de3141 weak + sha = 0683ee777d7d878d4bf013d7deea352685135a05 [file ".github/dependabot.yml"] url = https://github.com/devlooped/oss/blob/main/.github/dependabot.yml etag = 2fc8a0d2b47091b058ae3e1f68333492044b49a684621f4939a0bce5bff869d5 weak + sha = 0683ee777d7d878d4bf013d7deea352685135a05 [file ".github/workflows/build.yml"] url = https://github.com/devlooped/oss/blob/main/.github/workflows/build.yml - etag = 868172e62b2cac855039731fd1ea929f0a569f675586903450d24bc232c43ea9 - weak -[file ".github/workflows/release.yml"] - url = https://github.com/devlooped/oss/blob/main/.github/workflows/release.yml - skip -[file ".github/workflows/tag.yml"] - url = https://github.com/devlooped/oss/blob/main/.github/workflows/tag.yml - etag = 26e271cf76e00c6922552af104b1e496103bdfa75ebef253447594207b10153e + etag = 3ece28919da5fd43d3e264c775cb64b9f2f4a40dd8a02ec5a60617e203ecf97f weak + sha = 15f020b7764fca65d6b9311576f6e7b942542a3d [file ".github_changelog_generator"] url = https://github.com/devlooped/oss/blob/main/.github_changelog_generator - etag = a724e0cbbad99a04e6cd3738a5f3ec5416dd5f29ae7073e7afe5471e73107e42 + etag = 115efcd056eaca2f1d2df510eb7632ac3558ace2734a4139b77536b8211dfe41 weak + sha = cf52375fd20c6df894f1518890693312d4c4c11c [file ".gitignore"] url = https://github.com/devlooped/oss/blob/main/.gitignore etag = 925782b685859e07040442303b411bebd1c75b4fe4e075f547e067f33f323814 weak + sha = fa83a5161ba52bc5d510ce0ba75ee0b1f8d4bc63 [file "Directory.Build.rsp"] url = https://github.com/devlooped/oss/blob/main/Directory.Build.rsp etag = 6a6c6e1d3895df953abf14c82b0899e3eea75cdcd679f6212dcfea15183d73d6 weak + sha = ae25fae9d7daf0cb47d537ba870914aa3052f0c9 [file "_config.yml"] url = https://github.com/devlooped/oss/blob/main/_config.yml etag = 9139148f845adf503fd3c3c140eb64421fc476a1f9c027fc50825c0efb05f557 weak + sha = fa83a5161ba52bc5d510ce0ba75ee0b1f8d4bc63 [file "code-of-conduct.md"] url = https://github.com/devlooped/oss/blob/main/code-of-conduct.md etag = 4857c01bb695f09bf6912d778951c3065d9dd565e5de3d0827f40432d0e4c613 weak + sha = f72699c9d52f02e6a3411ef589f2a02007c5e5af [file "license.txt"] url = https://github.com/devlooped/oss/blob/main/license.txt etag = 2c6335b37e4ae05eea7c01f5d0c9d82b49c488f868a8b5ba7bff7c6ff01f3994 weak + sha = 0683ee777d7d878d4bf013d7deea352685135a05 [file "security.md"] url = https://github.com/devlooped/oss/blob/main/security.md etag = fc8101fd914820db3e6b42d608dc46aefbc60c830ac721ed3917daead3727dbd weak + sha = a0f58a6d63e48ae6e55944c556d0bc94476dc8df [file "src/Directory.Build.props"] url = https://github.com/devlooped/oss/blob/main/src/Directory.Build.props - etag = 1ea71942b9ff7830612ceb3a2927c0d011c54891a7653b07ef01b914347e306f + etag = 16762b7a7fbdc00c1912c469962131c912856115826db7628167517eea918324 weak + sha = 16ac2f336b14d6b340b10fa162242a9742eb08fc [file "src/Directory.Build.targets"] url = https://github.com/devlooped/oss/blob/main/src/Directory.Build.targets - etag = 236390b1c5b2576d6d013656e24f6d74a0042a0e4071a19e8c626cf6b7005b54 + etag = af2cf67157f42ab43a0082cbf876aa4cc46e167e6e6df6c05e9aaf36ffb23cc8 weak + sha = 6edd918283051b5179f6255556d254654acc5b8c [file "src/kzu.snk"] url = https://github.com/devlooped/oss/blob/main/src/kzu.snk etag = b8d789b5b6bea017cdcc8badcea888ad78de3e34298efca922054e9fb0e7b6b9 weak + sha = 0683ee777d7d878d4bf013d7deea352685135a05 [file ".github/ISSUE_TEMPLATE/config.yml"] url = https://github.com/devlooped/oss/blob/main/.github/ISSUE_TEMPLATE/config.yml etag = b5ce64e6967276086eb89f86f57364da9c4deac988c7e0e04810a4f8caaa1400 weak -[file ".github/workflows/pages.yml"] - url = https://github.com/devlooped/oss/blob/main/.github/workflows/pages.yml - etag = 3f1fb2481dcb41987d775eb6ed61c10adc00995f287636e7adda3ade5efc94b7 - weak -[file "Gemfile"] - url = https://github.com/devlooped/oss/blob/main/Gemfile - etag = d45832acd078778ffebf260000f6d25172a131f51684744d7e982da2a47170ce - weak + sha = 6f1ed274e1e168da487affb88d69774fc2f926c3 [file "assets/css/style.scss"] url = https://github.com/devlooped/oss/blob/main/assets/css/style.scss etag = 2c86a074a6c8c2f6af806908a57215439fad563830b4af8fbed1a3aabaede0cf weak + sha = b5583942b012f42f5ac2d06200427070cc18c250 [file "assets/images/sponsors.png"] url = https://github.com/devlooped/oss/blob/main/assets/images/sponsors.png etag = f152d1038eb04cb1596a13377b032f18f2402c969130601384fb377ce5ddefbd weak + sha = bf7b4569981b558b130bdd3ce93043d624a567d8 [file "assets/images/sponsors.svg"] url = https://github.com/devlooped/oss/blob/main/assets/images/sponsors.svg etag = 182780a2d68bdba9069000aef75712ab81c307eee1317bcd29d35563f523ba98 weak + sha = bf7b4569981b558b130bdd3ce93043d624a567d8 [file "support.md"] url = https://github.com/devlooped/oss/blob/main/support.md etag = 2d47e2fc4fdfa3515203d452674566e3df507461f9938f451a06d79deb687d24 weak + sha = a0f58a6d63e48ae6e55944c556d0bc94476dc8df +[file ".github/workflows/changelog.yml"] + url = https://github.com/devlooped/oss/blob/main/.github/workflows/changelog.yml + sha = 3594806a4722406af5c943f258abfd8e79b79f77 + etag = 7f5bb52dff2908e4a4b60e06b4f8f1d497864554076f916aa6e5e8c9b2c6b2d2 + weak +[file ".github/workflows/dotnet-file.yml"] + url = https://github.com/devlooped/oss/blob/main/.github/workflows/dotnet-file.yml + sha = 094043587f7e7313a0a77dece1532fbcb1ce8555 + etag = 15333d15756257ec2d7975ea3ba5a22d1e3fae98aab35d83d67a728628e90cea + weak +[file ".github/workflows/publish.yml"] + url = https://github.com/devlooped/oss/blob/main/.github/workflows/publish.yml + sha = e68624389d8133571da53e83ab4e88de7bc028a8 + etag = 8067230717247263ad661c69780fdfdf4b6f140287517fee9c5d4e64d4b737af + weak +[file ".github/workflows/release-artifacts.yml"] + url = https://github.com/devlooped/oss/blob/main/.github/workflows/release-artifacts.yml + sha = e68624389d8133571da53e83ab4e88de7bc028a8 + etag = 8be10a2fbeb9e6924d8b08e58a61a0f69138352c6f5477b53dcd34c26d8d35ef + weak +[file ".github/workflows/release-notes.yml"] + url = https://github.com/devlooped/oss/blob/main/.github/workflows/release-notes.yml + sha = 70bc909d2ce6924385a8bcc3a9fb1cff338a3fb7 + etag = c987e5b93b002c5a2a63304f677eb969b7b6e274b77ef4392aeef4d9ca7e10dd + weak +[file ".github/workflows/pages.yml"] + url = https://github.com/devlooped/.github/blob/main/.github/workflows/pages.yml + sha = f2dc1370469bec1b2d32d82faf659b050cdc7e2a + etag = f2bc91354dc634de00aa9f502eb69e34368c315bcdbe422cde95ddd850d31669 + weak +[file ".github/workflows/sponsors.ps1"] + url = https://github.com/devlooped/.github/blob/main/.github/workflows/sponsors.ps1 + sha = 11f5c27cfdb304436ef0b7ee27ff333cda31ef65 + etag = 57a303125f3367b68ad0700d89ff4ba57cb29b33b303903488c9c8638d0bf735 + weak +[file ".github/workflows/sponsors.yml"] + url = https://github.com/devlooped/.github/blob/main/.github/workflows/sponsors.yml + sha = 1114b567a2ab2939b8569340ae20423edf66a12f + etag = 0142be767cd24215b54631593cfab08d711001b71ba4fc358e412f27c434a227 + weak +[file "Gemfile"] + url = https://github.com/devlooped/.github/blob/main/Gemfile + sha = f2dc1370469bec1b2d32d82faf659b050cdc7e2a + etag = d45832acd078778ffebf260000f6d25172a131f51684744d7e982da2a47170ce + weak diff --git a/NuGetizer.sln b/NuGetizer.sln index 6a7f1195..1645f8d0 100644 --- a/NuGetizer.sln +++ b/NuGetizer.sln @@ -23,8 +23,15 @@ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "workflows", "workflows", "{AFDBEE29-AF6A-4BC2-8960-DAFD2B2C2D2A}" ProjectSection(SolutionItems) = preProject .github\workflows\build.yml = .github\workflows\build.yml + .github\workflows\changelog.yml = .github\workflows\changelog.yml + .github\workflows\dotnet-file.yml = .github\workflows\dotnet-file.yml + .github\workflows\pages.yml = .github\workflows\pages.yml + .github\workflows\publish.yml = .github\workflows\publish.yml + .github\workflows\release-artifacts.yml = .github\workflows\release-artifacts.yml + .github\workflows\release-notes.yml = .github\workflows\release-notes.yml .github\workflows\release.yml = .github\workflows\release.yml - .github\workflows\tag.yml = .github\workflows\tag.yml + .github\workflows\sponsors.ps1 = .github\workflows\sponsors.ps1 + .github\workflows\sponsors.yml = .github\workflows\sponsors.yml EndProjectSection EndProject Global diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 0a38c8bb..f3523ae4 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -45,6 +45,7 @@ + Release Latest diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index e45fde42..d1715866 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -33,11 +33,6 @@ $(OutputPath) - - - $(DefineConstants);$(TargetFramework.ToUpperInvariant().TrimEnd('0').TrimEnd('.').Replace('.', '')) - - @@ -91,6 +86,7 @@ Built from $(RepositoryUrl)/tree/$(RepositorySha) $(Description) + $(RepositoryUrl)/blob/main/changelog.md diff --git a/src/NuGetizer.Tests/CreatePackageTests.cs b/src/NuGetizer.Tests/CreatePackageTests.cs index 49df4ee6..6bdac515 100644 --- a/src/NuGetizer.Tests/CreatePackageTests.cs +++ b/src/NuGetizer.Tests/CreatePackageTests.cs @@ -57,9 +57,9 @@ public CreatePackageTests(ITestOutputHelper output) }; #if RELEASE - // Create the actual .nupkg to ensure everything is working - // fine end to end. - createPackage = true; + // Create the actual .nupkg to ensure everything is working + // fine end to end. + createPackage = true; #endif } diff --git a/src/NuGetizer.Tests/NuGetizer.Tests.csproj b/src/NuGetizer.Tests/NuGetizer.Tests.csproj index 162b6e97..bd0c3fa4 100644 --- a/src/NuGetizer.Tests/NuGetizer.Tests.csproj +++ b/src/NuGetizer.Tests/NuGetizer.Tests.csproj @@ -10,6 +10,7 @@ + @@ -20,6 +21,7 @@ + diff --git a/src/NuGetizer.Tests/Scenarios/Directory.Build.props b/src/NuGetizer.Tests/Scenarios/Directory.Build.props index 9de2064f..2fbefcce 100644 --- a/src/NuGetizer.Tests/Scenarios/Directory.Build.props +++ b/src/NuGetizer.Tests/Scenarios/Directory.Build.props @@ -21,4 +21,4 @@ https://api.nuget.org/v3/index.json - \ No newline at end of file +