Skip to content

Update Dependencies #24

Update Dependencies

Update Dependencies #24

Workflow file for this run

name: 'Update Dependencies'
on:
workflow_dispatch:
schedule:
- cron: '0 6 * * 5'
env:
GOPROXY: https://proxy.golang.org
permissions:
contents: write
pull-requests: write
jobs:
update-deps:
if: ${{ github.repository == 'kubernetes/node-problem-detector' }}
runs-on: ubuntu-22.04
steps:
- uses: actions/setup-go@v5
with:
go-version: '1.22.3'
- uses: actions/checkout@v4
- name: Update Dependencies
id: update_deps
run: |
make depup
echo 'changes<<EOF' >> $GITHUB_OUTPUT
git status --porcelain >> $GITHUB_OUTPUT
echo 'EOF' >> $GITHUB_OUTPUT
- name: Create PR
if: ${{ steps.update_deps.outputs.changes != '' }}
uses: peter-evans/create-pull-request@v6
with:
title: 'Update dependencies'
commit-message: Update dependencies
committer: github-actions <[email protected]>
author: github-actions <[email protected]>
branch: dependencies/update
branch-suffix: timestamp
base: master
delete-branch: true
labels: ok-to-test
body: |
Updating go.mod with latest dependencies...
update-go-version:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Get current Go version from Dockerfile
id: current-go-version
run: |
# Read the Dockerfile content
DOCKERFILE_CONTENT=$(cat Dockerfile)
# Extract the current Go version using regex
CURRENT_GO_VERSION=$(echo "$DOCKERFILE_CONTENT" | grep -oP 'FROM golang:\K\d+\.\d+(\.\d+)?')
echo "current_go_version=${CURRENT_GO_VERSION}" >> $GITHUB_OUTPUT
- name: Get latest Go version
id: go-version
run: |
# Fetch the Go download page and extract the latest version
LATEST_GO_VERSION=$(curl -s https://go.dev/dl/ | grep -oP 'go1\.22\.\d+' | sort -rV | head -n 1)
echo "latest_go_version=${LATEST_GO_VERSION}" >> $GITHUB_OUTPUT
- name: Update Go version
uses: jacobtomlinson/gha-find-replace@v2
with:
find: "FROM golang:${{ steps.current-go-version.outputs.current_go_version }}-bookworm as builder-base"
replace: "FROM golang:${{ steps.go-version.outputs.latest_go_version }}-bookworm as builder-base"
path: "Dockerfile"
- name: Commit and push changes (optional)
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: "Update Go version in Dockerfile"