feat: add longhorn application #4
2 changed files with 50 additions and 2 deletions
|
|
@ -48,17 +48,39 @@ jobs:
|
|||
kubectl rollout status deployment/sealed-secrets-controller -n kube-system --timeout=60s
|
||||
|
||||
- name: Apply ArgoCD apps
|
||||
run: kubectl apply -f apps/
|
||||
run: |
|
||||
for f in apps/*.yaml; do
|
||||
case "$f" in
|
||||
apps/longhorn.yaml) echo "Skipping $f" ;;
|
||||
*) kubectl apply -f "$f" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
- name: Wait for ArgoCD sync
|
||||
run: |
|
||||
sleep 10
|
||||
kubectl wait applications \
|
||||
--all \
|
||||
--namespace argocd \
|
||||
--for=jsonpath='{.status.health.status}'=Healthy \
|
||||
--timeout=300s
|
||||
|
||||
- name: Debug on failure
|
||||
if: failure()
|
||||
run: |
|
||||
echo "=== Applications ==="
|
||||
kubectl get applications -n argocd
|
||||
echo "=== Pods (all namespaces) ==="
|
||||
kubectl get pods --all-namespaces
|
||||
echo "=== Failed pods logs ==="
|
||||
kubectl get pods --all-namespaces --field-selector=status.phase!=Running,status.phase!=Succeeded \
|
||||
-o jsonpath='{range .items[*]}{.metadata.namespace}{" "}{.metadata.name}{"\n"}{end}' | \
|
||||
while read ns pod; do
|
||||
echo "--- $ns/$pod ---"
|
||||
kubectl logs -n $ns $pod --all-containers --tail=50 2>/dev/null || true
|
||||
done
|
||||
echo "=== Events ==="
|
||||
kubectl get events --all-namespaces --sort-by='.lastTimestamp' | tail -50
|
||||
|
||||
- name: Wait for all deployments
|
||||
run: kubectl wait --for=condition=available --timeout=300s deployment --all --all-namespaces
|
||||
|
||||
|
|
|
|||
26
apps/longhorn.yaml
Normal file
26
apps/longhorn.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
apiVersion: argoproj.io/v1alpha1
|
||||
kind: Application
|
||||
metadata:
|
||||
name: longhorn
|
||||
namespace: argocd
|
||||
spec:
|
||||
project: default
|
||||
source:
|
||||
repoURL: https://charts.longhorn.io
|
||||
chart: longhorn
|
||||
targetRevision: 1.12.0
|
||||
helm:
|
||||
values: |
|
||||
preUpgradeChecker:
|
||||
jobEnabled: false
|
||||
defaultSettings:
|
||||
defaultReplicaCount: 3
|
||||
destination:
|
||||
server: https://kubernetes.default.svc
|
||||
namespace: longhorn-system
|
||||
syncPolicy:
|
||||
automated:
|
||||
prune: true
|
||||
selfHeal: true
|
||||
syncOptions:
|
||||
- CreateNamespace=true
|
||||
Loading…
Add table
Reference in a new issue