62 lines
1.8 KiB
Bash
Executable File
62 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Deploy External Buildah Build System
|
|
# Sets up complete external build environment for Drone CI
|
|
|
|
set -e
|
|
|
|
echo "🚀 Deploying External Buildah Build System"
|
|
echo "============================================="
|
|
|
|
NAMESPACE="apps--droneio--prd"
|
|
|
|
# Check if namespace exists
|
|
if ! kubectl get namespace $NAMESPACE >/dev/null 2>&1; then
|
|
echo "❌ Namespace $NAMESPACE not found!"
|
|
exit 1
|
|
fi
|
|
|
|
echo "✅ Namespace $NAMESPACE verified"
|
|
|
|
# Deploy RBAC if not exists
|
|
echo "🔐 Setting up RBAC..."
|
|
if kubectl get serviceaccount drone-buildah-sa -n $NAMESPACE >/dev/null 2>&1; then
|
|
echo "✅ ServiceAccount already exists"
|
|
else
|
|
kubectl apply -f buildah-rbac.yaml
|
|
echo "✅ RBAC deployed"
|
|
fi
|
|
|
|
# Deploy external Buildah service
|
|
echo "🏗️ Deploying external Buildah service..."
|
|
kubectl apply -f buildah-external-deployment.yaml
|
|
|
|
echo "⏳ Waiting for Buildah pod to be ready..."
|
|
kubectl wait --for=condition=ready pod -l app=buildah-external -n $NAMESPACE --timeout=60s
|
|
|
|
# Update pod references
|
|
echo "🔄 Updating configuration files..."
|
|
./update-buildah-pod.sh
|
|
|
|
# Test the setup
|
|
echo "🧪 Testing build system..."
|
|
./manage-external-buildah.sh test
|
|
|
|
# Show status
|
|
echo ""
|
|
echo "📊 Deployment Status"
|
|
echo "===================="
|
|
kubectl get pods -n $NAMESPACE | grep -E "(NAME|buildah|drone)"
|
|
|
|
echo ""
|
|
echo "✅ External Buildah Build System deployed successfully!"
|
|
echo ""
|
|
echo "🎯 Next Steps:"
|
|
echo "1. Test with: ./manage-external-buildah.sh status"
|
|
echo "2. Use config: cp .drone.yml.external-buildah-production .drone.yml"
|
|
echo "3. Commit and push to trigger build"
|
|
echo ""
|
|
echo "📋 Available configurations:"
|
|
echo " .drone.yml.external-buildah - Basic external build"
|
|
echo " .drone.yml.external-buildah-advanced - Advanced with error handling"
|
|
echo " .drone.yml.external-buildah-production - Production-ready version" |