1name: Build and Deploy to cold (cold.strudel.cc)
2
3on: [workflow_dispatch]

Allow one concurrent deployment

6concurrency:
7  group: "pages"
8  cancel-in-progress: true
10jobs:
11  build:
12    runs-on: docker
13    env:
14      SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
15    steps:
16      - uses: actions/checkout@v4
17      - uses: pnpm/action-setup@v4
18        with:
19          version: 9.12.2
20      - uses: actions/setup-node@v4
21        with:
22          node-version: 20
23          # cache: "pnpm"
24      - name: Install Dependencies
25        run: pnpm install
26
27      - name: Build
28        run: pnpm build
29
30      - name: Deploy
31        run: |
32          eval $(ssh-agent -s)
33          echo "$SSH_PRIVATE_KEY" | ssh-add -
34          apt update && apt install -y rsync
35          mkdir ~/.ssh
36          ssh-keyscan matrix.toplap.org  > ~/.ssh/known_hosts
37          rsync -atv --delete --delete-after --progress ./website/dist/ strudel@matrix.toplap.org:/home/strudel/deploy/cold.strudel.cc