Skip to content

Commit

Permalink
Merge pull request #1 from surajkumar/update-jib-base-image
Browse files Browse the repository at this point in the history
GHA to update jib image with the latest version
  • Loading branch information
surajkumar authored Sep 27, 2024
2 parents b359b3c + 9c12e2c commit 64a647d
Showing 1 changed file with 68 additions and 0 deletions.
68 changes: 68 additions & 0 deletions .github/workflows/update-jib-base-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Auto-Update Jib Base Image

on:
workflow_dispatch:
schedule:
- cron: "0 0 * * 5" # Every Friday at Midnight

jobs:
update_build_gradle:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install GitHub CLI
run: |
sudo apt-get update
sudo apt-get install gh
- name: Run bash script
run: |
# Extract current version from JShellAPI build.gradle
gradle_file="JShellAPI/build.gradle"
current_version=$(grep -oP "(?<=from\.image\s=\s'eclipse-temurin:)\d+" $gradle_file)
if [ -z "$current_version" ]; then
echo "Failed to extract version from $gradle_file \"from.image\""
exit 1
fi
# Fetch the latest eclipse-temurin image
latest_version=$(curl -s "https://hub.docker.com/v2/repositories/library/eclipse-temurin/tags/?page_size=100" | \
jq -r '[.results[].name | select(test("^[0-9]+"))] | map(capture("^(?<major>[0-9]+)")) | max_by(.major | tonumber) | .major')
# Check if a new version is available
if [ "$latest_version" -le "$current_version" ]; then
echo "No new versions available"
exit 1
fi
# Update the build.gradle with the new version
sed -i "s/eclipse-temurin:$current_version/eclipse-temurin:$latest_version/" $gradle_file
echo "Updated eclipse-temurin version from $current_version to $latest_version"
- name: Commit changes
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
# Create a new branch
branch_name="update-eclipse-temurin-$latest_version"
git checkout -b "$branch_name"
# Add and commit the changes
git add JShellAPI/build.gradle
git commit -m "Update eclipse-temurin version to $latest_version"
# Push the new branch to the remote repository
git push origin "$branch_name"
- name: Create a pull request
run: |
gh pr create --title "Update eclipse-temurin version to $latest_version" \
--body "This PR updates the eclipse-temurin version in the JShellAPI build.gradle file from $current_version to $latest_version." \
--head "$branch_name" \
--base "main"

0 comments on commit 64a647d

Please sign in to comment.