GitLab CI/CD with glab CLI
Core Principle
Always use --branch to specify branches or tags, never use pipeline IDs directly.
Common Workflows
1. Check Pipeline Status
bash
# Check current branch glab ci status # Check specific branch or tag glab ci status --branch=<branch-or-tag> # Compact view glab ci status --compact --branch=<branch-or-tag>
2. Get Pipeline Details
bash
# Get pipeline info for a branch/tag glab ci get --branch=<branch-or-tag> # Include job IDs and details glab ci get --branch=<branch-or-tag> --with-job-details
3. View Job Logs
bash
# By job name (recommended when you know the name) glab ci trace <job-name> --branch=<branch-or-tag> # By job ID (use after getting job IDs from `glab ci get --with-job-details`) glab ci trace <job-id>
Example workflow:
bash
# 1. Check status and see job names glab ci status --branch=staging # 2. Get logs for a specific failed job glab ci trace check-pending-migrations --branch=staging
4. List Pipelines
bash
# List recent pipelines (overview only) glab ci list # Filter by ref (branch/tag) glab ci list --ref=<branch-or-tag> # Filter by status glab ci list --status=failed
Important Notes
- •NEVER use
glab ci view- it only works interactively. Useglab ci status --livefor monitoring orglab ci tracefor job logs instead - •Job names and job IDs work with
glab ci trace, but pipeline IDs do not - •Always specify
--repoif working with a repository other than the current directory - •Use
--branchfor both branches and tags (the flag name is--brancheven for tags)
Quick Reference
| Task | Command |
|---|---|
| Pipeline status | glab ci status --branch=<ref> |
| Pipeline details | glab ci get --branch=<ref> |
| Job logs | glab ci trace <job-name|job-id> [--branch=<ref>] |
| List pipelines | glab ci list [--ref=<ref>] |