Skip to content

Check Supabase CLI Version #57

Check Supabase CLI Version

Check Supabase CLI Version #57

name: Check Supabase CLI Version
on:
schedule:
- cron: '0 0 * * *' # Daily at midnight
workflow_dispatch: # Manual run
jobs:
check-supabase-release:
name: Check Supabase CLI Releases
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Get Latest Supabase CLI Release
id: get_supabase_release
run: |
LATEST_RELEASE=$(curl -s https://api.github.com/repos/supabase/cli/releases/latest | jq -r .tag_name)
echo "latest_release=$LATEST_RELEASE" >> $GITHUB_ENV
- name: Get Latest Tag in Repo
id: get_repo_tag
run: |
git fetch --prune --unshallow
git describe --tags --abbrev=0
LATEST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "none")
echo "latest_tag=$LATEST_TAG" >> $GITHUB_ENV
- name: Compare Versions
id: compare_versions
run: |
if [ "${{ env.latest_tag }}" = "none" ] || \
[ "${{ env.latest_release }}" != "${{ env.latest_tag }}" ]; then
echo "update_needed=true" >> $GITHUB_ENV
else
echo "update_needed=false" >> $GITHUB_ENV
fi
- name: Update Version File
if: ${{ env.update_needed == 'true' }}
run: |
echo "${{ env.latest_release }}" > version.txt
- name: Commit Changes
if: ${{ env.update_needed == 'true' }}
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git add version.txt
git commit -m "Update to Supabase CLI version ${{ env.latest_release }}"
- name: Create Update Pull Request
if: ${{ env.update_needed == 'true' }}
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: release/update-supabase-cli-${{ env.latest_release }}
base: main
author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
title: "Update to Supabase CLI version ${{ env.latest_release }}"
body: |
This pull request updates the Supabase CLI version to ${{ env.latest_release }}.
assignees: "thurahtetaung"
reviewers: "thurahtetaung"
labels: update, automation