diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..9819c66 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,51 @@ +name: Deploy Internal Playtest + +on: + push: + branches: + - main + paths: + - .gitea/workflows/deploy.yml + - index.html + - package.json + - pnpm-lock.yaml + - public/** + - src/** + - tsconfig.json + - vite.config.ts + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Enable pnpm + run: | + corepack enable + corepack prepare pnpm@10.33.3 --activate + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Build + run: pnpm build + + - name: Install deploy tools + run: | + apt-get update + apt-get install -y --no-install-recommends openssh-client rsync + + - name: Configure SSH + run: | + install -m 700 -d ~/.ssh + printf '%s\n' "${{ secrets.IDLEGAME_DEPLOY_KEY }}" > ~/.ssh/id_ed25519 + printf '%s\n' "${{ secrets.IDLEGAME_KNOWN_HOSTS }}" > ~/.ssh/known_hosts + chmod 600 ~/.ssh/id_ed25519 + chmod 644 ~/.ssh/known_hosts + + - name: Sync static files + run: | + ssh -i ~/.ssh/id_ed25519 -o UserKnownHostsFile=~/.ssh/known_hosts ginnoir@192.168.1.69 'mkdir -p /config/caddy/site/idlegame' + rsync -az --delete -e 'ssh -i ~/.ssh/id_ed25519 -o UserKnownHostsFile=~/.ssh/known_hosts' dist/ ginnoir@192.168.1.69:/config/caddy/site/idlegame/