@@ -3,7 +3,7 @@ name: Sync to OpenCoDE
33on :
44 workflow_dispatch :
55 schedule :
6- - cron : ' 0 4-20 * * *' # von 6 bis 22 Uhr
6+ - cron : ' 0 4-20 * * *' # stündlich 04–20 UTC (~06– 22 Uhr Berlin)
77
88jobs :
99 sync :
1414 with :
1515 fetch-depth : 0
1616 persist-credentials : false
17- ref : ' develop'
18- - name : git-sync
17+ ref : develop
18+
19+ - name : Configure Git for tiny push chunks (~5MB)
20+ run : |
21+ git config --global safe.directory "$GITHUB_WORKSPACE"
22+ # sehr kleine Packs -> mehrere kleine HTTP-Requests statt eines großen
23+ git config --global pack.packSizeLimit 5m
24+ git config --global pack.window 0
25+ git config --global pack.threads 1
26+ # Fallbacks / Stabilität über HTTP
27+ git config --global http.version HTTP/1.1
28+ git config --global http.postBuffer 5242880 || true # legacy, falls noch unterstützt
29+ git config --global http.lowSpeedLimit 0
30+ git config --global http.lowSpeedTime 0
31+
32+ - name : Add remote and prefetch target branch (if exists)
33+ run : |
34+ git remote add opencode "https://OC000005112572:${{ secrets.GITLAB_PERSONAL_ACCESS_TOKEN }}@gitlab.opencode.de/OC000005112572/kolibri.git"
35+ # Prefetch, damit Git Deltas gegen die Remote-History bilden kann (reduziert Packgröße)
36+ git fetch opencode develop || true
37+
38+ - name : Push develop to OpenCoDE (forced, tiny chunks, with retries)
39+ env :
40+ GIT_HTTP_MAX : 5m
1941 run : |
20- git remote add opencode https://OC000005112572:${{ secrets.GITLAB_PERSONAL_ACCESS_TOKEN }}@gitlab.opencode.de/OC000005112572/kolibri.git
21- git push opencode -f
42+ set -e
43+ # zusätzlicher, einmaliger Versuch mit expliziten -c Overrides
44+ for i in 1 2 3; do
45+ git -c pack.packSizeLimit=5m -c pack.window=0 -c pack.threads=1 \
46+ push opencode develop:develop --force && break || {
47+ echo "Push failed (attempt $i). Retrying in 10s…"
48+ sleep 10
49+ }
50+ done
0 commit comments