DevOps Portal
Catalog, deployments, runbooks and self-service for the cloud team.
Connections
What the portal can reach right now.
- GitLab Checking…
- Telegram Checking…
- Jira Checking…
What's here
Built one piece at a time. Greyed items are not implemented yet.
- Settings Connections the portal uses.
- Service catalog What exists, who owns it, what it depends on.
- Deployments Repositories and their open merge requests.
- Runbooks Procedures and incident write-ups.
- Self-service Crossplane claims, via merge request.
Deployments
Repositories the portal watches, and the merge requests waiting in them.
Repositories
Loading…
Merge requests
Settings
Connections the portal uses. Changes take effect immediately.
GitLab
Loading…
Telegram
Loading…
Users
Accounts, roles, and invites.
Company VPN
Join the company tailnet to reach internal services.
Generates a one-time key for tailscale up --authkey=<key>. The key works once, for one device, and expires shortly — request a new one any time you need to add a device.
Copy this now — it will not be shown again.
Expires —.
Jira
Loading…
Optional. When connected, deploying to staging checks every Jira issue linked from the merge request's description and blocks the deploy unless all of them are Release Approved — or Ready For Staging Test on a re-deploy, once the MR already carries the For Release label. Not connected just skips that one check, with a warning.
Users
← Settings · Roles · Audit Log
Accounts
Loading…
Accounts sign in with a code from an authenticator app after claiming an invite and setting up TOTP. Deactivating removes access without deleting the account's history.
Roles
Permissions
"admin" always has every permission and can't be edited or removed. Check a box to grant that action to a role; users on a role pick up the change immediately on their next request.
Audit Log
Set up the portal
No accounts exist yet. Sign in with the bootstrap token to create the first account.
Bootstrap token (shown once — copy it somewhere safe):
—
Find the bootstrap token in .bootstrap-data/bootstrap-token
next to compose.yaml (or in the mounted Secret, in Kubernetes).
Signed in as root. Create the first account — it becomes an admin.
Setup is already complete. Use Settings → Users to manage accounts.
Sign in
Username and the code from your authenticator app.
Finish setting up your account
Checking your invite…
Set up sign-in
Add this account to an authenticator app (Google Authenticator, 1Password, Authy, …), then enter the 6-digit code it shows.
Loading…