Skip to content

Commit 5e805a0

Browse files
authored
Remove dependency on deprecated release actions (#193)
* Update to the latest available actions * Remove dependency on deprecated release actions * Add release workflow fixes from testing
1 parent 27bae0b commit 5e805a0

File tree

1 file changed

+38
-42
lines changed

1 file changed

+38
-42
lines changed

.github/workflows/release.yaml

Lines changed: 38 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,70 @@
11
name: CD - Release new version
2+
23
on:
34
workflow_dispatch:
5+
6+
permissions:
7+
contents: write
8+
49
jobs:
510
build:
611
runs-on: ubuntu-latest
712
steps:
813
- uses: actions/checkout@v4
9-
- run: npm install
10-
name: Install dependencies
11-
- run: npm run bootstrap
12-
name: Bootstrap the packages
13-
- run: npm run build-all
14-
name: Build packages
14+
15+
- name: Install dependencies
16+
run: npm install
17+
18+
- name: Bootstrap the packages
19+
run: npm run bootstrap
20+
21+
- name: Build packages
22+
run: npm run build-all
23+
1524
- uses: actions/github-script@v7
1625
id: releaseVersion
1726
with:
27+
result-encoding: string
1828
script: |
1929
const fs = require('fs');
20-
const hookVersion = require('./package.json').version
21-
core.setOutput('version', hookVersion);
30+
return require('./package.json').version
31+
2232
- name: Zip up releases
2333
run: |
24-
zip -r -j actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip packages/docker/dist
25-
zip -r -j actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip packages/k8s/dist
34+
zip -r -j actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.result }}.zip packages/docker/dist
35+
zip -r -j actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.result }}.zip packages/k8s/dist
36+
2637
- name: Calculate SHA
2738
id: sha
2839
shell: bash
2940
run: |
30-
sha_docker=$(sha256sum actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip | awk '{print $1}')
41+
sha_docker=$(sha256sum actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.result }}.zip | awk '{print $1}')
3142
echo "Docker SHA: $sha_docker"
3243
echo "docker-sha=$sha_docker" >> $GITHUB_OUTPUT
33-
sha_k8s=$(sha256sum actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip | awk '{print $1}')
44+
sha_k8s=$(sha256sum actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.result }}.zip | awk '{print $1}')
3445
echo "K8s SHA: $sha_k8s"
3546
echo "k8s-sha=$sha_k8s" >> $GITHUB_OUTPUT
36-
- name: replace SHA
47+
48+
- name: Create release notes
3749
id: releaseNotes
3850
uses: actions/github-script@v7
3951
with:
4052
script: |
4153
const fs = require('fs');
42-
var releaseNotes = fs.readFileSync('${{ github.workspace }}/releaseNotes.md', 'utf8').replace(/<HOOK_VERSION>/g, '${{ steps.releaseVersion.outputs.version }}')
54+
var releaseNotes = fs.readFileSync('${{ github.workspace }}/releaseNotes.md', 'utf8').replace(/<HOOK_VERSION>/g, '${{ steps.releaseVersion.outputs.result }}')
4355
releaseNotes = releaseNotes.replace(/<DOCKER_SHA>/g, '${{ steps.sha.outputs.docker-sha }}')
4456
releaseNotes = releaseNotes.replace(/<K8S_SHA>/g, '${{ steps.sha.outputs.k8s-sha }}')
4557
console.log(releaseNotes)
46-
core.setOutput('note', releaseNotes);
47-
- uses: actions/create-release@v1
48-
id: createRelease
49-
name: Create ${{ steps.releaseVersion.outputs.version }} Hook Release
58+
fs.writeFileSync('${{ github.workspace }}/finalReleaseNotes.md', releaseNotes);
59+
60+
- name: Create ${{ steps.releaseVersion.outputs.result }} Hook Release
5061
env:
51-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
52-
with:
53-
tag_name: "v${{ steps.releaseVersion.outputs.version }}"
54-
release_name: "v${{ steps.releaseVersion.outputs.version }}"
55-
body: |
56-
${{ steps.releaseNotes.outputs.note }}
57-
- name: Upload K8s hooks
58-
uses: actions/upload-release-asset@v1
59-
env:
60-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
61-
with:
62-
upload_url: ${{ steps.createRelease.outputs.upload_url }}
63-
asset_path: ${{ github.workspace }}/actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip
64-
asset_name: actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip
65-
asset_content_type: application/octet-stream
66-
- name: Upload docker hooks
67-
uses: actions/upload-release-asset@v1
68-
env:
69-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
70-
with:
71-
upload_url: ${{ steps.createRelease.outputs.upload_url }}
72-
asset_path: ${{ github.workspace }}/actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip
73-
asset_name: actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip
74-
asset_content_type: application/octet-stream
62+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
63+
run: |
64+
gh release create v${{ steps.releaseVersion.outputs.result }} \
65+
--title "v${{ steps.releaseVersion.outputs.result }}" \
66+
--repo ${{ github.repository }} \
67+
--notes-file ${{ github.workspace }}/finalReleaseNotes.md \
68+
--latest \
69+
${{ github.workspace }}/actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.result }}.zip \
70+
${{ github.workspace }}/actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.result }}.zip

0 commit comments

Comments
 (0)