Skip to content

build(deps): bump k8s.io/apimachinery from 0.34.0-alpha.0 to 0.34.0-alpha.1 #25

build(deps): bump k8s.io/apimachinery from 0.34.0-alpha.0 to 0.34.0-alpha.1

build(deps): bump k8s.io/apimachinery from 0.34.0-alpha.0 to 0.34.0-alpha.1 #25

Workflow file for this run

name: Release
on:
pull_request:
types: [ closed ]
branches:
- main
jobs:
release-tag:
if: ${{ (github.event.pull_request.merged == true) && (contains(github.event.pull_request.labels.*.name, 'release')) }}
runs-on: ubuntu-24.04
steps:
- name: Generate token from GitHub App
id: generate-token
uses: tibdex/github-app-token@3beb63f4bd073e61482598c45c71c1019b59b73a # v2.1.0
with:
app_id: ${{ secrets.APP_PUSH_TAG_ID }}
private_key: ${{ secrets.APP_PUSH_TAG_PRIVATE_KEY }}
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
token: ${{ steps.generate-token.outputs.token }}
fetch-tags: true
fetch-depth: 0
submodules: recursive
- name: Import GPG key
env:
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
run: |
echo "$GPG_PRIVATE_KEY" | gpg --batch --import
echo "use-agent" >> ~/.gnupg/gpg.conf
echo "pinentry-mode loopback" >> ~/.gnupg/gpg.conf
echo "allow-loopback-pinentry" >> ~/.gnupg/gpg-agent.conf
echo RELOADAGENT | gpg-connect-agent
git config --global user.name "GitHub CI Bot"
git config --global user.email "github-ci[bot]@users.noreply.github.com"
git config --global user.signingkey "${{ secrets.GPG_KEY_ID }}"
git config --global commit.gpgsign true
git config --global tag.gpgSign true
git config --global gpg.program gpg
- name: Ensure initial tag exists
run: |
if [ -z "$(git tag)" ]; then
echo "No tags found. Creating v0.0.0 from main."
git fetch origin main --tags
git tag -a v0.0.0 origin/main -m "Initial tag" --local-user "$(git config user.signingkey)"
git push origin "refs/tags/v0.0.0"
else
echo "Tags already exist. Skipping initial tag creation."
fi
- name: Checkout build (taskfiles) repo
run: |
git clone https://github.com/openkcm/build.git ./hack/common
- name: Install Task
uses: arduino/setup-task@b91d5d2c96a56797b48ac1e0e89220bf64044611 #v2.0.0
with:
version: 3.x
- name: Set up environment
run: |
echo "repo_name=$(basename "$GITHUB_REPOSITORY")" >> $GITHUB_ENV
echo "version=$(task next-release-version)" >> $GITHUB_ENV
- name: Generate Build Version
uses: hashicorp/actions-generate-metadata@f6f1ca9cededa05d841a58d171064faf3de8ec74 #main
with:
repositoryOwner: ${{ github.repository_owner }}
repository: ${{ github.repository }}
version: ${{ env.version }}
product: ${{ env.repo_name }}
metadataFileName: ${{ github.workspace }}/build_version.json
- name: Print Build Version
run: cat ${{ github.workspace }}/build_version.json
- name: Generate SBOM
run: |
task cyclonedxgomod:app --verbose
- name: Run Trivy sbom vulnerability scanner
uses: aquasecurity/trivy-action@76071ef0d7ec797419534a183b498b4d6366cf37 #v0.31.0
with:
scan-type: 'sbom'
scan-ref: "${{ env.repo_name }}-sbom.json"
format: 'json'
output: 'trivy-sbom-vuln.json'
- name: Run trivy repository security scanner
uses: aquasecurity/trivy-action@76071ef0d7ec797419534a183b498b4d6366cf37 #v0.31.0
with:
token-setup-trivy: ${{ steps.generate-token.outputs.token }}
scan-type: repository
format: json
output: trivy-repository-vuln.json
severity: CRITICAL,HIGH,MEDIUM
- name: Run tfsec security scanner
uses: aquasecurity/tfsec-action@b466648d6e39e7c75324f25d83891162a721f2d6 #v1.0.3
with:
github_token: ${{ steps.generate-token.outputs.token }}
format: json
- name: Build Changelog
id: github_release
uses: mikepenz/release-changelog-builder-action@5fb6e51e44d4aea73f66549f425aa3ed5008109e # v5
with:
mode: "release"
configurationJson: |
{
"template": "#{{CHANGELOG}}",
"pr_template": "- #{{TITLE}}: ##{{NUMBER}}",
"categories": [
{
"title": "## Feature",
"labels": ["feat", "feature"]
},
{
"title": "## Fix",
"labels": ["fix", "bug"]
},
{
"title": "## Other",
"labels": []
}
],
"label_extractor": [
{
"pattern": "^(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test){1}(\\([\\w\\-\\.]+\\))?(!)?: ([\\w ])+([\\s\\S]*)",
"on_property": "title",
"target": "$1"
}
],
"exclude": {
"pattern": "^chore:\s*release",
"labels": "release"
}
}
- name: Create signed tag from main
run: |
git fetch origin main --tags
git tag -a "${{ env.version }}" origin/main -m "Release ${{ env.version }}" --local-user "$(git config user.signingkey)"
git push origin "refs/tags/${{ env.version }}"
env:
GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }}
- name: Create GitHub release
uses: softprops/action-gh-release@72f2c25fcb47643c292f7107632f7a47c1df5cd8 # v2.3.2
with:
tag_name: ${{ env.version }}
name: Release ${{ env.version }}
body: ${{steps.github_release.outputs.changelog}}
files: |
*sbom.json
*vuln.json
draft: true
prerelease: false
env:
GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }}