GitHub Actions
단계 템플릿을 사용해 CI/CD 워크플로 진행 상황을 Lock Screen에서 실시간으로 추적하세요.

How It Works
The pushward-github bridge container polls the GitHub Actions API for in-progress workflow runs and maps workflow progress to Live Activities using the steps template.
- Idle polling -- checks all configured repos every 60s for in-progress workflows
- Active tracking -- when a run is detected, polls jobs every 5s and updates progress
- Cleanup -- after the workflow completes, the activity is cleaned up after a configurable delay (default 15 min)
Setup
1. Get Your Integration Key
PushWard 앱을 열고 → 설정 → 연동 키에서 기본 hlk_ 키를 확인하세요.
이 연동을 위한 전용 키를 생성하려면:
- 설정 → 키 관리로 이동하세요
- +를 탭하세요
- 이름을 설정하고(예: "GitHub Actions"), 선택: , 범위를 선택한 다음 선택적으로 activity 슬러그로 제한하세요
- 생성된
hlk_키를 복사하세요
2. Create a GitHub Personal Access Token
Create a fine-grained PAT with actions:read permission on the repos you want to track.
3. Deploy the Bridge
docker-compose.yml
services:
pushward-github:
image: ghcr.io/mac-lucky/pushward-github:latest
environment:
PUSHWARD_URL: https://api.pushward.app
PUSHWARD_API_KEY: hlk_YOUR_INTEGRATION_KEY
PUSHWARD_GITHUB_TOKEN: ghp_YOUR_GITHUB_TOKEN
PUSHWARD_GITHUB_OWNER: your-username # auto-discovers all repos
# OR specify repos explicitly:
# PUSHWARD_GITHUB_REPOS: owner/repo1,owner/repo2
restart: unless-stoppedConfiguration
| 환경 변수 | 설명 | 기본값 |
|---|---|---|
PUSHWARD_URL | PushWard server URL | -- |
PUSHWARD_API_KEY | Integration key (hlk_ prefix) | -- |
PUSHWARD_GITHUB_TOKEN | GitHub PAT with actions:read | -- |
PUSHWARD_GITHUB_OWNER | GitHub username for auto-discovery | -- |
PUSHWARD_GITHUB_REPOS | Comma-separated owner/repo list | -- |
PUSHWARD_PRIORITY | Activity priority (0-10) | 1 |
PUSHWARD_POLL_IDLE | Idle poll interval | 60s |
PUSHWARD_POLL_ACTIVE | Active poll interval | 5s |
PUSHWARD_CLEANUP_DELAY | Delay before cleanup after ended | 15m |
팁
Use PUSHWARD_GITHUB_OWNER to auto-discover all your repos. The bridge refreshes the repo list every 5 minutes, skipping archived and disabled repos.
Activity Slug Format
Activities are created with the slug gh-{repo-name} (e.g. gh-pushward-server). One run is tracked per repository at a time.