Skip to content

Merge pull request #6357 from kubernetes-sigs/dependabot/github_actio… #229

Merge pull request #6357 from kubernetes-sigs/dependabot/github_actio…

Merge pull request #6357 from kubernetes-sigs/dependabot/github_actio… #229

Workflow file for this run

name: Release
on:
workflow_dispatch:
push:
tags:
- "v*.*.*"
permissions:
contents: read
jobs:
build-cloud-controller-manager:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- os: linux
arch: amd64
- os: linux
arch: arm
- os: linux
arch: arm64
steps:
- name: Harden Runner
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- name: Setup Golang
uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
with:
go-version-file: go.mod
- name: Build binary
run: |
rm -rf ./bin
ARCH=${{ matrix.arch }} make bin/azure-cloud-controller-manager
mv bin/azure-cloud-controller-manager bin/azure-cloud-controller-manager-${{ matrix.os }}-${{ matrix.arch }}
- uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: cloud-controller-manager-${{ matrix.os }}-${{ matrix.arch }}
path: bin/azure-cloud-controller-manager-${{ matrix.os }}-${{ matrix.arch }}
if-no-files-found: error
build-cloud-node-manager:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- os: linux
arch: amd64
- os: linux
arch: arm
- os: linux
arch: arm64
- os: windows
arch: amd64
steps:
- name: Harden Runner
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- name: Setup Golang
uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
with:
go-version-file: go.mod
cache: true
- name: Build binary for linux
if: matrix.os == 'linux'
run: |
rm -rf ./bin
ARCH=${{ matrix.arch }} make bin/azure-cloud-node-manager
mv bin/azure-cloud-node-manager bin/azure-cloud-node-manager-${{ matrix.os }}-${{ matrix.arch }}
- name: Build binary for windows
if: matrix.os == 'windows'
run: |
rm -rf ./bin
ARCH=${{ matrix.arch }} make bin/azure-cloud-node-manager.exe
mv bin/azure-cloud-node-manager-${{ matrix.arch }}.exe bin/azure-cloud-node-manager-${{ matrix.os }}-${{ matrix.arch }}.exe
- name: Upload artifact for linux
if: matrix.os == 'linux'
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: cloud-node-manager-${{ matrix.os }}-${{ matrix.arch }}
path: bin/azure-cloud-node-manager-${{ matrix.os }}-${{ matrix.arch }}
- name: Upload artifact for windows
if: matrix.os == 'windows'
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: cloud-node-manager-${{ matrix.os }}-${{ matrix.arch }}
path: bin/azure-cloud-node-manager-${{ matrix.os }}-${{ matrix.arch }}.exe
if-no-files-found: error
build-acr-credential-provider:
runs-on: ubuntu-latest
strategy:
matrix:
include:
- os: linux
arch: amd64
- os: linux
arch: arm
- os: linux
arch: arm64
- os: windows
arch: amd64
steps:
- name: Harden Runner
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
- name: Setup Golang
uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
with:
go-version-file: go.mod
- name: Build binary for linux
if: matrix.os == 'linux'
run: |
rm -rf ./bin
ARCH=${{ matrix.arch }} make bin/azure-acr-credential-provider
mv bin/azure-acr-credential-provider bin/azure-acr-credential-provider-${{ matrix.os }}-${{ matrix.arch }}
- name: Build binary for windows
if: matrix.os == 'windows'
run: |
rm -rf ./bin
ARCH=${{ matrix.arch }} make bin/azure-acr-credential-provider.exe
mv bin/azure-acr-credential-provider.exe bin/azure-acr-credential-provider-${{ matrix.os }}-${{ matrix.arch }}.exe
- name: Upload artifact for linux
if: matrix.os == 'linux'
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: acr-credential-provider-${{ matrix.os }}-${{ matrix.arch }}
path: bin/azure-acr-credential-provider-${{ matrix.os }}-${{ matrix.arch }}
- name: Upload artifact for windows
if: matrix.os == 'windows'
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: acr-credential-provider-${{ matrix.os }}-${{ matrix.arch }}
path: bin/azure-acr-credential-provider-${{ matrix.os }}-${{ matrix.arch }}.exe
if-no-files-found: error
publish:
runs-on: ubuntu-latest
needs:
- build-cloud-controller-manager
- build-cloud-node-manager
- build-acr-credential-provider
permissions:
contents: write
pull-requests: write
steps:
- name: Harden Runner
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4.1.6
with:
ref: documentation
fetch-depth: 0
- name: Setup Golang
uses: actions/setup-go@cdcb36043654635271a94b9a6d1392de5bb323a7 # v5.0.1
with:
go-version: '>=1.22'
check-latest: true
- name: Generate release note
env:
GITHUB_TOKEN: ${{ github.token }}
run: |
./hack/generate-release-note.sh ${GITHUB_REF_NAME} release-notes.md true
- name: Download artifacts
uses: actions/download-artifact@65a9edc5881444af0b9093a5e628f2fe47ea3b2e # v4.1.7
with:
path: ./artifacts
- name: Publish release
uses: softprops/action-gh-release@69320dbe05506a9a39fc8ae11030b214ec2d1f87 # v2.0.5
with:
body_path: release-notes.md
draft: true
files: |
./artifacts/cloud-node-manager-*-*/*
./artifacts/cloud-controller-manager-*-*/*
./artifacts/acr-credential-provider-*-*/*
- name: Update site release note
uses: peter-evans/create-pull-request@6d6857d36972b65feb161a90e484f2984215f83e # v6.0.5
with:
branch: doc/release-note-${{github.ref_name}}
delete-branch: true
base: documentation
commit-message: Update release notes for ${{github.ref_name}}
add-paths: |
./content/en/blog/releases/*.md
title: Update release notes for ${{github.ref_name}}
labels: |
lgtm
approved
body: |
Auto-generated by GitHub Action [Release](https://github.com/${{github.repository}}/actions/runs/${{github.run_id}})
#### What type of PR is this?
/kind documentation
#### What this PR does / why we need it:
New release published.
#### Does this PR introduce a user-facing change?
```release-note
None
```