class LabClient::Groups

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Specifics

Projects Specifics

Specifics

Ugly Hack, but Makes Docs Easy

Specifics

Specifics

Specifics

Public Instance Methods

access_requests() click to toggle source
# File lib/labclient/groups/access_requests/client.rb, line 13
def access_requests
  GroupAccessRequests.new(client)
end
badges() click to toggle source
# File lib/labclient/groups/badges/client.rb, line 13
def badges
  GroupBadges.new(client)
end
clusters() click to toggle source
# File lib/labclient/groups/clusters/client.rb, line 13
def clusters
  GroupClusters.new(client)
end
create(query = {}) click to toggle source
# File lib/labclient/groups/create.rb, line 27
def create(query = {})
  client.request(:post, 'groups', Group, query)
end
delete(group_id) click to toggle source
# File lib/labclient/groups/delete.rb, line 19
def delete(group_id)
  group_id = format_id(group_id)

  client.request(:delete, "groups/#{group_id}", nil)
end
hooks() click to toggle source
# File lib/labclient/groups/hooks/client.rb, line 13
def hooks
  GroupHooks.new(client)
end
labels() click to toggle source
# File lib/labclient/groups/labels/client.rb, line 13
def labels
  GroupLabels.new(client)
end
ldap() click to toggle source
# File lib/labclient/groups/ldap/client.rb, line 14
def ldap
  GroupLdap.new(client)
end
list(query = {}) click to toggle source
# File lib/labclient/groups/list.rb, line 70
def list(query = {})
  query_access_level(query, :min_access_level)

  client.request(:get, 'groups', Group, query)
end
milestones() click to toggle source
# File lib/labclient/groups/milestones/client.rb, line 13
def milestones
  GroupMilestones.new(client)
end
projects(group_id, query = {}) click to toggle source
# File lib/labclient/groups/projects.rb, line 43
def projects(group_id, query = {})
  group_id = format_id(group_id)

  # Map Skip Groups
  format_query_ids(:skip_groups, query)

  query_access_level(query, :min_access_level)

  client.request(:get, "groups/#{group_id}/projects", Project, query)
end
restore(group_id) click to toggle source
# File lib/labclient/groups/restore.rb, line 20
def restore(group_id)
  group_id = format_id(group_id)

  client.request(:post, "groups/#{group_id}/restore", Group)
end
runners(group_id, query = {}) click to toggle source
# File lib/labclient/groups/runners.rb, line 28
def runners(group_id, query = {})
  group_id = format_id(group_id)
  client.request(:get, "groups/#{group_id}/runners", Runner, query)
end
search_within(group_id, scope, search_string = '') click to toggle source

Search All Projects

# File lib/labclient/groups/search.rb, line 51
def search_within(group_id, scope, search_string = '')
  group_id = format_id(group_id)

  scope = scope.to_sym # Case Simplicity
  query = { scope: scope, search: search_string }

  klass = klass_type(scope)

  client.request(:get, "groups/#{group_id}/search", klass, query)
end
show(group_id, query = {}) click to toggle source
# File lib/labclient/groups/show.rb, line 31
def show(group_id, query = {})
  group_id = format_id(group_id)

  client.request(:get, "groups/#{group_id}", Group, query)
end
subgroups(group_id, query = {}) click to toggle source
# File lib/labclient/groups/subgroups.rb, line 36
def subgroups(group_id, query = {})
  group_id = format_id(group_id)

  # Map Skip Groups
  format_query_ids(:skip_groups, query)

  query_access_level(query, :min_access_level)

  client.request(:get, "groups/#{group_id}/subgroups", Group, query)
end
transfer(group_id, project_id) click to toggle source
# File lib/labclient/groups/transfer.rb, line 20
def transfer(group_id, project_id)
  group_id = format_id(group_id)
  project_id = format_id(project_id)

  client.request(:post, "groups/#{group_id}/projects/#{project_id}", Project)
end
update(group_id, query = {}) click to toggle source
# File lib/labclient/groups/update.rb, line 28
def update(group_id, query = {})
  group_id = format_id(group_id)

  client.request(:put, "groups/#{group_id}", Group, query)
end

Private Instance Methods

klass_type(scope) click to toggle source

TODO: - Finish Classes

# File lib/labclient/groups/search.rb, line 74
def klass_type(scope)
  case scope
  when :projects then Project
  when :issues then Issue
  when :merge_requests then MergeRequest
  when :milestones, :wiki_blobs, :blobs then nil
  when :commits then Commit
  when :users then User
  end
end