Compare commits

...

6 commits

Author SHA1 Message Date
8c29462db6 Merge pull request 'feat: add longhorn application' (#4) from dev into main
Reviewed-on: #4
2026-06-13 18:52:16 +00:00
465121a3cc fixup! fix(actions): skip longhorn application as it requires direct kernel access
All checks were successful
/ validate (pull_request) Successful in 3m27s
2026-06-13 20:46:09 +02:00
a7cef4df68 fix(actions): skip longhorn application as it requires direct kernel access
Some checks failed
/ validate (pull_request) Has been cancelled
2026-06-13 20:40:14 +02:00
4d11a48fc1 fix(longhorn): disable the pre-upgrade checker
Some checks failed
/ validate (pull_request) Failing after 6m56s
2026-06-13 20:04:20 +02:00
25f0f9c064 fix(actions): add debug step on failure
Some checks failed
/ validate (pull_request) Failing after 7m11s
2026-06-13 19:52:36 +02:00
d024585711 feat: add longhorn application
Some checks failed
/ validate (pull_request) Failing after 7m21s
2026-06-13 19:39:17 +02:00
2 changed files with 50 additions and 2 deletions

View file

@ -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
View 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