renamed the stuff and stuff to do stff on stuff blablabla
Build Hugo / build (push) Successful in 6m17s
Build Hugo / deploy (push) Failing after 47s

This commit is contained in:
2026-08-21 23:25:46 +00:00
parent 9fc7c371c5
commit a4b9e5a040
2 changed files with 60 additions and 26 deletions
@@ -98,34 +98,68 @@ jobs:
&& echo "NetBird management connected." \
|| { echo "::error title=NetBird not connected::Management not connected after netbird up."; exit 1; }
- name: Deploy to RPIC-Cluster
# RPIC cluster is temporarily out of service. Don't let its failure
# block the Gimli deploy or fail the whole job. Remove this line once
# the cluster is back.
continue-on-error: true
uses: appleboy/ssh-action@v1
- name: Install kubectl
uses: azure/setup-kubectl@v4
with:
host: ${{ secrets.RPIC_HOST }}
username: ${{ secrets.SSH_USER }}
key: ${{ secrets.RPIC_KEY }}
port: ${{ secrets.SSH_PORT }}
script: 'kubectl rollout restart deployment blog -n blog-ahmza-com'
version: 'v1.36.2'
- name: Configure Kubernetes access
env:
KUBE_CONFIG: ${{ secrets.TALOS_PROD_KUBE_CONFIG }}
run: |
mkdir -p "$HOME/.kube"
printf '%s' "$KUBE_CONFIG" \
| base64 -d \
> "$HOME/.kube/config"
chmod 600 "$HOME/.kube/config"
- name: Verify Kubernetes access
run: |
kubectl version --client
echo "Deployment patch:"
kubectl auth can-i patch deployments \
-n blog-ahmza-com
echo "Secret read:"
kubectl auth can-i get secrets \
-n blog-ahmza-com
kubectl -n blog-ahmza-com get deployment blog
- name: Deploy to Kubernetes
env:
IMAGE: tea.ahmza.com/ahmza/blog-ahmza-com:${{ gitea.event.head_commit.id }}
run: |
set -eu
echo "Deploying:"
echo "$IMAGE"
kubectl -n blog-ahmza-com \
set image deployment/blog \
blog="$IMAGE"
if ! kubectl -n blog-ahmza-com \
rollout status deployment/blog \
--timeout=5m
then
echo "::error::Deployment failed; rolling back"
kubectl -n blog-ahmza-com \
rollout undo deployment/blog
kubectl -n blog-ahmza-com \
rollout status deployment/blog \
--timeout=5m
exit 1
fi
kubectl -n blog-ahmza-com get pods -o wide
- name: Deploy to Gimli
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.GIMLI_HOST }}
username: ${{ secrets.SSH_USER }}
key: ${{ secrets.GIMLI_KEY }}
port: ${{ secrets.SSH_PORT }}
# Pull first, then reconcile in place with `up -d`. Avoid `compose down`:
# it removes caddy_cf and the default network, which severs the SSH
# session's own path before `up` can restore it (intermittent
# "remote command exited without exit status"). `up -d` only recreates
# containers whose image/config changed and never tears the network out
# from under the connection. --force-recreate ensures the new :latest
# image is picked up even when the tag digest changed.
script: 'docker compose pull && docker compose up -d --force-recreate --remove-orphans'
- name: NetBird diagnostics & disconnect
# Runs even on failure: captures final state for debugging and tears the