feat: add support for Import Attributes and RegExp Modifiers (#639) #60
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
on: | |
push: | |
branches: | |
- main | |
name: release-please | |
permissions: | |
contents: write | |
pull-requests: write | |
id-token: write | |
jobs: | |
release-please: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: googleapis/release-please-action@v4 | |
id: release | |
with: | |
token: ${{secrets.GITHUB_TOKEN}} | |
# Output which releases were created | |
- name: Output release info | |
run: | | |
echo "releases_created:" ${{ steps.release.outputs.releases_created }} | |
echo "packages/espree--release_created:" ${{ steps.release.outputs['packages/espree--release_created'] }} | |
# Check to see if we need to do any releases and if so check out the repo | |
- uses: actions/checkout@v4 | |
if: ${{ steps.release.outputs.releases_created == 'true' }} | |
# Node.js release | |
- uses: actions/setup-node@v4 | |
if: ${{ steps.release.outputs.releases_created == 'true' }} | |
with: | |
node-version: lts/* | |
registry-url: "https://registry.npmjs.org" | |
- run: | | |
npm install | |
npm run build | |
if: ${{ steps.release.outputs.releases_created == 'true' }} | |
#----------------------------------------------------------------------------- | |
# NOTE: Packages are released in order of dependency. The packages with the | |
# fewest internal dependencies are released first and the packages with the | |
# most internal dependencies are released last. | |
#----------------------------------------------------------------------------- | |
#----------------------------------------------------------------------------- | |
# eslint-visitor-keys | |
#----------------------------------------------------------------------------- | |
- name: Publish eslint-visitor-keys package to npm | |
run: npm publish -w packages/eslint-visitor-keys --provenance | |
if: ${{ steps.release.outputs['packages/eslint-visitor-keys--release_created'] }} | |
env: | |
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} | |
- name: Tweet Release Announcement | |
run: npx @humanwhocodes/tweet "eslint-visitor-keys v${{ steps.release.outputs['packages/eslint-visitor-keys--major'] }}.${{ steps.release.outputs['packages/eslint-visitor-keys--minor'] }}.${{ steps.release.outputs['packages/eslint-visitor-keys--patch'] }} has been released!\n\n${{ github.event.repository.html_url }}/releases/tag/${{ steps.release.outputs['packages/eslint-visitor-keys--tag_name'] }}" | |
if: ${{ steps.release.outputs['packages/eslint-visitor-keys--release_created'] }} | |
env: | |
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }} | |
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }} | |
TWITTER_ACCESS_TOKEN_KEY: ${{ secrets.TWITTER_ACCESS_TOKEN_KEY }} | |
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }} | |
- name: Toot Release Announcement | |
run: npx @humanwhocodes/toot "eslint-visitor-keys v${{ steps.release.outputs['packages/eslint-visitor-keys--major'] }}.${{ steps.release.outputs['packages/eslint-visitor-keys--minor'] }}.${{ steps.release.outputs['packages/eslint-visitor-keys--patch'] }} has been released!\n\n${{ github.event.repository.html_url }}/releases/tag/${{ steps.release.outputs['packages/eslint-visitor-keys--tag_name'] }}" | |
if: ${{ steps.release.outputs['packages/eslint-visitor-keys--release_created'] }} | |
env: | |
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }} | |
MASTODON_HOST: ${{ secrets.MASTODON_HOST }} | |
#----------------------------------------------------------------------------- | |
# espree | |
#----------------------------------------------------------------------------- | |
- name: Publish espree package to npm | |
run: npm publish -w packages/espree --provenance | |
if: ${{ steps.release.outputs['packages/espree--release_created'] }} | |
env: | |
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} | |
- name: Tweet Release Announcement | |
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'] }}" | |
if: ${{ steps.release.outputs['packages/espree--release_created'] }} | |
env: | |
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }} | |
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }} | |
TWITTER_ACCESS_TOKEN_KEY: ${{ secrets.TWITTER_ACCESS_TOKEN_KEY }} | |
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }} | |
- name: Toot Release Announcement | |
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'] }}" | |
if: ${{ steps.release.outputs['packages/espree--release_created'] }} | |
env: | |
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }} | |
MASTODON_HOST: ${{ secrets.MASTODON_HOST }} | |
#----------------------------------------------------------------------------- | |
# eslint-scope | |
#----------------------------------------------------------------------------- | |
- name: Publish eslint-scope package to npm | |
run: npm publish -w packages/eslint-scope --provenance | |
if: ${{ steps.release.outputs['packages/eslint-scope--release_created'] }} | |
env: | |
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} | |
- name: Tweet Release Announcement | |
run: npx @humanwhocodes/tweet "eslint-scope v${{ steps.release.outputs['packages/eslint-scope--major'] }}.${{ steps.release.outputs['packages/eslint-scope--minor'] }}.${{ steps.release.outputs['packages/eslint-scope--patch'] }} has been released!\n\n${{ github.event.repository.html_url }}/releases/tag/${{ steps.release.outputs['packages/eslint-scope--tag_name'] }}" | |
if: ${{ steps.release.outputs['packages/eslint-scope--release_created'] }} | |
env: | |
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }} | |
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }} | |
TWITTER_ACCESS_TOKEN_KEY: ${{ secrets.TWITTER_ACCESS_TOKEN_KEY }} | |
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }} | |
- name: Toot Release Announcement | |
run: npx @humanwhocodes/toot "eslint-scope v${{ steps.release.outputs['packages/eslint-scope--major'] }}.${{ steps.release.outputs['packages/eslint-scope--minor'] }}.${{ steps.release.outputs['packages/eslint-scope--patch'] }} has been released!\n\n${{ github.event.repository.html_url }}/releases/tag/${{ steps.release.outputs['packages/eslint-scope--tag_name'] }}" | |
if: ${{ steps.release.outputs['packages/eslint-scope--release_created'] }} | |
env: | |
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }} | |
MASTODON_HOST: ${{ secrets.MASTODON_HOST }} |