IPSW-WATCH(1)

NAME
ipsw-watch - Watch Github Commits

SYNOPSIS
ipsw watch [flags]

DESCRIPTION
Watch Github Commits

OPTIONS
-a, --api=""
    Github API Token

-b, --branch="main"
    Repo branch to watch

--cache=""
    Cache file to store seen commits/tags

-c, --command=""
    Command to run on new commit

-d, --days=1
    Days back to search for commits

--discord[=false]
    Annouce to Discord

--discord-icon=""
    Discord Post Icon URL

--discord-id=""
    Discord Webhook ID

--discord-token=""
    Discord Webhook Token

-f, --file=""
    Commit file path to watch

--func=""
    Function name to watch (for local repos)

-h, --help[=false]
    help for watch

--json[=false]
    Output downloadable tar.gz URLs as JSON

--mastodon[=false]
    Annouce to Mastodon

--mastodon-access-token=""
    Mastodon Access Token

--mastodon-client-id=""
    Mastodon Client ID

--mastodon-client-secret=""
    Mastodon Client Secret

--mastodon-server="https://mastodon.social"
    Mastodon Server URL

-p, --pattern=""
    Commit message pattern to match

--post[=false]
    Create social media post for NEW tags

--ssh-key=""
    SSH private key for git operations

-g, --tags[=false]
    Watch for new tags

-t, --timeout=0s
    Timeout for watch attempts (default: 0s = no timeout/run once)

OPTIONS INHERITED FROM PARENT COMMANDS
--color[=false]
    colorize output

--config=""
    config file (default is $HOME/.config/ipsw/config.yaml)

--no-color[=false]
    disable colorize output

-V, --verbose[=false]
    verbose output

EXAMPLE
    # Watch the main branch of the WebKit/WebKit repo for new commits every 5 minutes with the pattern '254930' for the last 30 days
    ❯ ipsw watch --pattern '254930' --days 30 WebKit/WebKit --branch main --timeout 5m
    # Watch the main branch of the WebKit/WebKit repo for new commits every 5 minutes and announce to Discord
    ❯ IPSW_WATCH_DISCORD_ID=1234 IPSW_WATCH_DISCORD_TOKEN=SECRET ipsw watch --pattern 'Lockdown Mode' --days 1 --timeout 5m WebKit/WebKit
    # Watch the main branch of the WebKit/WebKit repo for new commits every 5 minutes and run a command on new commits
    # NOTE: the command will have access to the following environment variables:
    #   - IPSW_WATCH_OID
    #   - IPSW_WATCH_URL
    #   - IPSW_WATCH_AUTHOR
    #   - IPSW_WATCH_DATE
    #   - IPSW_WATCH_MESSAGE
    ❯ ipsw watch WebKit/WebKit --command 'echo "New Commit: $IPSW_WATCH_URL"'
    # Watch WebKit/WebKit for new tags every 5 minutes and announce to Discord
    ❯ IPSW_WATCH_DISCORD_ID=1234 IPSW_WATCH_DISCORD_TOKEN=SECRET ipsw watch WebKit/WebKit --tags --timeout 5m
    # Watch a specific function in a local repo
    ❯ ipsw watch /path/to/local/REPO --func "MyFunction" --file "path/to/file.go" --timeout 5m

SEE ALSO
ipsw(1)

HISTORY
25-May-2025 Auto generated by spf13/cobra