feat(ongeki): graphs #1003
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Client CI/CD | |
on: | |
push: | |
branches: | |
- "main" | |
paths: | |
- "client/**" | |
- "common/**" | |
pull_request: | |
branches: | |
- "main" | |
paths: | |
- "server/**" | |
- "common/**" | |
workflow_dispatch: | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- uses: pnpm/action-setup@v4 | |
with: | |
version: 8.15.6 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
cache: pnpm | |
- name: Install dependencies | |
run: pnpm --filter tachi-client... --filter . install | |
- name: Lint | |
run: pnpm --filter tachi-client lint | |
- name: Typecheck | |
run: pnpm --filter tachi-client typecheck | |
deploy: | |
runs-on: [ubuntu-latest] | |
needs: test | |
if: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install rsync | |
run: sudo apt install -y rsync | |
- uses: pnpm/action-setup@v4 | |
with: | |
version: 8.15.6 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
cache: pnpm | |
- name: Enable SSH Key | |
run: | | |
mkdir -p ~/.ssh | |
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa | |
sudo chmod 600 ~/.ssh/id_rsa | |
echo "$SSH_KNOWN_HOSTS" > ~/.ssh/known_hosts | |
env: | |
SSH_PRIVATE_KEY: ${{secrets.SSH_PRIVATE_KEY}} | |
SSH_KNOWN_HOSTS: ${{secrets.SSH_KNOWN_HOSTS}} | |
- name: Install dependencies | |
run: pnpm --filter tachi-client... --filter . install | |
- name: Build Bokutachi | |
if: github.ref == 'refs/heads/main' | |
run: pnpm --filter tachi-client build | |
env: | |
VITE_GIT_REPO: "GitHub:zkrising/Tachi" | |
VITE_TCHIC_MODE: "boku" | |
VITE_GOATCOUNTER: "https://tachi.goatcounter.com/count" | |
VITE_RECAPTCHA_KEY: "6LcsYbIpAAAAAEJffjIXmbQcxj_SBZG7BnSPjF4L" | |
VITE_SERVER_URL: "https://boku.tachi.ac" | |
VITE_DISCORD: "https://discord.gg/E4n8ZZF5ES" | |
VITE_CDN_URL: "https://cdn-boku.tachi.ac" | |
TACHI_NAME: "Bokutachi" | |
BUILD_OUT_DIR: /home/runner/boku | |
- name: Build Kamaitachi | |
if: github.ref == 'refs/heads/main' | |
run: pnpm --filter tachi-client build | |
env: | |
VITE_MANDATE_LOGIN: true | |
VITE_GOATCOUNTER: "https://tachi.goatcounter.com/count" | |
VITE_SERVER_URL: "https://kamai.tachi.ac" | |
VITE_EAG_CLIENT_ID: "332B9789DEA10B94DB0E345A6F8ECF54BB86E6DD" | |
VITE_FLO_CLIENT_ID: "98B965554FB2341D969667F3D04CFC28F8C080ED" | |
VITE_MIN_CLIENT_ID: "A0DBDBB063CD800530EF01C6488B282137E0191E" | |
VITE_DISCORD: "https://discord.gg/NNgGJbpQUj" | |
VITE_TCHIC_MODE: "kamai" | |
VITE_CDN_URL: "https://cdn-kamai.tachi.ac" | |
VITE_GIT_REPO: "GitHub:zkrising/Tachi" | |
VITE_RECAPTCHA_KEY: "6LcsYbIpAAAAAEJffjIXmbQcxj_SBZG7BnSPjF4L" | |
TACHI_NAME: "Kamaitachi" | |
BUILD_OUT_DIR: /home/runner/kamai | |
- name: Deploy Kamaitachi | |
if: github.ref == 'refs/heads/main' | |
run: rsync --recursive --compress --delete --progress ~/kamai/. ci@"$TACHI_HOST":tachi-client/kamai | |
env: | |
TACHI_HOST: ${{secrets.TACHI_HOST}} | |
- name: Deploy Bokutachi | |
if: github.ref == 'refs/heads/main' | |
run: rsync --recursive --compress --delete --progress ~/boku/. ci@"$TACHI_HOST":tachi-client/boku | |
env: | |
TACHI_HOST: ${{secrets.TACHI_HOST}} | |
- name: Build Staging | |
run: pnpm --filter tachi-client build | |
env: | |
VITE_MANDATE_LOGIN: true | |
VITE_GOATCOUNTER: "https://tachi.goatcounter.com/count" | |
VITE_SERVER_URL: "https://staging.tachi.ac" | |
VITE_TCHIC_MODE: "omni" | |
VITE_CDN_URL: "https://cdn-staging.tachi.ac" | |
VITE_GIT_REPO: "GitHub:zkrising/Tachi" | |
VITE_RECAPTCHA_KEY: "6LcsYbIpAAAAAEJffjIXmbQcxj_SBZG7BnSPjF4L" | |
TACHI_NAME: "Tachi Staging" | |
BUILD_OUT_DIR: /home/runner/staging | |
- name: Deploy Staging | |
run: rsync --recursive --compress --delete --progress ~/staging/. ci@"$TACHI_HOST":tachi-client/staging | |
env: | |
TACHI_HOST: ${{secrets.TACHI_HOST}} |