mirror of
https://github.com/actions/runner-container-hooks.git
synced 2025-12-13 16:16:46 +00:00
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
This commit is contained in:
80
.github/workflows/release.yaml
vendored
80
.github/workflows/release.yaml
vendored
@@ -1,74 +1,70 @@
|
|||||||
name: CD - Release new version
|
name: CD - Release new version
|
||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- run: npm install
|
|
||||||
name: Install dependencies
|
- name: Install dependencies
|
||||||
- run: npm run bootstrap
|
run: npm install
|
||||||
name: Bootstrap the packages
|
|
||||||
- run: npm run build-all
|
- name: Bootstrap the packages
|
||||||
name: Build packages
|
run: npm run bootstrap
|
||||||
|
|
||||||
|
- name: Build packages
|
||||||
|
run: npm run build-all
|
||||||
|
|
||||||
- uses: actions/github-script@v7
|
- uses: actions/github-script@v7
|
||||||
id: releaseVersion
|
id: releaseVersion
|
||||||
with:
|
with:
|
||||||
|
result-encoding: string
|
||||||
script: |
|
script: |
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
const hookVersion = require('./package.json').version
|
return require('./package.json').version
|
||||||
core.setOutput('version', hookVersion);
|
|
||||||
- name: Zip up releases
|
- name: Zip up releases
|
||||||
run: |
|
run: |
|
||||||
zip -r -j actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip packages/docker/dist
|
zip -r -j actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.result }}.zip packages/docker/dist
|
||||||
zip -r -j actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip packages/k8s/dist
|
zip -r -j actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.result }}.zip packages/k8s/dist
|
||||||
|
|
||||||
- name: Calculate SHA
|
- name: Calculate SHA
|
||||||
id: sha
|
id: sha
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
sha_docker=$(sha256sum actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip | awk '{print $1}')
|
sha_docker=$(sha256sum actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.result }}.zip | awk '{print $1}')
|
||||||
echo "Docker SHA: $sha_docker"
|
echo "Docker SHA: $sha_docker"
|
||||||
echo "docker-sha=$sha_docker" >> $GITHUB_OUTPUT
|
echo "docker-sha=$sha_docker" >> $GITHUB_OUTPUT
|
||||||
sha_k8s=$(sha256sum actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip | awk '{print $1}')
|
sha_k8s=$(sha256sum actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.result }}.zip | awk '{print $1}')
|
||||||
echo "K8s SHA: $sha_k8s"
|
echo "K8s SHA: $sha_k8s"
|
||||||
echo "k8s-sha=$sha_k8s" >> $GITHUB_OUTPUT
|
echo "k8s-sha=$sha_k8s" >> $GITHUB_OUTPUT
|
||||||
- name: replace SHA
|
|
||||||
|
- name: Create release notes
|
||||||
id: releaseNotes
|
id: releaseNotes
|
||||||
uses: actions/github-script@v7
|
uses: actions/github-script@v7
|
||||||
with:
|
with:
|
||||||
script: |
|
script: |
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
var releaseNotes = fs.readFileSync('${{ github.workspace }}/releaseNotes.md', 'utf8').replace(/<HOOK_VERSION>/g, '${{ steps.releaseVersion.outputs.version }}')
|
var releaseNotes = fs.readFileSync('${{ github.workspace }}/releaseNotes.md', 'utf8').replace(/<HOOK_VERSION>/g, '${{ steps.releaseVersion.outputs.result }}')
|
||||||
releaseNotes = releaseNotes.replace(/<DOCKER_SHA>/g, '${{ steps.sha.outputs.docker-sha }}')
|
releaseNotes = releaseNotes.replace(/<DOCKER_SHA>/g, '${{ steps.sha.outputs.docker-sha }}')
|
||||||
releaseNotes = releaseNotes.replace(/<K8S_SHA>/g, '${{ steps.sha.outputs.k8s-sha }}')
|
releaseNotes = releaseNotes.replace(/<K8S_SHA>/g, '${{ steps.sha.outputs.k8s-sha }}')
|
||||||
console.log(releaseNotes)
|
console.log(releaseNotes)
|
||||||
core.setOutput('note', releaseNotes);
|
fs.writeFileSync('${{ github.workspace }}/finalReleaseNotes.md', releaseNotes);
|
||||||
- uses: actions/create-release@v1
|
|
||||||
id: createRelease
|
- name: Create ${{ steps.releaseVersion.outputs.result }} Hook Release
|
||||||
name: Create ${{ steps.releaseVersion.outputs.version }} Hook Release
|
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
with:
|
run: |
|
||||||
tag_name: "v${{ steps.releaseVersion.outputs.version }}"
|
gh release create v${{ steps.releaseVersion.outputs.result }} \
|
||||||
release_name: "v${{ steps.releaseVersion.outputs.version }}"
|
--title "v${{ steps.releaseVersion.outputs.result }}" \
|
||||||
body: |
|
--repo ${{ github.repository }} \
|
||||||
${{ steps.releaseNotes.outputs.note }}
|
--notes-file ${{ github.workspace }}/finalReleaseNotes.md \
|
||||||
- name: Upload K8s hooks
|
--latest \
|
||||||
uses: actions/upload-release-asset@v1
|
${{ github.workspace }}/actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.result }}.zip \
|
||||||
env:
|
${{ github.workspace }}/actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.result }}.zip
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
upload_url: ${{ steps.createRelease.outputs.upload_url }}
|
|
||||||
asset_path: ${{ github.workspace }}/actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip
|
|
||||||
asset_name: actions-runner-hooks-k8s-${{ steps.releaseVersion.outputs.version }}.zip
|
|
||||||
asset_content_type: application/octet-stream
|
|
||||||
- name: Upload docker hooks
|
|
||||||
uses: actions/upload-release-asset@v1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
upload_url: ${{ steps.createRelease.outputs.upload_url }}
|
|
||||||
asset_path: ${{ github.workspace }}/actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip
|
|
||||||
asset_name: actions-runner-hooks-docker-${{ steps.releaseVersion.outputs.version }}.zip
|
|
||||||
asset_content_type: application/octet-stream
|
|
||||||
Reference in New Issue
Block a user