Skip to content

Update gemini-webapi #52

Update gemini-webapi

Update gemini-webapi #52

Workflow file for this run

name: Update gemini-webapi
on:
schedule:
- cron: "0 0 * * *" # Runs every day at midnight
workflow_dispatch:
jobs:
update-dep:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
version: "latest"
- name: Update gemini-webapi
id: update
run: |
# Install dependencies first to enable uv pip show
uv sync
# Get current version of gemini-webapi before upgrade
OLD_VERSION=$(uv pip show gemini-webapi 2>/dev/null | grep ^Version: | awk '{print $2}')
if [ -z "$OLD_VERSION" ]; then
echo "Error: Could not extract current gemini-webapi version" >&2
exit 1
fi
echo "Current gemini-webapi version: $OLD_VERSION"
# Update the package using uv, which handles pyproject.toml and uv.lock
uv add --upgrade gemini-webapi
# Get new version of gemini-webapi after upgrade
NEW_VERSION=$(uv pip show gemini-webapi | grep ^Version: | awk '{print $2}')
if [ -z "$NEW_VERSION" ]; then
echo "Error: Could not extract new gemini-webapi version" >&2
exit 1
fi
echo "New gemini-webapi version: $NEW_VERSION"
# Only proceed if gemini-webapi version has changed
if [ "$OLD_VERSION" != "$NEW_VERSION" ]; then
echo "gemini-webapi has been updated from $OLD_VERSION to $NEW_VERSION"
echo "updated=true" >> $GITHUB_OUTPUT
echo "version=$NEW_VERSION" >> $GITHUB_OUTPUT
else
echo "No updates available for gemini-webapi (version $OLD_VERSION unchanged)"
echo "updated=false" >> $GITHUB_OUTPUT
fi
- name: Create Pull Request
if: steps.update.outputs.updated == 'true'
uses: peter-evans/create-pull-request@v6
with:
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: ":arrow_up: update gemini-webapi to ${{ steps.update.outputs.version }}"
title: ":arrow_up: update gemini-webapi to ${{ steps.update.outputs.version }}"
body: |
Update `gemini-webapi` to version `${{ steps.update.outputs.version }}`.
Auto-generated by GitHub Actions using `uv`.
branch: update-gemini-webapi
base: main
delete-branch: true
labels: dependency, automated