class

GitLab::Client

Inherits Reference < Object

Constructors

new(base_url : String = "https://gitlab.com", token : String | Nil = nil, department_prefix : String | Nil = nil)
Source

Instance methods

base_url
Source
department_prefix
Source
get_group(id : Int64) : GitLabGroup
Source
get_group_members(group_id : Int64) : Array(GitLabGroupMember)
Source
get_user(id : Int64) : GitLabUser | Nil

Get user by REAL user id (nil-safe + parse-safe)

Source
group_from_department?(group_id : Int64) : Bool

Decide if ANY member of a group belongs to the department

Source
list_first_page_internal(per_page : Int32 = 100, &block : GitLabProject -> ) : Nil

INTERNAL (first page only) — streaming

Source
list_first_page_public(per_page : Int32 = 100, &block : GitLabProject -> ) : Nil

PUBLIC (first page only) — streaming

Source
list_internal_projects(per_page : Int32 = 100, &block : GitLabProject -> ) : Nil

INTERNAL visible with token (all pages) — streaming

Source
list_projects(per_page : Int32 = 100, &block : GitLabProject -> ) : Nil

Auto-selects: with token → internal; without token → public (streaming).

Source
list_public_projects(per_page : Int32 = 100, &block : GitLabProject -> ) : Nil

PUBLIC (all pages) — streaming

Source
project_from_department?(project : GitLabProject) : Bool

Main decision: does this project belong to the department?

Source
resolve_user_id_from_namespace(ns : GitLabNamespace) : Int64 | Nil

Resolve REAL user id from a user namespace (ns.path = username)

Source
token
Source
user_from_department?(user : GitLabUser) : Bool

Decide if a user belongs to the department (prefix match)

Source