8000 GitHub - georgi/gh-status
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

georgi/gh-status

Repository files navigation

GitHub Build Status Monitor

A system tray application that monitors GitHub Actions build status for your repositories.

Features

  • Real-time monitoring of GitHub Actions workflow status
  • System tray icon with color-coded status indicators:
    • 🟢 Green: All builds passing
    • 🔴 Red: One or more builds failing
    • 🟡 Yellow: Builds in progress
    • ⚪ Gray: Unknown/no builds
  • Click on repository names to open build details in browser
  • Add/remove repositories from the system tray menu
  • No GitHub token required for public repositories
  • Configurable update interval

Installation

  1. Clone this repository:
git clone https://github.com/yourusername/gh-status.git
cd gh-status
  1. Install dependencies:
pip install -r requirements.txt
  1. (Optional) Create your configuration file:
cp config.yaml.example config.yaml
  1. (Optional) Set up auto-start at login:
python install_startup.py

Quick Start

Run the monitor:

python gh_status_monitor.py

The app will create a default config with some popular repos if none exists.

Adding Repositories

Method 1: From System Tray Menu

  1. Right-click the system tray icon
  2. Select "Add Repository..."
  3. Enter repository in format: owner/repo (e.g., facebook/react)

Method 2: Command Line Tool

# Add single repository
python add_repos.py facebook/react

# Add multiple repositories
python add_repos.py vercel/next.js microsoft/vscode torvalds/linux

# List all configured repositories
python add_repos.py --list

Method 3: Edit config.yaml

repositories:
  - owner: facebook
    repo: react
  - owner: vercel
    repo: next.js

Configuration

GitHub Token (Optional)

Only needed for:

  • Private repositories
  • Increasing API rate limits (60/hour → 5000/hour)

Create a token at https://github.com/settings/tokens with:

  • public_repo scope for public repos only
  • repo scope for private repos

Usage

Run the monitor:

python gh_status_monitor.py

Or make it executable:

chmod +x gh_status_monitor.py
./gh_status_monitor.py

The application will:

  • Start in your system tray
  • Check build status every 5 minutes (configurable)
  • Update the tray icon based on overall status
  • Right-click the icon to see individual repository statuses

System Tray Menu

  • Repository names: Click to open the latest workflow run in your browser
  • Refresh: Manually update all repository statuses
  • Quit: Exit the application

Running at Startup

Automatic Installation (Recommended)

Use the provided installer for your platform:

# Interactive installer (works on macOS, Linux, Windows)
python install_startup.py

# Or platform-specific:
# macOS only
python install_launch_agent.py

The installer will:

  • macOS: Create a LaunchAgent that starts at login
  • Linux: Create a systemd user service
  • Windows: Add to startup folder with silent execution

Manual Installation

macOS

  1. Run python install_launch_agent.py --install
  2. Or manually: System Preferences → Users & Groups → Login Items → Add script

Linux

  1. Run python install_startup.py and choose option 1
  2. Or manually: Add to your desktop environment's startup applications

Windows

  1. Run python install_startup.py and choose option 1
  2. Or manually: Copy the generated .vbs file to your Startup folder

Requirements

  • Python 3.6+
  • System with system tray support (Windows, macOS, Linux with desktop environment)

Troubleshooting

  • No icon appears: Ensure your system supports system tray icons
  • Authentication errors: Verify your GitHub token has the correct permissions
  • No status updates: Check your internet connection and GitHub API limits

License

MIT License - see LICENSE file for details

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0