You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailchat/.github/workflows/deploy-deno.yml

65 lines
1.6 KiB
YAML

name: Deploy into deno deploy
on:
push:
branches:
- master
paths:
- "client/web/**"
- "client/shared/**"
- "client/packages/design/**"
workflow_dispatch:
jobs:
deploy:
name: Deploy deno
runs-on: ubuntu-latest
permissions:
id-token: write # Needed for auth with Deno Deploy
contents: read # Needed to clone the repository
steps:
- name: Clone repository
uses: actions/checkout@v3
- name: Install Deno
uses: denoland/setup-deno@main
with:
deno-version: 1.18.2
- name: Install Node.js
uses: actions/setup-node@v3
with:
node-version: lts/*
- name: Cache pnpm modules
uses: actions/cache@v2
with:
path: ~/.pnpm-store
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-
- uses: pnpm/action-setup@v2.0.1
with:
version: latest
run_install: false
- name: Install packages
run: pnpm install --frozen-lockfile
- name: Build step
run: cd client/web && pnpm build
env:
SERVICE_URL: https://tailchat-nightly.moonrailgun.com
- name: Copy Deno Entry
run: cd client/web && cp ./scripts/deno-static-entry.ts ./dist/deno-static-entry.ts
- name: Upload to Deno Deploy
uses: denoland/deployctl@v1
with:
project: "tailchat-nightly"
# entrypoint: https://deno.land/std@0.202.0/http/file_server.ts
entrypoint: deno-static-entry.ts
root: "./client/web/dist"