This commit is contained in:
2025-09-09 16:12:24 -04:00
parent 9d3d798055
commit 8aeef814b0
+53 -23
View File
@@ -74,24 +74,29 @@ jobs:
export DOCKER_CONFIG=/tmp/docker-config export DOCKER_CONFIG=/tmp/docker-config
mkdir -p $DOCKER_CONFIG mkdir -p $DOCKER_CONFIG
# Use local IP for login - try without insecure flag first # Test local IP connectivity first
REGISTRY="$GITEA_LOCAL_IP:3000" REGISTRY="$GITEA_LOCAL_IP:3000"
echo "Attempting login to local registry: $REGISTRY" echo "Testing registry connectivity to: $REGISTRY"
# First try normal login # Test if we can reach the registry endpoint
echo "${{ secrets.token }}" | docker --config $DOCKER_CONFIG login "$REGISTRY" -u "${{ secrets.username }}" --password-stdin && { if curl -s -f "http://$REGISTRY/v2/" >/dev/null 2>&1; then
echo "REGISTRY_URL=$REGISTRY" >> $GITHUB_ENV echo "✅ Registry endpoint accessible via HTTP"
echo "✅ Local registry login successful" # Try login with local IP
} || { echo "${{ secrets.token }}" | docker --config $DOCKER_CONFIG login "$REGISTRY" -u "${{ secrets.username }}" --password-stdin && {
echo "Normal login failed, trying HTTPS domain as fallback..." echo "REGISTRY_URL=$REGISTRY" >> $GITHUB_ENV
echo "${{ secrets.token }}" | docker --config $DOCKER_CONFIG login gitea.skalas.org -u "${{ secrets.username }}" --password-stdin && { echo "✅ Local registry login successful"
echo "REGISTRY_URL=gitea.skalas.org" >> $GITHUB_ENV
echo "✅ Domain registry login successful"
} || { } || {
echo "❌ All login attempts failed" echo "❌ Local registry login failed, using domain fallback"
exit 1 echo "${{ secrets.token }}" | docker --config $DOCKER_CONFIG login gitea.skalas.org -u "${{ secrets.username }}" --password-stdin
echo "REGISTRY_URL=gitea.skalas.org" >> $GITHUB_ENV
} }
} else
echo "❌ Local registry not accessible, using domain"
echo "${{ secrets.token }}" | docker --config $DOCKER_CONFIG login gitea.skalas.org -u "${{ secrets.username }}" --password-stdin
echo "REGISTRY_URL=gitea.skalas.org" >> $GITHUB_ENV
fi
echo "Using registry: ${REGISTRY_URL:-gitea.skalas.org}"
- name: Push to Gitea registry - name: Push to Gitea registry
run: | run: |
@@ -106,17 +111,42 @@ jobs:
docker tag nfoguard:latest "$REGISTRY/jskala/nfoguard:${{ github.sha }}" docker tag nfoguard:latest "$REGISTRY/jskala/nfoguard:${{ github.sha }}"
echo "Pushing to $REGISTRY..." echo "Pushing to $REGISTRY..."
timeout 300 docker --config $DOCKER_CONFIG push "$REGISTRY/jskala/nfoguard:latest" && { echo "Image 1: $REGISTRY/jskala/nfoguard:latest"
echo "First image pushed successfully" echo "Image 2: $REGISTRY/jskala/nfoguard:${{ github.sha }}"
timeout 300 docker --config $DOCKER_CONFIG push "$REGISTRY/jskala/nfoguard:${{ github.sha }}" && {
echo "Both images pushed successfully!" # Push first image with detailed output
} || echo "Second push failed" echo "=== Pushing latest tag ==="
timeout 600 docker --config $DOCKER_CONFIG push "$REGISTRY/jskala/nfoguard:latest" 2>&1 | tee /tmp/push1.log && {
echo "✅ First image pushed successfully"
FIRST_SUCCESS=true
} || { } || {
echo "Push failed. Registry: $REGISTRY" echo "❌ First push failed"
echo "Images available:" cat /tmp/push1.log
docker images | grep nfoguard FIRST_SUCCESS=false
exit 1
} }
# Push second image
echo "=== Pushing SHA tag ==="
timeout 600 docker --config $DOCKER_CONFIG push "$REGISTRY/jskala/nfoguard:${{ github.sha }}" 2>&1 | tee /tmp/push2.log && {
echo "✅ Second image pushed successfully"
SECOND_SUCCESS=true
} || {
echo "❌ Second push failed"
cat /tmp/push2.log
SECOND_SUCCESS=false
}
# Verify what actually made it
echo "=== Verifying push results ==="
curl -s "$REGISTRY/v2/jskala/nfoguard/tags/list" || echo "Could not verify tags"
if [ "$FIRST_SUCCESS" = "true" ]; then
echo "🎉 At least one image pushed successfully!"
exit 0
else
echo "💥 Push failed"
exit 1
fi
deploy: deploy:
needs: build needs: build