Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/14 automatize the publish of versions #20

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
61 changes: 0 additions & 61 deletions .github/workflows/publish_npm_package.yml

This file was deleted.

44 changes: 44 additions & 0 deletions .github/workflows/publish_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Publish Release
run-name: Publish to NPM registry, upgrade version (package.json and git tag), update changelog and create Github Release
on:
push:
branches:
- master
jobs:
Test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
- uses: actions/cache@v4
with:
path: 'node_modules'
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
- run: yarn install --frozen-lockfile
- run: yarn test
Publish-Package:
needs: [Test]
runs-on: ubuntu-latest
permissions:
id-token: write
contents: write
issues: write
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
- uses: actions/cache@v4
with:
path: 'node_modules'
key: ${{ runner.arch }}-${{ runner.os }}-modules-${{ hashFiles('yarn.lock') }}
- run: yarn install --frozen-lockfile
- run: yarn release
env:
NPM_TOKEN: ${{ secrets.NPM_K14V_PUBLISH_TOKEN }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
53 changes: 53 additions & 0 deletions .releaserc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"branches": [
{
"name": "master"
},
{
"name": "next",
"channel": "alpha",
"prerelease": "alpha"
}
],
"tagFormat": "v${version}",
"plugins": [
[
"@semantic-release/commit-analyzer",
{
"preset": "conventionalcommits"
}
],
[
"@semantic-release/release-notes-generator",
{
"preset": "conventionalcommits"
}
],
[
"@semantic-release/changelog",
{
"changelogFile": "CHANGELOG.md"
}
],
"@semantic-release/github",
[
"@semantic-release/exec",
{
"prepareCmd": "spz-publish version ${nextRelease.version}",
"publishCmd": "spz-publish upload"
}
],
[
"@semantic-release/git",
{
"assets": [
"packages/*/package.json",
"package.json",
"yarn-lock.json",
"CHANGELOG.md"
],
"message": "chore(release): bump version ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
}
]
]
}
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# printf-tokenize

Javascript printf tokenize creates a array of tokens using the standard from `cplusplus` http://www.cplusplus.com/reference/cstdio/printf/ to parse flags.

```javascript
Expand Down
12 changes: 11 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"prepublishOnly": "npm run build",
"lint": "eslint src",
"lint:fix": "eslint src --fix",
"release": "release-it -n",
"release": "semantic-release --dry-run",
"cm": "cz"
},
"husky": {
Expand Down Expand Up @@ -48,6 +48,12 @@
"@eslint/compat": "^1.1.1",
"@eslint/eslintrc": "^3.1.0",
"@eslint/js": "^9.7.0",
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/commit-analyzer": "^13.0.0",
"@semantic-release/exec": "^6.0.3",
"@semantic-release/git": "^10.0.1",
"@semantic-release/github": "^11.0.1",
"@semantic-release/release-notes-generator": "^14.0.1",
"@typescript-eslint/eslint-plugin": "^7.16.0",
"@typescript-eslint/parser": "^7.16.0",
"@vitest/coverage-v8": "^2.0.2",
Expand All @@ -58,11 +64,15 @@
"globals": "^15.8.0",
"husky": "^1.1.4",
"release-it": "^17.5.0",
"semantic-release": "^24.2.0",
"ts-node": "^10.9.1",
"tsup": "^8.1.0",
"typescript": "^5.0.4",
"vitest": "^2.0.2"
},
"resolutions": {
"conventional-changelog-conventionalcommits": ">= 8.0.0"
},
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog",
Expand Down
Loading
Loading