Cleanup, Live Reload added, Gitea actions for deploying to Strato added
Deploy / build-and-deploy (push) Failing after 42s
Deploy / build-and-deploy (push) Failing after 42s
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
runs-on: ubuntu-latest
|
||||
container: node:20-bookworm
|
||||
steps:
|
||||
- name: Code auschecken
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Node-Abhängigkeiten installieren
|
||||
run: npm ci
|
||||
|
||||
- name: CSS bauen
|
||||
run: npm run build:css
|
||||
|
||||
- name: Deploy-Tools installieren
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y --no-install-recommends openssh-client rsync
|
||||
|
||||
# Benötigte Repo-Secrets (Gitea: Repo -> Settings -> Actions -> Secrets):
|
||||
# STRATO_SSH_HOST z.B. sftp.strato.de
|
||||
# STRATO_SSH_PORT meist 22
|
||||
# STRATO_SSH_USER dein Strato-SSH/SFTP-Benutzername
|
||||
# STRATO_SSH_KEY privater SSH-Key (nur der zugehörige Public Key liegt bei Strato)
|
||||
# STRATO_REMOTE_PATH Zielverzeichnis auf dem Webspace, z.B. /
|
||||
- name: Nach Strato deployen
|
||||
env:
|
||||
SSH_PRIVATE_KEY: ${{ secrets.STRATO_SSH_KEY }}
|
||||
SSH_HOST: ${{ secrets.STRATO_SSH_HOST }}
|
||||
SSH_PORT: ${{ secrets.STRATO_SSH_PORT }}
|
||||
SSH_USER: ${{ secrets.STRATO_SSH_USER }}
|
||||
REMOTE_PATH: ${{ secrets.STRATO_REMOTE_PATH }}
|
||||
run: |
|
||||
mkdir -p ~/.ssh
|
||||
echo "$SSH_PRIVATE_KEY" > ~/.ssh/deploy_key
|
||||
chmod 600 ~/.ssh/deploy_key
|
||||
ssh-keyscan -p "${SSH_PORT:-22}" "$SSH_HOST" >> ~/.ssh/known_hosts 2>/dev/null
|
||||
rsync -avz --delete \
|
||||
-e "ssh -i ~/.ssh/deploy_key -p ${SSH_PORT:-22} -o StrictHostKeyChecking=yes" \
|
||||
--exclude='.git/' \
|
||||
--exclude='.gitea/' \
|
||||
--exclude='node_modules/' \
|
||||
--exclude='package.json' \
|
||||
--exclude='package-lock.json' \
|
||||
--exclude='.gitignore' \
|
||||
--exclude='css/styles.css' \
|
||||
./ "$SSH_USER@$SSH_HOST:$REMOTE_PATH"
|
||||
Reference in New Issue
Block a user