|
|
|
|
@@ -200,12 +200,10 @@ jobs:
|
|
|
|
|
find packages -name "*.apk" -exec bash -c 'echo "Package: $(basename "$1")"; echo "Size: $(du -h "$1" | cut -f1)"; echo "---"' _ {} \;
|
|
|
|
|
|
|
|
|
|
- name: Upload packages as artifacts
|
|
|
|
|
uses: actions/upload-artifact@v4
|
|
|
|
|
uses: actions/upload-artifact@v3
|
|
|
|
|
with:
|
|
|
|
|
name: zabbix-apk-packages-${{ gitea.run_number }}
|
|
|
|
|
path: |
|
|
|
|
|
zabbix-apk-builder/packages/**/*.apk
|
|
|
|
|
!zabbix-apk-builder/packages/**/APKINDEX.tar.gz
|
|
|
|
|
path: zabbix-apk-builder/packages/**/*.apk
|
|
|
|
|
retention-days: 30
|
|
|
|
|
if-no-files-found: error
|
|
|
|
|
|
|
|
|
|
@@ -216,9 +214,9 @@ jobs:
|
|
|
|
|
|
|
|
|
|
steps:
|
|
|
|
|
- name: Download packages
|
|
|
|
|
uses: actions/download-artifact@v4
|
|
|
|
|
uses: actions/download-artifact@v3
|
|
|
|
|
with:
|
|
|
|
|
name: zabbix-apk-packages
|
|
|
|
|
name: zabbix-apk-packages-${{ gitea.run_number }}
|
|
|
|
|
path: packages/
|
|
|
|
|
|
|
|
|
|
- name: Test deployment in Alpine container
|
|
|
|
|
@@ -227,34 +225,58 @@ jobs:
|
|
|
|
|
|
|
|
|
|
echo "=== Testing package installation ==="
|
|
|
|
|
|
|
|
|
|
# Verify packages were downloaded
|
|
|
|
|
if [[ ! -d "packages" ]] || [[ -z "$(ls -A packages/ 2>/dev/null)" ]]; then
|
|
|
|
|
echo "ERROR: No packages found for testing"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
# Debug: Show what was actually downloaded
|
|
|
|
|
echo "Downloaded packages:"
|
|
|
|
|
ls -la packages/
|
|
|
|
|
echo "Builder directory:"
|
|
|
|
|
ls -la packages/builder/ 2>/dev/null || echo "No builder directory"
|
|
|
|
|
echo "x86_64 directory:"
|
|
|
|
|
ls -la packages/builder/x86_64/ 2>/dev/null || echo "No x86_64 directory"
|
|
|
|
|
echo "All .apk files:"
|
|
|
|
|
find packages/ -name "*.apk" -type f 2>/dev/null || echo "No .apk files found"
|
|
|
|
|
|
|
|
|
|
# Use known paths - packages are uploaded from zabbix-apk-builder/packages/**/*.apk
|
|
|
|
|
# and downloaded to packages/, so they should be in packages/builder/x86_64/
|
|
|
|
|
PACKAGE_DIR="packages/builder/x86_64"
|
|
|
|
|
AGENT_PKG="$PACKAGE_DIR/zabbix-agent-7.4.2-r0.apk"
|
|
|
|
|
PROXY_PKG="$PACKAGE_DIR/zabbix-proxy-7.4.2-r0.apk"
|
|
|
|
|
|
|
|
|
|
# Test agent package
|
|
|
|
|
if ls packages/zabbix-agent-*.apk >/dev/null 2>&1; then
|
|
|
|
|
echo "Testing agent package..."
|
|
|
|
|
docker run --rm -v "${PWD}/packages:/packages" alpine:latest sh -c "
|
|
|
|
|
apk add --allow-untrusted /packages/zabbix-agent-*.apk
|
|
|
|
|
if [[ -f "$AGENT_PKG" ]]; then
|
|
|
|
|
echo "Testing agent package at: $AGENT_PKG"
|
|
|
|
|
echo "File size: $(du -h "$AGENT_PKG")"
|
|
|
|
|
|
|
|
|
|
# Create container, copy package, install and test
|
|
|
|
|
CONTAINER_ID=$(docker run -d alpine:latest sleep 30)
|
|
|
|
|
docker cp "$AGENT_PKG" "$CONTAINER_ID:/$(basename "$AGENT_PKG")"
|
|
|
|
|
docker exec "$CONTAINER_ID" sh -c "
|
|
|
|
|
ls -la /$(basename "$AGENT_PKG")
|
|
|
|
|
apk add --allow-untrusted /$(basename "$AGENT_PKG")
|
|
|
|
|
which zabbix_agentd
|
|
|
|
|
zabbix_agentd --version
|
|
|
|
|
" && echo "✅ Agent test passed" || echo "❌ Agent test failed"
|
|
|
|
|
docker rm -f "$CONTAINER_ID" >/dev/null
|
|
|
|
|
else
|
|
|
|
|
echo "⚠️ No agent package found"
|
|
|
|
|
echo "⚠️ Agent package not found at $AGENT_PKG"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# Test proxy package
|
|
|
|
|
if ls packages/zabbix-proxy-*.apk >/dev/null 2>&1; then
|
|
|
|
|
echo "Testing proxy package..."
|
|
|
|
|
docker run --rm -v "${PWD}/packages:/packages" alpine:latest sh -c "
|
|
|
|
|
apk add --allow-untrusted /packages/zabbix-proxy-*.apk
|
|
|
|
|
if [[ -f "$PROXY_PKG" ]]; then
|
|
|
|
|
echo "Testing proxy package at: $PROXY_PKG"
|
|
|
|
|
echo "File size: $(du -h "$PROXY_PKG")"
|
|
|
|
|
|
|
|
|
|
# Create container, copy package, install and test
|
|
|
|
|
CONTAINER_ID=$(docker run -d alpine:latest sleep 30)
|
|
|
|
|
docker cp "$PROXY_PKG" "$CONTAINER_ID:/$(basename "$PROXY_PKG")"
|
|
|
|
|
docker exec "$CONTAINER_ID" sh -c "
|
|
|
|
|
ls -la /$(basename "$PROXY_PKG")
|
|
|
|
|
apk add --allow-untrusted /$(basename "$PROXY_PKG")
|
|
|
|
|
which zabbix_proxy
|
|
|
|
|
zabbix_proxy --version
|
|
|
|
|
" && echo "✅ Proxy test passed" || echo "❌ Proxy test failed"
|
|
|
|
|
docker rm -f "$CONTAINER_ID" >/dev/null
|
|
|
|
|
else
|
|
|
|
|
echo "⚠️ No proxy package found"
|
|
|
|
|
echo "⚠️ Proxy package not found at $PROXY_PKG"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo "✅ Package deployment test completed"
|