40 lines
1.5 KiB
YAML
40 lines
1.5 KiB
YAML
|
on:
|
||
|
push:
|
||
|
branches:
|
||
|
- main
|
||
|
name: release-please
|
||
|
jobs:
|
||
|
release-please:
|
||
|
runs-on: ubuntu-latest
|
||
|
steps:
|
||
|
- uses: GoogleCloudPlatform/release-please-action@v3
|
||
|
id: release
|
||
|
with:
|
||
|
release-type: node
|
||
|
package-name: object-schema
|
||
|
# The logic below handles the npm publication:
|
||
|
- uses: actions/checkout@v4
|
||
|
# these if statements ensure that a publication only occurs when
|
||
|
# a new release is created:
|
||
|
if: ${{ steps.release.outputs.release_created }}
|
||
|
- uses: actions/setup-node@v3
|
||
|
with:
|
||
|
node-version: 12
|
||
|
registry-url: 'https://registry.npmjs.org'
|
||
|
if: ${{ steps.release.outputs.release_created }}
|
||
|
- run: npm ci
|
||
|
if: ${{ steps.release.outputs.release_created }}
|
||
|
- run: npm publish
|
||
|
env:
|
||
|
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
|
||
|
if: ${{ steps.release.outputs.release_created }}
|
||
|
|
||
|
# Tweets out release announcement
|
||
|
- run: 'npx @humanwhocodes/tweet "Object Schema v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}.${{ steps.release.outputs.patch }} has been released!\n\n${{ github.event.release.html_url }}"'
|
||
|
if: ${{ steps.release.outputs.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 }}
|