GitLab בסיס
מפת הדפים בטאב
Section titled “מפת הדפים בטאב”| צריך | דף |
|---|---|
| ליצור token / service account / deploy token ולבחור ביניהם | identities |
להבין למה 403 למרות שה-token "תקין" (role מול scope) | permissions |
| CI/CD variables, Mask מול Protect | variables |
| runner שמריץ jobs | runners |
| נתיבי image, deploy token למשיכה | registry |
איפה ב-UI: הכול במקום אחד
Section titled “איפה ב-UI: הכול במקום אחד”כל הנתיבים מתחילים ב-Project → (או Group → כשכתוב). ניסוח התפריט משתנה קצת בין גרסאות.
| מה | נתיב |
|---|---|
| Members (role) | Manage → Members |
| Access tokens (Premium) | Settings → Access tokens |
| Deploy tokens | Settings → Repository → Deploy tokens |
| CI/CD variables | Settings → CI/CD → Variables |
| Runners | Settings → CI/CD → Runners |
| Protected branches | Settings → Repository → Protected branches |
| Container registry | Deploy → Container registry |
| Pipelines / Jobs | Build → Pipelines / Build → Jobs |
| Pipeline editor (Validate) | Build → Pipeline editor |
| Environments | Operate → Environments |
| PAT (אישי) | Avatar ← Edit profile → Access tokens |
| SSH keys (אישי) | Avatar ← Edit profile → SSH Keys |
group path מול display name
Section titled “group path מול display name”ל-group יש שני שמות. ה-URL, ה-clone וה-repoURL משתמשים תמיד ב-path, לא ב-display name.
Group → Settings → General → Naming, visibility Group name = display name (can contain spaces, free text) TRIDENT: trident-lab Group URL = path (what goes in every URL and variable) TRIDENT: trident-lab00איך מוודאים: git ls-remote git@<GITLAB_HOST>:<GROUP>/<REPO>.git מדפיס רשימת refs ולא not found.
ליצור group ו-project
Section titled “ליצור group ו-project”Create group: left sidebar → Groups → View all groups → New group → Create group fill: Group name, Group URL (this is the path), Visibility = Private → Create group
Create project inside the group: open the group → New project/repository → Create blank project fill: Project name, Project URL (pick the group in the dropdown), Project slug (= the repo path), Visibility = Private untick "Initialize repository with a README" if you will push an existing repo, otherwise tick it → Create projectניסוחי התפריט משתנים קצת בין גרסאות (Groups מול Your work, "New project/repository" מול "New project"). המבנה הקבוע: group → New project → Create blank project.
איך מוודאים: כפתור Code בדף ה-project מציג את כתובות ה-clone עם ה-path הנכון.
ליצור branch ב-UI
Section titled “ליצור branch ב-UI”Project → Code → Branches → New branch Branch name: <BRANCH> Create from: mainאו מה-clone: git switch -c <BRANCH> ואז git push -u origin <BRANCH> (ראה git/branches).
ה-default branch משתנה ב-Project → Settings → Repository → Branch defaults.
סט ה-repos של פרויקט בסגנון TRIDENT
Section titled “סט ה-repos של פרויקט בסגנון TRIDENT”הפרויקט מחולק למספר repos כי לכל אחד יש כותב וקורא אחרים. חשוב לדעת מי כותב (זה קובע role ו-scope).
| repo | תוכן | מי כותב | מי קורא |
|---|---|---|---|
trident-source | קוד, Dockerfile, .gitlab-ci.yml דק, ה-registry של ה-images | אתה | ה-runner (CI), kubelet (registry) |
trident-ci | pipelines/source.yml, scripts/promote.sh | אתה | ה-pipeline של source (include + clone) |
trident-gitops | values לכל environment, versions/<ENV>.yaml, argocd/ | אתה + CI (רק versions/) | Argo CD |
trident-templates | ה-charts (pinned ב-tag) | אתה | Argo CD |
- ה-images נדחפים ל-registry של source, לא של gitops. ל-gitops מגיעה רק מחרוזת ה-tag.
- Argo קורא רק את
gitopsו-templates. הוא לא קורא אתsource. - ה-CI לא נוגע ב-cluster; הוא כותב ל-Git ו-Argo מסנכרן. פירוט ב-architecture/overview.