Files
Sankofa/scripts/fix-provider-image.sh

55 lines
1.8 KiB
Bash
Raw Normal View History

#!/bin/bash
# Script to fix provider image in containerd
# Removes all old images and imports the fixed one
set -e
IMAGE_TAR="/tmp/crossplane-latest-fixed.tar"
echo "=========================================="
echo "Fixing Provider Image in Containerd"
echo "=========================================="
echo ""
if [ ! -f "$IMAGE_TAR" ]; then
echo "❌ Error: Image tar file not found: $IMAGE_TAR"
exit 1
fi
echo "✅ Image tar file found: $IMAGE_TAR"
echo ""
echo "Step 1: Removing all old crossplane-provider-proxmox images..."
sudo ctr -n k8s.io images rm docker.io/library/crossplane-provider-proxmox:latest 2>/dev/null || echo " (latest not found or already removed)"
sudo ctr -n k8s.io images rm docker.io/library/crossplane-provider-proxmox:v1.0.0-fixed 2>/dev/null || echo " (v1.0.0-fixed not found or already removed)"
# Try to remove by digest if they exist
sudo ctr -n k8s.io images rm sha256:5d83df9f8d127aa8988ace01254f4adbb6336f0ad59be8193349b3eacd972cfc 2>/dev/null || echo " (old image by digest not found)"
echo ""
echo "Step 2: Listing remaining crossplane images..."
sudo ctr -n k8s.io images ls | grep crossplane-provider-proxmox || echo " (no crossplane images found - good!)"
echo ""
echo "Step 3: Importing the fixed image..."
if sudo ctr -n k8s.io images import "$IMAGE_TAR"; then
echo "✅ Image imported successfully"
else
echo "❌ Failed to import image"
exit 1
fi
echo ""
echo "Step 4: Verifying import..."
sudo ctr -n k8s.io images ls | grep crossplane-provider-proxmox
echo ""
echo "=========================================="
echo "Image Fix Complete!"
echo "=========================================="
echo ""
echo "Next: Restart the provider pod:"
echo " kubectl delete pod -n crossplane-system -l app=crossplane-provider-proxmox"
echo ""