Files
jenkins-agent-with-docker/update-version.sh

40 lines
1016 B
Bash

#!/bin/bash
TEMP_JSON=$(mktemp)
trap 'rm -f "$TEMP_JSON"' EXIT
API_URL="https://api.github.com/repos/jenkinsci/docker-agent/releases/latest"
HTTP_CODE=$(curl -s -o "$TEMP_JSON" -w "%{http_code}" "$API_URL")
if [ $? -ne 0 ]; then
echo "Error: Network request failed."
exit 1
fi
if [ "$HTTP_CODE" != "200" ]; then
echo "Error: API returned HTTP $HTTP_CODE"
if [ -s "$TEMP_JSON" ]; then
echo "Response body:"
cat "$TEMP_JSON"
fi
exit 1
fi
LATEST_VERSION=$(jq -r '.tag_name // empty' "$TEMP_JSON")
if [ -z "$LATEST_VERSION" ] || [ "$LATEST_VERSION" == "null" ]; then
echo "Error: Failed to extract tag_name from response."
exit 1
fi
if [ -f LATEST_VERSION ]; then
CURRENT_VERSION=$(cat LATEST_VERSION)
else
CURRENT_VERSION=""
fi
if [ "$LATEST_VERSION" != "$CURRENT_VERSION" ]; then
echo "New version found: $LATEST_VERSION (Old: $CURRENT_VERSION)"
echo "$LATEST_VERSION" > LATEST_VERSION
else
echo "Already at latest version: $LATEST_VERSION"
fi