No description
- Python 80.1%
- Shell 19.3%
- Dockerfile 0.6%
|
Some checks failed
vLLM Production Autobuild / Evaluate Stored vs Upstream Hash (push) Successful in 1s
vLLM Production Autobuild / Build vLLM (hopper-fallback) (push) Failing after 8s
vLLM Production Autobuild / Build vLLM (blackwell) (push) Failing after 8s
vLLM Production Autobuild / Build vLLM (universal-stack) (push) Failing after 8s
vLLM Production Autobuild / Sync Hash Variable to Forgejo (push) Has been skipped
|
||
|---|---|---|
| .forgejo/workflows | ||
| forgejo-runner | ||
| pyarmor-tools | ||
| scripts | ||
| setup | ||
| vllm-build/docker | ||
| .gitignore | ||
| build-targets.yml | ||
| README.md | ||
🚀 Forgejo Automated vLLM Autobuild Service
Self-hosted CI/CD pipeline for building custom vLLM Docker images (Blackwell / Hopper / Universal) with automated mirroring, matrix compilation, smoke testing, and Docker Hub publishing.
📁 Current Project Structure
.
├── .forgejo/
│ └── workflows/
│ ├── vllm-autobuild.yml # Main build pipeline
│ └── vllm-pyarmor.yml # Obfuscation release pipeline
├── .gitignore
├── README.md
├── setup/
│ ├── .env # ← Your secrets (ignored)
│ ├── .env.template
│ ├── bootstrap.sh # One-command provisioning
│ └── docker-compose.yml
└── vllm-build/
└── docker/
├── Dockerfile.latest
└── Dockerfile.pyarmor
⚙️ Setup & Configuration
1. Create setup/.env
Copy the template and fill in your credentials:
cp setup/.env.template setup/.env
Example setup/.env:
FORGEJO_PORT=4444
GITHUB_REPO_URL=https://github.com/vllm-project/vllm.git
GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
DOCKERHUB_USERNAME=nctu6
DOCKERHUB_PASSWORD=your_dockerhub_password
2. Bootstrap the Entire System
chmod +x bootstrap.sh
./bootstrap.sh
This script will:
- Start Forgejo + Runner
- Create
administratoruser - Generate access token
- Set up vLLM mirror repo (8h sync)
- Create
vllm-buildrepository - Inject secrets (
ACCESS_TOKEN, Docker Hub, etc.) - Register the runner under administrator scope
- Push workflows and Dockerfiles into the repo
🧪 Running the Pipeline
- Open Forgejo: http://localhost:4444
- Go to administrator/vllm-build
- Navigate to Actions → Run workflow (
vLLM Production Autobuild) - Choose options (Blackwell recommended for manual runs)
🔧 Verification Commands
# Check services
docker compose -f setup/docker-compose.yml ps
# Runner logs
docker logs forgejo-runner --tail 50
# Forgejo health
curl -I http://localhost:4444/api/healthz
🧹 Cleanup / Fresh Start
# Full reset
docker compose -f setup/docker-compose.yml down --volumes --remove-orphans
rm -rf setup/forgejo-data setup/runner-data
./bootstrap.sh
🔒 Security Notes
setup/.envis gitignored — never commit secrets- Runner uses host Docker socket (
/var/run/docker.sock) - Admin password defaults to
TemporaryAdminPass123!(change after first login)
Ready to test?
Run ./bootstrap.sh (if not already done), then trigger a manual workflow.
Last updated: 2026-06-09
---