diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..4f3655f --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,26 @@ +name: Full CI Pipeline + +on: + pull_request: + branches: [ main ] + +jobs: + lint: + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v2.4.1 + with: + node-version: 18 + cache: 'yarn' + - run: yarn + - run: yarn lint + + build: + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v2.4.1 + with: + node-version: 18 + cache: 'yarn' + - run: yarn + - run: yarn build diff --git a/libs/package.json b/libs/package.json index 3306405..1c125ac 100644 --- a/libs/package.json +++ b/libs/package.json @@ -11,6 +11,7 @@ "-i,--interlaced": "Print the output of commands in real-time instead of buffering it", "-j,--jobs": "The maximum number of parallel tasks that the execution will be limited to", "-t,--topological": "Run the command after all workspaces it depends on (regular) have finished", - "build": "yarn workspace skiff-utils build && yarn workspace skiff-mail-protos build && yarn workspace skiff-graphql build && yarn workspace @skiff-org/skiff-crypto build && yarn workspace skiff-front-graphql build && yarn workspace skiff-front-utils build" + "build": "yarn workspace skiff-utils build && yarn workspace skiff-mail-protos build && yarn workspace skiff-graphql build && yarn workspace @skiff-org/skiff-crypto build && yarn workspace skiff-front-graphql build && yarn workspace skiff-front-utils build && yarn workspace skiff-prosemirror build", + "lint": "yarn workspace skiff-utils lint && yarn workspace skiff-mail-protos lint && yarn workspace skiff-graphql lint && yarn workspace @skiff-org/skiff-crypto lint && yarn workspace skiff-front-graphql lint && yarn workspace skiff-front-utils lint && yarn workspace skiff-prosemirror lint" } } diff --git a/package.json b/package.json index 753d8c1..9ee3f2a 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,8 @@ "scripts": { "postinstall": "yarn workspace @skiff-org/skiff-crypto install", "build:lib": "yarn workspace libs build", - "dev": "yarn workspace skiff-mail-web dev" + "dev": "yarn workspace skiff-mail-web dev", + "lint": "yarn workspace libs lint && yarn workspace skiff-mail-web lint", + "build": "yarn workspace libs build && yarn workspace skiff-mail-web build" } }