push
This commit is contained in:
+53
-23
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user