mirror of
https://github.com/supabase/supabase.git
synced 2026-10-13 21:29:08 +03:00
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.4.0 to 7.0.0. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/49933ea5288caeca8642d1e84afbd3f7d6820020...820762786026740c76f36085b0efc47a31fe5020) --- updated-dependencies: - dependency-name: actions/setup-node dependency-version: 6.4.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
126 lines
4.9 KiB
YAML
126 lines
4.9 KiB
YAML
name: Update JS Libraries
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
version:
|
|
description: 'Version to update to'
|
|
required: true
|
|
type: string
|
|
source:
|
|
description: 'Source of the update'
|
|
required: false
|
|
type: string
|
|
default: 'manual'
|
|
|
|
permissions:
|
|
pull-requests: write
|
|
contents: write
|
|
|
|
jobs:
|
|
update-js-libs:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
|
|
with:
|
|
persist-credentials: false
|
|
ref: master
|
|
|
|
- uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9
|
|
name: Install pnpm
|
|
with:
|
|
run_install: false
|
|
|
|
- name: Use Node.js
|
|
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
|
|
with:
|
|
node-version-file: '.nvmrc'
|
|
cache: 'pnpm'
|
|
|
|
- name: Update @supabase/*-js packages in pnpm-workspace.yaml
|
|
env:
|
|
VERSION: ${{ github.event.inputs.version }}
|
|
run: |
|
|
# Update @supabase/supabase-js
|
|
sed -i "s|'@supabase/supabase-js': .*|'@supabase/supabase-js': ${VERSION}|" pnpm-workspace.yaml
|
|
|
|
# Update @supabase/auth-js
|
|
sed -i "s|'@supabase/auth-js': .*|'@supabase/auth-js': ${VERSION}|" pnpm-workspace.yaml
|
|
|
|
# Update @supabase/realtime-js
|
|
sed -i "s|'@supabase/realtime-js': .*|'@supabase/realtime-js': ${VERSION}|" pnpm-workspace.yaml
|
|
|
|
# Update @supabase/postgrest-js
|
|
sed -i "s|'@supabase/postgrest-js': .*|'@supabase/postgrest-js': ${VERSION}|" pnpm-workspace.yaml
|
|
|
|
echo "Updated pnpm-workspace.yaml:"
|
|
cat pnpm-workspace.yaml
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --no-frozen-lockfile
|
|
|
|
- name: Fetch release notes
|
|
env:
|
|
VERSION: ${{ github.event.inputs.version }}
|
|
GH_TOKEN: ${{ github.token }}
|
|
run: |
|
|
CURRENT_FULL=$(git show HEAD:pnpm-workspace.yaml | grep -oP "(?<='@supabase/supabase-js': )[\d]+\.[\d]+\.[\d]+(-[\w.]+)?")
|
|
CURRENT_BASE=$(echo "$CURRENT_FULL" | grep -oP '[\d]+\.[\d]+\.[\d]+')
|
|
[[ "$CURRENT_FULL" == *"-"* ]] && INCLUDE_CURRENT=true || INCLUDE_CURRENT=false
|
|
[[ "$VERSION" == *"-"* ]] && STABLE_ONLY=false || STABLE_ONLY=true
|
|
RELEASES=$(gh api "repos/supabase/supabase-js/releases?per_page=100")
|
|
RELEASE_NOTES=$(echo "$RELEASES" | jq -r \
|
|
--arg current "v${CURRENT_BASE}" \
|
|
--arg new "v${VERSION}" \
|
|
--argjson stable_only "$STABLE_ONLY" \
|
|
--argjson include_current "$INCLUDE_CURRENT" \
|
|
'[.[] | select(.draft == false) | select(if $stable_only then .prerelease == false else true end)] |
|
|
(map(.tag_name) | index($new)) as $start |
|
|
(map(.tag_name) | index($current)) as $end |
|
|
($end | if . != null and $include_current then . + 1 else . end) as $end_adj |
|
|
if $start == null then ["Target version not found in last 100 releases."]
|
|
elif $end_adj != null and $start >= $end_adj then ["Downgrade — no release notes available."]
|
|
else [.[$start:$end_adj][] | "## " + .tag_name + "\n\n" + (.body // "No release notes.")]
|
|
end | .[]')
|
|
echo "RELEASE_NOTES<<EOF" >> "$GITHUB_ENV"
|
|
echo "$RELEASE_NOTES" >> "$GITHUB_ENV"
|
|
echo "EOF" >> "$GITHUB_ENV"
|
|
|
|
- name: Generate token
|
|
id: app-token
|
|
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
|
|
with:
|
|
app-id: ${{ secrets.GH_AUTOFIX_APP_ID }}
|
|
private-key: ${{ secrets.GH_AUTOFIX_PRIVATE_KEY }}
|
|
permission-pull-requests: write
|
|
permission-contents: write
|
|
|
|
- name: Create pull request
|
|
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c # v6.1.0
|
|
with:
|
|
token: ${{ steps.app-token.outputs.token }}
|
|
commit-message: 'feat: update @supabase/*-js libraries to v${{ github.event.inputs.version }}'
|
|
title: 'feat: update @supabase/*-js libraries to v${{ github.event.inputs.version }}'
|
|
body: |
|
|
This PR updates @supabase/*-js libraries to version ${{ github.event.inputs.version }}.
|
|
|
|
**Source**: ${{ github.event.inputs.source }}
|
|
|
|
**Changes**:
|
|
- Updated @supabase/supabase-js to ${{ github.event.inputs.version }}
|
|
- Updated @supabase/auth-js to ${{ github.event.inputs.version }}
|
|
- Updated @supabase/realtime-js to ${{ github.event.inputs.version }}
|
|
- Updated @supabase/postgest-js to ${{ github.event.inputs.version }}
|
|
- Refreshed pnpm-lock.yaml
|
|
|
|
---
|
|
|
|
## Release Notes
|
|
|
|
${{ env.RELEASE_NOTES }}
|
|
|
|
This PR was created automatically.
|
|
branch: 'gha/auto-update-js-libs-v${{ github.event.inputs.version }}'
|
|
base: 'master'
|