Skip to content

Commit 6f4d325

Browse files
snitin315nzakas
andauthored
chore: initialize monorepo setup (#612)
* chore: initialize monorepo setup * chore: init release-please * ci: update release workflow * chore: remove unwanted changes * ci: fix lint job * ci: update step name * ci: update release-please-action Co-authored-by: Nicholas C. Zakas <[email protected]> * chore: apply suggestions * docs: add security policy --------- Co-authored-by: Nicholas C. Zakas <[email protected]>
1 parent ef88e37 commit 6f4d325

File tree

1,921 files changed

+630
-375
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,921 files changed

+630
-375
lines changed

Diff for: .github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
node-version: 'lts/*'
1919
- name: Install dependencies
2020
run: npm install
21-
- name: Build commonjs
21+
- name: Build packages
2222
run: npm run build
2323
- name: Lint files
2424
run: npm run lint

Diff for: .github/workflows/release-please.yml

+69-45
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,74 @@
11
on:
22
push:
3-
branches:
4-
- main
3+
branches:
4+
- main
5+
56
name: release-please
7+
8+
permissions:
9+
contents: write
10+
pull-requests: write
11+
id-token: write
12+
613
jobs:
714
release-please:
8-
runs-on: ubuntu-latest
9-
permissions:
10-
contents: write
11-
pull-requests: write
12-
id-token: write
13-
steps:
14-
- uses: google-github-actions/release-please-action@v3
15-
id: release
16-
with:
17-
release-type: node
18-
package-name: 'espree'
19-
pull-request-title-pattern: 'chore: release${component} ${version}'
20-
changelog-types: >
21-
[
22-
{ "type": "feat", "section": "Features", "hidden": false },
23-
{ "type": "fix", "section": "Bug Fixes", "hidden": false },
24-
{ "type": "perf", "section": "Performance Improvements", "hidden": false }
25-
]
26-
- uses: actions/checkout@v4
27-
if: ${{ steps.release.outputs.release_created }}
28-
- uses: actions/setup-node@v4
29-
with:
30-
node-version: lts/*
31-
registry-url: https://registry.npmjs.org
32-
if: ${{ steps.release.outputs.release_created }}
33-
- run: |
34-
npm install
35-
npm publish --provenance
36-
env:
37-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
38-
if: ${{ steps.release.outputs.release_created }}
39-
- run: 'npx @humanwhocodes/tweet "espree ${{ steps.release.outputs.tag_name }} has been released: ${{ steps.release.outputs.html_url }}"'
40-
if: ${{ steps.release.outputs.release_created }}
41-
env:
42-
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }}
43-
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }}
44-
TWITTER_ACCESS_TOKEN_KEY: ${{ secrets.TWITTER_ACCESS_TOKEN_KEY }}
45-
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}
46-
- run: 'npx @humanwhocodes/toot "espree ${{ steps.release.outputs.tag_name }} has been released: ${{ steps.release.outputs.html_url }}"'
47-
if: ${{ steps.release.outputs.release_created }}
48-
env:
49-
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }}
50-
MASTODON_HOST: ${{ secrets.MASTODON_HOST }}
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: googleapis/release-please-action@v4
18+
id: release
19+
with:
20+
token: ${{secrets.GITHUB_TOKEN}}
21+
22+
# Output which releases were created
23+
- name: Output release info
24+
run: |
25+
echo "releases_created:" ${{ steps.release.outputs.releases_created }}
26+
echo "packages/espree--release_created:" ${{ steps.release.outputs['packages/espree--release_created'] }}
27+
28+
# Check to see if we need to do any releases and if so check out the repo
29+
- uses: actions/checkout@v4
30+
if: ${{ steps.release.outputs.releases_created == 'true' }}
31+
32+
# Node.js release
33+
- uses: actions/setup-node@v4
34+
if: ${{ steps.release.outputs.releases_created == 'true' }}
35+
with:
36+
node-version: lts/*
37+
registry-url: "https://registry.npmjs.org"
38+
39+
- run: |
40+
npm install
41+
npm run build
42+
if: ${{ steps.release.outputs.releases_created == 'true' }}
43+
44+
#-----------------------------------------------------------------------------
45+
# NOTE: Packages are released in order of dependency. The packages with the
46+
# fewest internal dependencies are released first and the packages with the
47+
# most internal dependencies are released last.
48+
#-----------------------------------------------------------------------------
49+
50+
#-----------------------------------------------------------------------------
51+
# espree
52+
#-----------------------------------------------------------------------------
53+
54+
- name: Publish espree package to npm
55+
run: npm publish -w packages/espree --provenance
56+
if: ${{ steps.release.outputs['packages/espree--release_created'] }}
57+
env:
58+
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
59+
60+
- name: Tweet Release Announcement
61+
run: npx @humanwhocodes/tweet "espree v${{ steps.release.outputs['packages/espree--major'] }}.${{ steps.release.outputs['packages/espree--minor'] }}.${{ steps.release.outputs['packages/espree--patch'] }} has been released!\n\n${{ github.event.repository.html_url }}/releases/tag/${{ steps.release.outputs['packages/espree--tag_name'] }}"
62+
if: ${{ steps.release.outputs['packages/espree--release_created'] }}
63+
env:
64+
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }}
65+
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }}
66+
TWITTER_ACCESS_TOKEN_KEY: ${{ secrets.TWITTER_ACCESS_TOKEN_KEY }}
67+
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}
68+
69+
- name: Toot Release Announcement
70+
run: npx @humanwhocodes/toot "espree v${{ steps.release.outputs['packages/espree--major'] }}.${{ steps.release.outputs['packages/espree--minor'] }}.${{ steps.release.outputs['packages/espree--patch'] }} has been released!\n\n${{ github.event.repository.html_url }}/releases/tag/${{ steps.release.outputs['packages/espree--tag_name'] }}"
71+
if: ${{ steps.release.outputs['packages/espree--release_created'] }}
72+
env:
73+
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }}
74+
MASTODON_HOST: ${{ secrets.MASTODON_HOST }}

Diff for: .lintstagedrc.json

-3
This file was deleted.

Diff for: .release-please-manifest.json

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"packages/espree": "10.1.0"
3+
}

0 commit comments

Comments
 (0)