GitLab¶
GitLab is our source code management, CI/CD, and collaboration platform.
| URL | gitlab.shared.cwiq.io |
| Login | SSO via Authentik (Sign in with Google) |
| Version | GitLab CE 18.9 |
Navigating GitLab¶
Groups¶
Projects are organized into groups:
| Group | Contents |
|---|---|
orchestrator |
Platform services (server, ui, agent, mcp, cli) |
sysadmins |
Infrastructure repos (ansible-playbooks, terraform-plan) |
docs |
Documentation sites (this onboarding guide) |
Key Repositories¶
| Repository | Description | Tech |
|---|---|---|
orchestrator/server |
Backend API | FastAPI, SQLAlchemy |
orchestrator/ui |
Frontend | React, TypeScript |
orchestrator/agent |
Task execution agent | Python |
orchestrator/mcp |
MCP tool integration | FastAPI |
orchestrator/cli |
Workflow management CLI | Typer |
orchestrator/executor |
Sandboxed agent executor | Python, Nuitka |
Creating a Merge Request¶
- Push your feature branch (see Git Workflow)
- GitLab will show a banner: "Create merge request" — click it
- Fill in:
- Title: Use conventional commit format (e.g.,
feat(search): add global search) - Description: Summarize what changed and why
- Target branch:
main - Delete source branch: Check this box
- Title: Use conventional commit format (e.g.,
- Assign reviewers
- Click Create merge request
CI/CD Pipelines¶
Every push triggers a CI/CD pipeline. View pipeline status:
- Go to your project
- Click Build > Pipelines in the sidebar
- Click a pipeline to see individual job logs
Pipeline stages: validate → test → build → release → deploy-dev → verify
Container Registry¶
GitLab hosts Docker images at registry.gitlab.shared.cwiq.io. Docker images are built and pushed automatically by CI/CD.
SSH Access¶
Git over SSH uses port 2222 via Tailscale. See Git & SSH Setup for configuration.