Files
Zabbix/zabbix-alpine-builder/test-version-check.sh

43 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Test script for version checking logic
# This script simulates the version check workflow to ensure it works correctly
set -euo pipefail
echo "=== Zabbix Version Check Test ==="
# Test the API endpoint and version extraction
echo "Testing version check API..."
LATEST_VERSION=$(curl -s "https://git.zabbix.com/rest/api/1.0/projects/ZBX/repos/zabbix/tags?limit=100" | \
jq -r '.values[].displayId' | \
grep -E '^[0-9]+\.[0-9]+\.[0-9]+$' | \
grep -v 'rc\|beta\|alpha' | \
sort -V | \
tail -1)
# Validate version format
if [[ ! "$LATEST_VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "❌ Error: Invalid version format detected: $LATEST_VERSION"
exit 1
fi
echo "✅ Latest upstream version: $LATEST_VERSION"
# Extract current version from APKBUILD
CURRENT_VERSION=$(grep '^pkgver=' zabbix/APKBUILD | cut -d'=' -f2)
echo "✅ Current package version: $CURRENT_VERSION"
# Compare versions
if [ "$LATEST_VERSION" = "$CURRENT_VERSION" ]; then
echo "✅ No new version available. Current version $CURRENT_VERSION is up to date."
echo " Build would be skipped in CI/CD."
else
echo "🔄 New version available: $LATEST_VERSION"
echo " Build would be triggered in CI/CD."
fi
echo ""
echo "=== Test completed successfully ==="