6.0 KiB
6.0 KiB
name, description, dependencies
| name | description | dependencies |
|---|---|---|
| actions-runs | Fetch and monitor Gitea Actions CI results for a PR or branch | tea |
Gitea Actions Run Monitoring
Guide for inspecting CI workflow runs using the tea actions runs CLI.
Table of Contents
Listing Runs
# List recent runs (default: last 30)
tea actions runs ls --repo thatguygriff/walkies
# Filter by branch (use this to find runs for a PR's branch)
tea actions runs ls --branch feature/my-branch --repo thatguygriff/walkies
# Filter by status
tea actions runs ls --status failure --repo thatguygriff/walkies
tea actions runs ls --status success --repo thatguygriff/walkies
tea actions runs ls --status in_progress --repo thatguygriff/walkies
# Valid statuses: success, failure, pending, queued, in_progress, skipped, canceled
# Filter by trigger event
tea actions runs ls --event pull_request --repo thatguygriff/walkies
tea actions runs ls --event push --repo thatguygriff/walkies
# Filter by who triggered the run
tea actions runs ls --actor thatguygriff --repo thatguygriff/walkies
# Filter by time range
tea actions runs ls --since 24h --repo thatguygriff/walkies
tea actions runs ls --since 2026-04-01 --until 2026-04-08 --repo thatguygriff/walkies
# Increase result limit
tea actions runs ls --limit 50 --repo thatguygriff/walkies
# JSON output for scripting
tea actions runs ls --output json --repo thatguygriff/walkies
Viewing a Run
Get the run ID from tea actions runs ls, then:
# View run summary
tea actions runs view 42 --repo thatguygriff/walkies
# View with jobs table (shows individual job statuses)
tea actions runs view 42 --jobs --repo thatguygriff/walkies
# JSON output (includes job IDs for log fetching)
tea actions runs view 42 --output json --repo thatguygriff/walkies
Viewing Logs
# View logs for all jobs in a run
tea actions runs logs 42 --repo thatguygriff/walkies
# View logs for a specific job
tea actions runs logs 42 --job JOB_ID --repo thatguygriff/walkies
# Follow live logs for an in-progress job (requires --job)
tea actions runs logs 42 --job JOB_ID --follow --repo thatguygriff/walkies
Get job IDs from tea actions runs view 42 --output json.
Managing Workflows
# List all workflow definitions in the repo
tea actions workflows ls --repo thatguygriff/walkies
# Cancel or delete a run
tea actions runs delete 42 --repo thatguygriff/walkies
Common Workflows
Check CI status for the current PR branch
BRANCH=$(git branch --show-current)
# Find the latest run for this branch
tea actions runs ls --branch "$BRANCH" --limit 5 --repo thatguygriff/walkies
# Get the most recent run ID as JSON
RUN_ID=$(tea actions runs ls --branch "$BRANCH" --limit 1 --output json --repo thatguygriff/walkies \
| jq -r '.[0].id')
echo "Latest run: $RUN_ID"
# View job-level summary
tea actions runs view "$RUN_ID" --jobs --repo thatguygriff/walkies
Wait for CI to finish, then report status
BRANCH=$(git branch --show-current)
while true; do
STATUS=$(tea actions runs ls --branch "$BRANCH" --limit 1 --output json --repo thatguygriff/walkies \
| jq -r '.[0].status')
echo "Status: $STATUS"
case "$STATUS" in
success|failure|canceled|skipped) break ;;
*) sleep 15 ;;
esac
done
echo "Final CI status: $STATUS"
Fetch logs for a failing run
BRANCH=$(git branch --show-current)
RUN_ID=$(tea actions runs ls --branch "$BRANCH" --status failure --limit 1 --output json \
--repo thatguygriff/walkies | jq -r '.[0].id')
# Show all logs for the failed run
tea actions runs logs "$RUN_ID" --repo thatguygriff/walkies
# Or drill into a specific failing job
tea actions runs view "$RUN_ID" --output json --repo thatguygriff/walkies \
| jq '.jobs[] | select(.status == "failure") | {id: .id, name: .name}'
# Then fetch that job's logs
JOB_ID=<id from above>
tea actions runs logs "$RUN_ID" --job "$JOB_ID" --repo thatguygriff/walkies
Monitor a run that's currently in progress
RUN_ID=42
# Get the in-progress job ID
JOB_ID=$(tea actions runs view "$RUN_ID" --output json --repo thatguygriff/walkies \
| jq -r '.jobs[] | select(.status == "in_progress") | .id' | head -1)
# Follow live logs
tea actions runs logs "$RUN_ID" --job "$JOB_ID" --follow --repo thatguygriff/walkies
Quick Reference
# List
tea actions runs ls # Last 30 runs
tea actions runs ls --branch feature/foo # Runs for a branch
tea actions runs ls --status failure # Failed runs only
tea actions runs ls --event pull_request # PR-triggered runs
tea actions runs ls --limit 1 --output json | jq '.[0]' # Latest run as JSON
# View
tea actions runs view 42 # Run summary
tea actions runs view 42 --jobs # With jobs table
tea actions runs view 42 --output json # Full JSON (incl. job IDs)
# Logs
tea actions runs logs 42 # All logs for a run
tea actions runs logs 42 --job JOB_ID # Specific job logs
tea actions runs logs 42 --job JOB_ID --follow # Follow live output
# Cancel / delete
tea actions runs delete 42 # Cancel or delete run
# Workflows
tea actions workflows ls # List workflow definitions
Tips
- Find the run for a PR: PRs run on their head branch — filter with
--branchusing the feature branch name, not the PR number. - Get job IDs: Use
--output jsononviewthenjq '.jobs[] | {id, name, status}'to identify which job to drill into. - Status polling: The
--status in_progressfilter helps confirm a run is still going before following logs. - Log noise: Full run logs can be large — use
--jobto focus on the failing step.