Skip to content

bump version to 1.7.6 #6

bump version to 1.7.6

bump version to 1.7.6 #6

Workflow file for this run

name: On Push to Main Branch
on:
push:
branches:
- main
concurrency:
group: deployment
cancel-in-progress: true
jobs:
check-version:
runs-on: ubuntu-latest
needs: check-changesets
outputs:
version_changed: ${{ steps.version-check.outputs.changed }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check if version changed
id: version-check
run: |
current_version=$(jq -r .version package.json)
base_version=$(git show HEAD^:package.json | jq -r .version)
if [ "$current_version" != "$base_version" ]; then
echo "changed=true" >> $GITHUB_OUTPUT
else
echo "changed=false" >> $GITHUB_OUTPUT
fi
check-changesets:
runs-on: ubuntu-latest
outputs:
hasChangesets: ${{ steps.changeset-check.outputs.hasChangesets }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check for changesets
id: changeset-check
run: |
if [ -n "$(ls .changeset/*.md 2>/dev/null | grep -v 'README.md' | grep -v 'config.json')" ]; then
echo "hasChangesets=true" >> $GITHUB_OUTPUT
else
echo "hasChangesets=false" >> $GITHUB_OUTPUT
fi
create-release-pr:
name: Create or update Release PR
runs-on: ubuntu-latest
needs: [check-version, check-changesets]
if: needs.check-changesets.outputs.hasChangesets == 'true' && needs.check-version.outputs.version_changed == 'false'
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install pnpm
run: npm install -g pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Get next version from changesets
id: get-next-version
run: |
npx changeset status --output changeset-status.json
version=$(jq -r '.releases[0].newVersion' changeset-status.json)
echo "next_version=$version" >> $GITHUB_OUTPUT
- name: Create or update Release PR
uses: changesets/action@v1
with:
publish: false
title: "Release v${{ steps.get-next-version.outputs.next_version }}"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update MCP version
run: .github/scripts/update-mcp-version.sh
env:
PATH_TO_FILE: 'src/index.ts'
gh-release:
name: GH Release
runs-on: ubuntu-latest
needs: check-version
if: needs.check-version.outputs.version_changed == 'true'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Get release version
id: get-version
run: |
echo "result=$(jq -r '.version' package.json)" >> $GITHUB_OUTPUT
- name: Get release body
run: |
# Get the PR body to use in the GH release body
gh pr list --search "$(git rev-parse HEAD)" --state merged --json number,body --jq '"This release was merged in PR #" + (.[0].number | tostring) + "\n\n" + (.[0].body | split("# Releases")[1:] | join("# Releases"))' > pr_body.tmp
- name: Create release
uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda # v2.2.1
with:
tag_name: v${{ steps.get-version.outputs.result }}
name: Release v${{ steps.get-version.outputs.result }}
body_path: pr_body.tmp
npm-publish:
name: Publish to npm registry
runs-on: ubuntu-latest
needs: check-version
if: needs.check-version.outputs.version_changed == 'true'
permissions:
contents: read
id-token: write
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js and npm auth
uses: actions/setup-node@v4
with:
node-version: '20.x'
registry-url: 'https://registry.npmjs.org'
- name: Install pnpm
run: npm install -g pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Build
run: pnpm build
- name: Publish
run: npm publish --provenance --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}