mirror of
https://github.com/scratchfoundation/scratch-semantic-release-config.git
synced 2024-11-30 11:17:20 -05:00
40 lines
1.4 KiB
YAML
40 lines
1.4 KiB
YAML
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
|
|
|
|
permissions:
|
|
contents: write # publish a GitHub release
|
|
pages: write # deploy to GitHub Pages
|
|
issues: write # comment on released issues
|
|
pull-requests: write # comment on released pull requests
|
|
|
|
jobs:
|
|
ci-cd:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
|
- uses: wagoid/commitlint-github-action@5ce82f5d814d4010519d15f0552aec4f17a1e1fe # v5
|
|
if: github.event_name == 'pull_request'
|
|
- uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # 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
|