From 314e3bf773df95db0b0ffc85a2a7710c0c83679c Mon Sep 17 00:00:00 2001 From: bytedream Date: Mon, 9 Jun 2025 15:15:44 +0200 Subject: [PATCH] update deployment pipeline --- .gitea/workflows/deploy.yml | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 94e4376..4c47bc3 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -6,10 +6,26 @@ on: jobs: build-and-deploy: runs-on: ubuntu-latest + strategy: + matrix: + dir: + - /opt/website + - /opt/website-test + service: + - website + - website-test steps: - name: Checkout uses: actions/checkout@v4 + - name: Cache + uses: actions/cache@v4 + with: + path: | + dist/ + node_modules/ + key: ${{ runner.os }}-${{ hashFiles('package-lock.json') }} + - name: Install dependencies run: npm i @@ -21,6 +37,8 @@ jobs: HOST: ${{ secrets.SSH_HOST}} USER: ${{ secrets.SSH_USER }} SSH_KEY: ${{ secrets.SSH_KEY }} + DIRECTORY: ${{ matrix.dir }} + SERVICE: ${{ matrix.service }} run: | mkdir -p "$HOME/.ssh" && touch "$HOME/.ssh/known_hosts" echo "$SSH_KEY" > "$HOME/.ssh/deploy_key" @@ -29,6 +47,6 @@ jobs: ssh-add "$HOME/.ssh/deploy_key" ssh-keyscan -t rsa "$HOST" >> "$HOME/.ssh/known_hosts" - ssh -o StrictHostKeyChecking=no $USER@$HOST "rm -r /opt/website; mkdir -p /opt/website" - scp -r -o StrictHostKeyChecking=no $(ls -d -1 dist/*) $(ls package*) $USER@$HOST:/opt/website - ssh -o StrictHostKeyChecking=no $USER@$HOST "cd /opt/website; npm i --omit=dev; systemctl restart website" + ssh -o StrictHostKeyChecking=no $USER@$HOST "rm -r $DIRECTORY; mkdir -p $DIRECTORY" + scp -r -o StrictHostKeyChecking=no $(ls -d -1 dist/*) $(ls package*) $USER@$HOST:$DIRECTORY + ssh -o StrictHostKeyChecking=no $USER@$HOST "cd $DIRECTORY; npm i --omit=dev; systemctl restart $SERVICE"