@i-santos/create-package-starter 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -24,6 +24,11 @@ Generated package includes:
24
24
  - `release:stable`
25
25
  - `release:publish`
26
26
  - `registry:start`
27
+ - `changeset`
28
+ - `version-packages`
29
+ - `release`
30
+ - `.github/workflows/release.yml`
31
+ - `.changeset/config.json`
27
32
 
28
33
  plus a minimal README, CHANGELOG, `.gitignore`, and check script.
29
34
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@i-santos/create-package-starter",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Scaffold new npm packages with standardized release scripts",
5
5
  "license": "MIT",
6
6
  "author": "Igor Santos",
@@ -0,0 +1,4 @@
1
+ # Changesets
2
+
3
+ - Crie um changeset em cada PR com mudança de release: `npm run changeset`.
4
+ - O workflow de release cria/atualiza o PR de versão automaticamente.
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
3
+ "changelog": "@changesets/cli/changelog",
4
+ "commit": false,
5
+ "fixed": [],
6
+ "linked": [],
7
+ "access": "public",
8
+ "baseBranch": "main",
9
+ "updateInternalDependencies": "patch",
10
+ "ignore": []
11
+ }
@@ -0,0 +1,46 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ permissions:
9
+ contents: write
10
+ pull-requests: write
11
+ id-token: write
12
+
13
+ jobs:
14
+ release:
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - name: Checkout
18
+ uses: actions/checkout@v4
19
+ with:
20
+ fetch-depth: 0
21
+
22
+ - name: Setup Node.js
23
+ uses: actions/setup-node@v4
24
+ with:
25
+ node-version: 22
26
+ cache: npm
27
+ registry-url: https://registry.npmjs.org
28
+
29
+ - run: npm install -g npm@latest
30
+
31
+ - name: Install
32
+ run: npm ci
33
+
34
+ - name: Check
35
+ run: npm run check
36
+
37
+ - name: Create Release PR or Publish
38
+ uses: changesets/action@v1
39
+ with:
40
+ version: npm run version-packages
41
+ publish: npm run release
42
+ title: "chore: release packages"
43
+ commit: "chore: release packages"
44
+ env:
45
+ NODE_AUTH_TOKEN: ""
46
+ GITHUB_TOKEN: ${{ secrets.CHANGESETS_GH_TOKEN || secrets.GITHUB_TOKEN }}
@@ -9,7 +9,15 @@ Pacote criado pelo `@i-santos/create-package-starter`.
9
9
  - `npm run release:beta`
10
10
  - `npm run release:stable`
11
11
  - `npm run release:publish`
12
+ - `npm run changeset`
13
+ - `npm run version-packages`
14
+ - `npm run release`
12
15
 
13
16
  ## Dependência de release
14
17
 
15
18
  Este pacote foi gerado para usar `__RELEASE_CLI_PKG__@__RELEASE_CLI_VERSION__`.
19
+
20
+ ## CI/CD release
21
+
22
+ - Workflow pronto em `.github/workflows/release.yml`.
23
+ - Configuração de changesets em `.changeset/config.json`.
@@ -7,9 +7,13 @@
7
7
  "release:beta": "release-cli beta",
8
8
  "release:stable": "release-cli stable",
9
9
  "release:publish": "release-cli publish",
10
- "registry:start": "release-cli registry http://127.0.0.1:4873"
10
+ "registry:start": "release-cli registry http://127.0.0.1:4873",
11
+ "changeset": "changeset",
12
+ "version-packages": "changeset version",
13
+ "release": "npm run check && npm run release:publish"
11
14
  },
12
15
  "devDependencies": {
13
- "__RELEASE_CLI_PKG__": "__RELEASE_CLI_VERSION__"
16
+ "__RELEASE_CLI_PKG__": "__RELEASE_CLI_VERSION__",
17
+ "@changesets/cli": "^2.29.7"
14
18
  }
15
19
  }
@@ -6,7 +6,15 @@ const path = require('path');
6
6
  const packageJsonPath = path.join(process.cwd(), 'package.json');
7
7
  const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
8
8
 
9
- const requiredScripts = ['release:beta', 'release:stable', 'release:publish', 'registry:start'];
9
+ const requiredScripts = [
10
+ 'release:beta',
11
+ 'release:stable',
12
+ 'release:publish',
13
+ 'registry:start',
14
+ 'changeset',
15
+ 'version-packages',
16
+ 'release'
17
+ ];
10
18
  for (const scriptName of requiredScripts) {
11
19
  if (!pkg.scripts || !pkg.scripts[scriptName]) {
12
20
  console.error(`Script obrigatório ausente: ${scriptName}`);