fix: streamline Kubernetes deployment process by removing SSH and adding kubectl installation
Build and Deploy to Kubernetes / publish-packages (push) Successful in 1m13s
Build and Deploy to Kubernetes / build-and-deploy (push) Has been cancelled

This commit is contained in:
masoodafar-web
2026-01-29 05:54:44 +03:30
parent cabf3886de
commit 5b0558ee24
+19 -18
View File
@@ -136,26 +136,27 @@ jobs:
- name: Deploy to Kubernetes
run: |
echo "🚀 Deploying to Kubernetes via SSH..."
echo "🚀 Deploying to Kubernetes..."
# Install SSH client
apk add --no-cache openssh-client sshpass
# Install kubectl
apk add --no-cache curl
curl -LO "https://dl.k8s.io/release/v1.28.0/bin/linux/amd64/kubectl"
chmod +x kubectl && mv kubectl /usr/local/bin/
# Deploy via SSH to k8s master
export SSHPASS="${{ secrets.SERVER_PASSWORD }}"
sshpass -e ssh -o StrictHostKeyChecking=no root@${{ env.K8S_SERVER }} "
set -e
echo '🔄 Restarting deployment to pull latest image...'
kubectl rollout restart deployment/cms
echo '⏳ Waiting for rollout...'
kubectl rollout status deployment/cms --timeout=180s
echo ''
echo '✅ Deployment successful!'
kubectl get pods -l app=cms -o wide
"
# Setup kubeconfig
mkdir -p ~/.kube
echo "${{ secrets.KUBECONFIG }}" | base64 -d > ~/.kube/config
# Deploy
echo '🔄 Restarting deployment...'
kubectl rollout restart deployment/cms
echo '⏳ Waiting for rollout...'
kubectl rollout status deployment/cms --timeout=180s
echo ''
echo '✅ Deployment successful!'
kubectl get pods -l app=cms -o wide
- name: Build and Push Complete
run: |