diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000000..6c7bfefb01 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,33 @@ +name: Synpase + +on: + pull_request: + +env: + NODE_VERSION: 20.11.0 + PNPM_VERSION: 8 + PNPM_CACHE: + +jobs: + ci: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Install pnpm ${{ env.PNPM_VERSION }} + uses: pnpm/action-setup@v2 + with: + version: ${{ env.PNPM_VERSION }} + + - name: Install node ${{ env.NODE_VERSION }} + uses: actions/setup-node@v3 + with: + node-version: ${{ env.NODE_VERSION }} + cache: '${{ env.NODE_CACHE }}' + - run: corepack enable + - name: install dependency + run: pnpm install --frozen-lockfile + - name: lint test + run: pnpm lint + - name: run test + run: pnpm test diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml new file mode 100644 index 0000000000..ca7d509d0e --- /dev/null +++ b/.github/workflows/npm-publish.yml @@ -0,0 +1,28 @@ +# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created +# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages + +name: Synpase - Package and Publish + +env: + NODE_VERSION: 20.11.0 + +on: + release: + types: [created] + +jobs: + validate: + uses: ./actions/ci.yml + + publish-npm: + needs: validate + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: ${{ env.NODE_VERSION }} + registry-url: https://registry.npmjs.org/ + - run: npm publish + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/package.json b/package.json index 96dc9edaeb..85cb1a61fd 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,8 @@ "scripts": { "prepare": "lerna run dev:setup", "dev": "lerna run dev", - "test:unit": "lerna run test:unit", + "test": "lerna run test", + "lint": "lerna run lint", "build": "lerna run build" }, "devDependencies": { @@ -12,7 +13,7 @@ "typescript": "5.2.2" }, "engines": { - "node": ">=18.0.0", - "pnpm": ">=8.0.0" + "node": "^20.11.0", + "pnpm": "^8.0.0" } } diff --git a/packages/synapse-bridge/package.json b/packages/synapse-bridge/package.json index 30465e7344..62c1f4a31b 100644 --- a/packages/synapse-bridge/package.json +++ b/packages/synapse-bridge/package.json @@ -25,7 +25,8 @@ "scripts": { "dev:setup": "tsx scripts/devSetup.ts", "dev": "vite", - "test:unit": "vitest run", + "test": "vitest run", + "lint": "echo 1", "preview": "vite preview", "analyze": "vite build --mode analyze", "build": "vue-tsc && vite build"