diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml new file mode 100644 index 0000000..0c30e19 --- /dev/null +++ b/.github/workflows/ci-cd.yml @@ -0,0 +1,34 @@ +name: CI/CD + +on: + pull_request: # Runs whenever a pull request is created or updated + push: # Runs whenever a commit is pushed to the repository + branches: [main, master, develop, beta, hotfix/*] # ...on any of these branches + workflow_dispatch: # Allows you to run this workflow manually from the Actions tab + +concurrency: + group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}' + cancel-in-progress: true + +jobs: + ci-cd: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: wagoid/commitlint-github-action@v5 + if: github.event_name == 'pull_request' + - uses: actions/setup-node@v3 + with: + cache: 'npm' + node-version-file: '.nvmrc' + - name: Info + run: | + echo "Node version: $(node --version)" + echo "NPM version: $(npm --version)" + - run: npm ci + - run: npm test + - name: Release + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: npx --no -- semantic-release diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..9a2a0e2 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v20