Skip to content

Publish Package to npmjs #40

Publish Package to npmjs

Publish Package to npmjs #40

Workflow file for this run

name: Publish Package to npmjs
on:
workflow_dispatch:
inputs:
version:
description: "The version to publish"
required: true
tag:
description: "Tag"
required: true
default: "latest"
type: choice
options:
- latest
- snapshot
- next
jobs:
publish:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: write
pull-requests: write
steps:
# Create an access token for the Github Actions Bot app. This one has permissions
# to push directly to this repository (only!) without required status checks.
# - uses: actions/create-github-app-token@v1
# id: github-actions-bot-app-token
# with:
# app-id: 48725422
# private-key: ${{ secrets.APOLLO_GITHUB_ACTIONS_BOT_PRIVATE_KEY }}
# repositories: ${{ github.repository }}
# owner: ${{ github.repository_owner }}
# Check out the repository, using the Github Actions Bot app's token so that we
# can push later and override required statuses.
- uses: actions/checkout@v4
# with:
# token: ${{ steps.github-actions-bot-app-token.outputs.token }}
- uses: actions/setup-node@v4
with:
node-version: "20"
registry-url: "https://registry.npmjs.org"
cache: "yarn"
- run: yarn install --immutable --mode=skip-build
- name: "@apollo/client-react-streaming: update version"
run: |
yarn workspace @apollo/client-react-streaming exec npm pkg set "version=${{ inputs.version }}"
yarn workspace @apollo/client-react-streaming exec jq '{ version: .version, dependencies: .dependencies, peerDependencies: .peerDependencies }' package.json
- name: "@apollo/experimental-nextjs-app-support: update version and dependencies"
run: |
yarn workspace @apollo/experimental-nextjs-app-support exec npm pkg set "dependencies[@apollo/client-react-streaming]=${{ inputs.version }}" "version=${{ inputs.version }}"
yarn workspace @apollo/experimental-nextjs-app-support exec jq '{ version: .version, dependencies: .dependencies, peerDependencies: .peerDependencies }' package.json
# - name: Commit changes back
# uses: stefanzweifel/git-auto-commit-action@v5
# with:
# commit_message: "Bump version to ${{ inputs.version }}"
# push_options: ""
# skip_dirty_check: false
# tagging_message: "v.${{ inputs.version }}"
- name: Create commit
run: |
git config user.name ${{ github.actor }}
git config user.email ${{ github.actor_id }}+${{ github.actor }}@users.noreply.github.com
git add --all
git commit -m "Bump version to ${{ inputs.version }}"
- name: "@apollo/client-react-streaming: publish"
run: yarn workspace @apollo/client-react-streaming exec npm publish --access public --tag ${{ inputs.tag }} --provenance
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: "@apollo/experimental-nextjs-app-support: publish"
run: yarn workspace @apollo/experimental-nextjs-app-support exec npm publish --access public --tag ${{ inputs.tag }} --provenance
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Create Pull Request
uses: peter-evans/create-pull-request@v6
with:
title: "Bump version to ${{ inputs.version }}"
branch: "pr/bump-version"
branch-suffix: short-commit-hash
delete-branch: true