Skip to content

Commit 5a62448

Browse files
Apply repository updates to master
1 parent 9d15dc7 commit 5a62448

6 files changed

Lines changed: 113 additions & 11 deletions

File tree

.github/workflows/release.yml renamed to .github/workflows/release-build-artifacts.yml

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Release
1+
name: Release - build and store artifacts
22
on:
33
push:
44
tags:
@@ -10,7 +10,7 @@ defaults:
1010
run:
1111
shell: pwsh
1212
jobs:
13-
release:
13+
build-and-store-artifacts:
1414
runs-on: ubuntu-latest
1515
steps:
1616
- name: Checkout
@@ -26,18 +26,17 @@ jobs:
2626
- name: Sign NuGet packages
2727
uses: Particular/sign-nuget-packages-action@v1.0.0
2828
with:
29-
client-id: ${{ secrets.AZURE_KEY_VAULT_CLIENT_ID }}
30-
tenant-id: ${{ secrets.AZURE_KEY_VAULT_TENANT_ID }}
31-
client-secret: ${{ secrets.AZURE_KEY_VAULT_CLIENT_SECRET }}
32-
certificate-name: ${{ secrets.AZURE_KEY_VAULT_CERTIFICATE_NAME }}
33-
- name: Publish artifacts
29+
client-id: ${{ secrets.AZURE_KEY_VAULT_CLIENT_ID }}
30+
tenant-id: ${{ secrets.AZURE_KEY_VAULT_TENANT_ID }}
31+
client-secret: ${{ secrets.AZURE_KEY_VAULT_CLIENT_SECRET }}
32+
certificate-name: ${{ secrets.AZURE_KEY_VAULT_CERTIFICATE_NAME }}
33+
- name: Publish NuGet packages to the workflow
3434
uses: actions/upload-artifact@v7.0.2
3535
with:
3636
name: nugets
3737
path: nugets/*
3838
retention-days: 1
39-
- name: Deploy
40-
# Does not follow standard practice of targeting explicit versions because configuration is tightly coupled to Octopus Deploy configuration
41-
uses: Particular/push-octopus-package-action@main
39+
- name: Create draft release and attach artifacts
40+
uses: particular/deployment-workflows/.github/actions/create-draft-release-with-assets@1.0.0
4241
with:
43-
octopus-deploy-api-key: ${{ secrets.OCTOPUS_DEPLOY_API_KEY }}
42+
asset-paths: "nugets/"
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Deploy Production
2+
on:
3+
workflow_dispatch:
4+
inputs:
5+
version:
6+
required: true
7+
type: string
8+
env:
9+
DOTNET_NOLOGO: true
10+
jobs:
11+
check-authorized-user:
12+
uses: Particular/deployment-workflows/.github/workflows/verify-authorized-user.yml@1.0.0
13+
publish-release-notes:
14+
needs: check-authorized-user
15+
uses: Particular/deployment-workflows/.github/workflows/publish-release-notes.yml@1.0.0
16+
with:
17+
version: ${{ inputs.version }}
18+
secrets: inherit
19+
virus-scan:
20+
needs: publish-release-notes
21+
runs-on: ubuntu-latest
22+
permissions:
23+
contents: write
24+
steps:
25+
- name: Scan release for viruses
26+
uses: Particular/virus-scan-action@main
27+
with:
28+
owner: ${{ github.repository_owner }}
29+
repo: ${{ github.event.repository.name }}
30+
tag: ${{ inputs.version }}
31+
github-access-token: ${{ secrets.GITHUB_TOKEN }}
32+
slack-token: ${{ secrets.SLACK_TOKEN }}
33+
slack-channel: ${{ vars.VIRUS_REPORTING_SLACK_CHANNEL }}
34+
push-nuget-packages:
35+
permissions:
36+
id-token: write
37+
contents: read
38+
runs-on: ubuntu-latest
39+
needs: publish-release-notes
40+
steps:
41+
- name: Push NuGet packages
42+
uses: particular/deployment-workflows/.github/actions/push-nuget-packages@1.0.0
43+
with:
44+
version: ${{ inputs.version }}
45+
deploy-environment: production
46+
api-key: required-but-real-value-not-needed-we-use-trusted-publishing-for-production
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Deploy Staging
2+
on:
3+
workflow_dispatch:
4+
inputs:
5+
version:
6+
required: true
7+
type: string
8+
env:
9+
DOTNET_NOLOGO: true
10+
jobs:
11+
check-authorized-user:
12+
uses: Particular/deployment-workflows/.github/workflows/verify-authorized-user.yml@1.0.0
13+
push-nuget-packages-staging:
14+
needs: check-authorized-user
15+
runs-on: ubuntu-latest
16+
permissions:
17+
id-token: write
18+
contents: write
19+
steps:
20+
- name: Push NuGet packages
21+
uses: Particular/deployment-workflows/.github/actions/push-nuget-packages@1.0.0
22+
with:
23+
version: ${{ inputs.version }}
24+
deploy-environment: staging
25+
api-key: ${{ secrets.FEEDZIO_PUBLISH_API_KEY }}
26+
generate-release-notes:
27+
needs: check-authorized-user
28+
uses: Particular/deployment-workflows/.github/workflows/generate-release-notes.yml@1.0.0
29+
with:
30+
version: ${{ inputs.version }}
31+
secrets: inherit
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{{ if config.create.include_footer }}
2+
3+
### Where to get it
4+
5+
<!-- TODO change the link for the apps that don't go to NuGet -->
6+
You can download this release from [NuGet](https://www.nuget.org/profiles/ParticularSoftware/).
7+
8+
{{ end }}
9+
10+
<!-- RELEASE NOTES GENERATED -->
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{{
2+
if issue.is_pull_request
3+
}}- [__#{{ issue.public_number }}__]({{ issue.html_url }}) {{ issue.title }}
4+
{{ else
5+
}}- [__#{{ issue.public_number }}__]({{ issue.html_url }}) {{ issue.title }}
6+
{{ end -}}

‎.release/GitReleaseManager.yaml‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
templates-dir: .templates
2+
create:
3+
include-footer: true
4+
issue-labels-include:
5+
- "Bug"
6+
- "Feature"
7+
- "Improvement"
8+
- "Dependency CVE"
9+
issue-labels-exclude:
10+
- "Refactoring"

0 commit comments

Comments
 (0)