diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f9f7e69..7b17a93 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,86 +1,34 @@ -name: Release Version +# This Action should run on each PR by verifying if they pass on lint, test and build +name: CI on: - pull_request: - types: [opened, synchronize] + push: + branches-ignore: + - main jobs: - request-version: + build: + name: FastStore + timeout-minutes: 15 runs-on: ubuntu-latest steps: - - name: Add version selection comment - uses: actions/github-script@v6 + - name: Check out code + uses: actions/checkout@v4 with: - script: | - github.rest.issues.createComment({ - issue_number: context.issue.number, - owner: context.repo.owner, - repo: context.repo.repo, - body: ` - ## Please select the version update for the package: - - 👍 Patch - - 🎉 Minor - - 🚀 Major + fetch-depth: 2 - React with the appropriate emoji to choose the version. - ` - }) - - check-version: - runs-on: ubuntu-latest - needs: request-version - steps: - - name: Check version bump reaction - uses: actions/github-script@v6 - with: - script: | - const { data: reactions } = await github.rest.reactions.listForIssue({ - owner: context.repo.owner, - repo: context.repo.repo, - issue_number: context.issue.number - }); - - let versionType = 'patch'; // default - reactions.forEach(reaction => { - if (reaction.content === 'rocket') { - versionType = 'major'; - } else if (reaction.content === 'tada') { - versionType = 'minor'; - } - }); - - console.log(`Version to bump: ${versionType}`); - core.setOutput('version_type', versionType); - - release: - runs-on: ubuntu-latest - needs: check-version - steps: - - name: Checkout code - uses: actions/checkout@v3 - - - name: Setup Node.js - uses: actions/setup-node@v3 + - name: Setup Node.js environment + uses: actions/setup-node@v4 with: - node-version: '18' - registry-url: 'https://registry.npmjs.org/' + node-version: 18 + cache: 'yarn' - name: Install dependencies - run: yarn install - - - name: Bump version - run: | - yarn version --${{ needs.check-version.outputs.version_type }} + run: yarn - - name: Build project + - name: Build run: yarn build - - name: Publish to NPM - run: | - echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc - yarn publish --non-interactive - - - name: Push changes and tags - run: | - git push --follow-tags + - name: Size + run: yarn size