İçeriğe geç

GitLab

GitLab iki tür kimlik bilgisi kabul eder; ikisi de hem gitlab.com hem self-managed GitLab ile çalışır.

OAuth uygulamasıKişisel erişim token’ı
Kime aitGitLab’de tanımladığınız bir uygulamayaTek bir kişinin hesabına
TokenErişim token’ı otomatik yenilenirToken’ın kendi bitiş tarihine kadar geçerli
Kapsamlarapi, read_user, read_repositoryapi (tam kullanım) veya read_api (salt okunur)
  1. Kimlik bilgileri → Bağlantı ekle → GitLab.
  2. GitLab’in nerede olduğunu seçin: gitlab.com (Cloud) veya Self-hosted. Self-hosted için kurulum adresini girin, ör. https://gitlab.acme.com (sonunda yol olmadan).
  3. Kimlik doğrulama yolunu seçin: Uygulama tanımla veya Token yapıştır.
  1. GitLab’de User Settings → Applications sayfasında bir uygulama oluşturun.
  2. Sihirbazın gösterdiği Redirect URI’yi birebir yapıştırın.
  3. api, read_user, read_repository kapsamlarını işaretleyin.
  4. Application ID ve Secret değerlerini sihirbaza yapıştırıp kaydedin. Grup adı isteğe bağlıdır.
  5. Yetkilendirmeyi kimlik bilgisindeki GitLab ile bağlan düğmesiyle tamamlayın.
  1. GitLab’de api veya read_api kapsamlı bir kişisel erişim token’ı oluşturun.
  2. Sihirbaza yapıştırın. Grup adı isteğe bağlıdır.

Token saklanmadan önce AppArch kapsamlarını ve bitiş tarihini GitLab’den okur. api veya read_api içermeyen token reddedilir. read_api token’ı salt okunur uyarısıyla kabul edilir: tarama ve raporlar çalışır, ancak ArchPilot bu token ile yorum yazamaz.

  • ArchPilot merge request’lere yorum yazar.
  • CI çalışmalarından gelen ArchScan / ArchSecurity sonuçları panelde görünür.

GitLab CI hattınıza runner job’ını ekleyin:

# Image pulls are authorized with your INSTALLATION credential, not the project token
# (Settings → CI/CD → Variables):
# DOCKER_AUTH_CONFIG = {"auths":{"hub.apparch.io":{"auth":"base64(<installation-id>:<installation-key>)"}}}
archpilot:
image: hub.apparch.io/collectors/dotnet:latest
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
variables:
# The two values you set: your AppArch installation's address and the project token.
ApiUrl: "https://api.yourdomain.com"
ProjectToken: "$APPARCH_TOKEN"
script:
# Optional flags: --modules archpilot,archscan (pin what runs)
# --fail-on critical (fail this step when findings at/above the level exist)
- apparch "$CI_PROJECT_DIR"

Diğer CI örnekleri ve token kurulumu: Runner’ı CI’a ekleme.