Der erste Lauf brach im Runner-Image von Gitea 1.27 ab: die JS-Aktion actions/checkout stirbt beim Aufruf von "git version" mit "read ENOTCONN" - ein Node-24-Fehler im Container, nicht unser Workflow. Der Code wird jetzt per Shell geklont. Das braucht kein Node und ist damit unabhaengig vom Image. Geholt wird flach nach Commit-SHA, ersatzweise nach Branch, falls der Server das Anfordern einzelner SHAs nicht erlaubt. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -24,13 +24,23 @@ jobs:
|
|||||||
DEPLOY_KNOWN_HOSTS: ${{ secrets.DEPLOY_KNOWN_HOSTS }}
|
DEPLOY_KNOWN_HOSTS: ${{ secrets.DEPLOY_KNOWN_HOSTS }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Code auschecken
|
# Bewusst kein actions/checkout: die JS-Aktion stirbt im Runner-Image
|
||||||
uses: actions/checkout@v4
|
# von Gitea 1.27 beim Aufruf von git mit "read ENOTCONN" (Node-24-Fehler
|
||||||
|
# im Container). Ein Klon per Shell umgeht das und braucht kein Node.
|
||||||
- name: Werkzeuge installieren
|
- name: Werkzeuge und Code holen
|
||||||
|
env:
|
||||||
|
TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
run: |
|
run: |
|
||||||
apt-get update -qq
|
apt-get update -qq
|
||||||
apt-get install -y -qq rsync openssh-client
|
apt-get install -y -qq git rsync openssh-client curl
|
||||||
|
|
||||||
|
rm -rf quelle && mkdir quelle && cd quelle
|
||||||
|
git init -q
|
||||||
|
git remote add origin "https://x-access-token:$TOKEN@${GITHUB_SERVER_URL#https://}/$GITHUB_REPOSITORY.git"
|
||||||
|
# Nach SHA, falls der Server das nicht erlaubt ersatzweise nach Branch.
|
||||||
|
git fetch -q --depth 1 origin "$GITHUB_SHA" || git fetch -q --depth 1 origin "$GITHUB_REF_NAME"
|
||||||
|
git checkout -q FETCH_HEAD
|
||||||
|
echo "Ausgecheckt: $(git log --oneline -1)"
|
||||||
|
|
||||||
- name: Konfiguration pruefen
|
- name: Konfiguration pruefen
|
||||||
run: |
|
run: |
|
||||||
@@ -63,7 +73,7 @@ jobs:
|
|||||||
--exclude='.env' --exclude='.env.*' \
|
--exclude='.env' --exclude='.env.*' \
|
||||||
--exclude='data/' --exclude='node_modules/' \
|
--exclude='data/' --exclude='node_modules/' \
|
||||||
-e 'ssh -o BatchMode=yes' \
|
-e 'ssh -o BatchMode=yes' \
|
||||||
./ "$DEPLOY_USER@$DEPLOY_HOST:$DEPLOY_PATH/" | tee uebertragen.txt
|
quelle/ "$DEPLOY_USER@$DEPLOY_HOST:$DEPLOY_PATH/" | tee uebertragen.txt
|
||||||
|
|
||||||
- name: Abhaengigkeiten, Neustart und Health-Check
|
- name: Abhaengigkeiten, Neustart und Health-Check
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
Reference in New Issue
Block a user