CHORE(deploy): simplify deployment using kubectl
- Use kubectl directly for deployment - Remove unnecessary abstractions
This commit is contained in:
26
.github/workflows/deploy.yml
vendored
26
.github/workflows/deploy.yml
vendored
@@ -57,20 +57,24 @@ jobs:
|
|||||||
echo "full_image=${FULL_IMAGE}" >> $GITHUB_OUTPUT
|
echo "full_image=${FULL_IMAGE}" >> $GITHUB_OUTPUT
|
||||||
echo "🐳 Deploying image: ${FULL_IMAGE}"
|
echo "🐳 Deploying image: ${FULL_IMAGE}"
|
||||||
|
|
||||||
- name: Make scripts executable
|
- name: Create namespace if not exists
|
||||||
run: |
|
run: |
|
||||||
chmod +x ./scripts/common.sh
|
kubectl create namespace ${{ env.K8S_NAMESPACE }} --dry-run=client -o yaml | kubectl apply -f -
|
||||||
chmod +x ./scripts/k8s-deploy.sh
|
|
||||||
|
|
||||||
- name: Deploy to Kubernetes using script
|
- name: Deploy to Kubernetes
|
||||||
run: |
|
run: |
|
||||||
./scripts/k8s-deploy.sh \
|
echo "🚀 Applying Kubernetes manifests..."
|
||||||
--namespace ${{ env.K8S_NAMESPACE }} \
|
kubectl apply -f deploy/k8s/ -n ${{ env.K8S_NAMESPACE }}
|
||||||
--no-build \
|
|
||||||
--app-image ${{ steps.image.outputs.full_image }} \
|
echo "🔄 Updating deployment image..."
|
||||||
--yes
|
kubectl set image deployment/jovies-app \
|
||||||
env:
|
jovies-app=${{ steps.image.outputs.full_image }} \
|
||||||
TERM: dumb
|
-n ${{ env.K8S_NAMESPACE }}
|
||||||
|
|
||||||
|
kubectl patch deployment jovies-app \
|
||||||
|
-n ${{ env.K8S_NAMESPACE }} \
|
||||||
|
--type='json' \
|
||||||
|
-p='[{"op":"replace","path":"/spec/template/spec/containers/0/imagePullPolicy","value":"IfNotPresent"}]'
|
||||||
|
|
||||||
- name: Wait for rollout to complete
|
- name: Wait for rollout to complete
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
Reference in New Issue
Block a user