Skip to content

Merge pull request #6779 from kubernetes-sigs/dependabot/docker/relea… #234

Merge pull request #6779 from kubernetes-sigs/dependabot/docker/relea…

Merge pull request #6779 from kubernetes-sigs/dependabot/docker/relea… #234

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@5c7944e73c4c2a096b17a9cb74d65b6c2bbafbde # v2.9.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Setup Golang
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
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@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
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@5c7944e73c4c2a096b17a9cb74d65b6c2bbafbde # v2.9.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Setup Golang
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
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@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
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@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
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@5c7944e73c4c2a096b17a9cb74d65b6c2bbafbde # v2.9.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Setup Golang
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
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@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
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@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
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@5c7944e73c4c2a096b17a9cb74d65b6c2bbafbde # v2.9.1
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
ref: documentation
fetch-depth: 0
- name: Setup Golang
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
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@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
path: ./artifacts
- name: Publish release
uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 # v2.0.8
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@c5a7806660adbe173f04e3e038b0ccdcd758773c # v6.1.0
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
```