Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion k8s/deploy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,14 @@ echo "Applying configmap..."
kubectl apply -f configmap.yaml

# Apply storage
echo "Applying persistent volume claim..."
echo "Applying persistent volume claims..."
kubectl apply -f mysql-pvc.yaml
kubectl apply -f redis-pvc.yaml

# Apply deployments
echo "Applying deployments..."
kubectl apply -f mysql-deployment.yaml
kubectl apply -f redis-deployment.yaml
kubectl apply -f php-deployment.yaml
kubectl apply -f caddy-deployment.yaml

Expand All @@ -81,6 +83,7 @@ kubectl apply -f ingress.yaml
echo ""
echo "Waiting for deployments to be ready..."
wait_for_deployment mysql
wait_for_deployment redis
wait_for_deployment php
wait_for_deployment caddy

Expand Down
40 changes: 33 additions & 7 deletions k8s/redeploy.sh
Original file line number Diff line number Diff line change
@@ -1,13 +1,39 @@
#!/bin/bash
## ./redeploy.sh # Deploy latest
## ./redeploy.sh v0.1.5 # Deploy specific version
## ./redeploy.sh a1b2c3d # Deploy specific commit

NAMESPACE="flags-api"
PHP_IMAGE="ghcr.io/mainstreamer/flags-api-php"
CADDY_IMAGE="ghcr.io/mainstreamer/flags-api-caddy"

VERSION="${1:-latest}"

echo "=== Deploying flags-api:$VERSION ==="
echo ""

# Show current versions before change
CURRENT_PHP=$(kubectl get deployment/php -n $NAMESPACE -o jsonpath='{.spec.template.spec.containers[0].image}' 2>/dev/null)
CURRENT_CADDY=$(kubectl get deployment/caddy -n $NAMESPACE -o jsonpath='{.spec.template.spec.containers[0].image}' 2>/dev/null)

echo "Current:"
echo " php: $CURRENT_PHP"
echo " caddy: $CURRENT_CADDY"
echo ""
echo "Target:"
echo " php: $PHP_IMAGE:$VERSION"
echo " caddy: $CADDY_IMAGE:$VERSION"
echo ""

echo "=== Redeploying flags-api ==="
# Set the specific image versions
kubectl set image deployment/php \
php=$PHP_IMAGE:$VERSION \
-n $NAMESPACE

# Restart deployments to pull latest images
echo "Restarting deployments..."
kubectl rollout restart deployment/php deployment/caddy -n $NAMESPACE
kubectl set image deployment/caddy \
caddy=$CADDY_IMAGE:$VERSION \
-n $NAMESPACE

# Wait for rollouts to complete
# Wait for rollouts
echo ""
echo "Waiting for php..."
kubectl rollout status deployment/php -n $NAMESPACE --timeout=120s
Expand All @@ -17,5 +43,5 @@ echo "Waiting for caddy..."
kubectl rollout status deployment/caddy -n $NAMESPACE --timeout=120s

echo ""
echo "=== Redeploy Complete ==="
echo "=== Deploy Complete ==="
kubectl get pods -n $NAMESPACE