diff --git a/ansible/templates/update-forgejo.sh.j2 b/ansible/templates/update-forgejo.sh.j2 index 713b2e1..fe90dec 100644 --- a/ansible/templates/update-forgejo.sh.j2 +++ b/ansible/templates/update-forgejo.sh.j2 @@ -48,22 +48,16 @@ get_latest_version() { log "Checking for the latest Forgejo version..." # Fetch the latest version from the Forgejo API with error handling - local api_response - api_response=$(curl -s --max-time 10 https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest) - - # Log the full API response for debugging - log "API Response: $api_response" - - # Extract version using grep and sed local latest_version - latest_version=$(echo "$api_response" | grep -oP '(?<="tag_name":"v)[0-9.]+') + latest_version=$(curl -s --max-time 10 https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | \ + jq -r '.tag_name' | \ + sed 's/^v//') if [ -z "$latest_version" ]; then - log "ERROR: Failed to extract version from API response." + log "ERROR: Failed to retrieve the latest version from Codeberg API." exit 1 fi - log "Extracted latest version: $latest_version" echo "$latest_version" }