From dfdd27cb855c8c3c5b777a874964680161e97cdf Mon Sep 17 00:00:00 2001 From: Yangshun Tay Date: Tue, 11 Oct 2022 07:27:41 +0800 Subject: [PATCH] [infra] add GitHub actions for typechecking (#356) --- .github/workflows/tsc.yml | 37 +++++++++++++++++++++++++++++++++++++ apps/storybook/package.json | 2 +- package.json | 2 +- 3 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/tsc.yml diff --git a/.github/workflows/tsc.yml b/.github/workflows/tsc.yml new file mode 100644 index 00000000..784c4d76 --- /dev/null +++ b/.github/workflows/tsc.yml @@ -0,0 +1,37 @@ +# Copied from https://github.com/facebook/docusaurus/blob/main/.github/workflows/lint.yml +name: Typecheck + +on: + pull_request: + branches: + - main + +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +permissions: + contents: read + +jobs: + tsc: + name: Typecheck + timeout-minutes: 30 + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Set up Node + uses: actions/setup-node@v3 + with: + node-version: '16' + cache: yarn + - name: Installation + run: yarn + - name: Check immutable yarn.lock + run: git diff --exit-code + # Build the shared types in dependent packages. + - name: Build dependencies + run: yarn turbo run build --filter=ui + - name: Typecheck + run: yarn tsc diff --git a/apps/storybook/package.json b/apps/storybook/package.json index df648014..546cf92c 100644 --- a/apps/storybook/package.json +++ b/apps/storybook/package.json @@ -4,7 +4,7 @@ "private": true, "scripts": { "dev": "start-storybook -p 6001", - "build": "build-storybook --docs", + "build": "tsc && build-storybook --docs", "preview-storybook": "serve storybook-static", "clean": "rm -rf .turbo && rm -rf node_modules", "lint": "eslint stories/**/*.ts* --fix", diff --git a/package.json b/package.json index b2b855c5..4c0a4f70 100755 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "dev:ui": "turbo dev --filter=storybook... --filter=ui...", "dev:website": "turbo dev --filter=website...", "dev:all": "turbo dev --no-cache --parallel --continue", - "format": "prettier --write \"**/*.{ts,tsx,md}\"", + "format": "prettier --write \"**/*.{js,jsx,cjs,mjs,ts,tsx,md,mdx}\"", "lint": "turbo lint", "test": "turbo test", "tsc": "turbo tsc"