Setting up Gitlab as a Source

Connecting GitLab as a Source in Guru allows you to bring your GitLab issues into Guru for searching and generating AI-powered Answers. This integration helps your team access code and related content directly within Guru, improving knowledge sharing and reducing context switching.

๐Ÿ‘ฅ

Access Required

Guru Access: You need to be an Admin, Source Creator, or relevant custom role to set up Sources.

Gitlab Issues You need your Gitlab Issues credentials

Setting up GitLab Issues as a Source

  1. Go to Manage > Sources in the Guru web app.
  2. Select GitLab Issues from the list of available Source icons.
  3. Click Configure Integration.
  4. Optionally, rename the Source to something meaningful for your team.
  5. Click Next.
  6. Click Connect and log in to your GitLab account to authorize Guru.
  7. Add a display name for the Source (optional) and click Connect Source.
  8. Assign which Guru Groups should have access to this content.

Objects synced from Gitlab Issues

Primary objects are the objects used to generate the search record.

Common Model / What You'll See During Setup

Objects/Data Brought In

Key Fields

Ticket

Primary Object:
Project issues and tasks

โ€ข Name (title) โ€ข Description โ€ข Ticket type โ€ข Status (Enum: opened/closed) โ€ข Priority (Enum) โ€ข Assignees (Array) โ€ข Due date โ€ข Completed at โ€ข Project (Unknown) โ€ข Collections (Array - groups/projects) โ€ข Tags (Array - labels) โ€ข Ticket URL โ€ข Remote created at โ€ข Remote updated at โ€ข Remote ID โ€ข Remote data

Comment

Notes/comments on issues

โ€ข Body โ€ข User (UUID - author) โ€ข Ticket (UUID) โ€ข Remote created at โ€ข Remote ID โ€ข Remote data

Project

GitLab repositories/projects

โ€ข Name โ€ข Description โ€ข Remote ID โ€ข Remote data

Collection

Groups and subgroups organizing projects

โ€ข Name โ€ข Description โ€ข Access level (Enum) โ€ข Parent collection (UUID - parent group) โ€ข Users (Unknown) โ€ข Remote ID โ€ข Remote data

Tag

Labels for categorizing issues

โ€ข Name โ€ข Remote ID โ€ข Remote data

User

GitLab users (developers, maintainers)

โ€ข Name โ€ข Email address โ€ข Avatar โ€ข Is active (Boolean) โ€ข Remote ID โ€ข Remote data

Role

User roles and permissions within groups/projects

โ€ข Name โ€ข Remote ID โ€ข Remote data

Setting up GitLab Repository as a Source

  1. Go to Manage > Sources in the Guru web app.
  2. Select GitLab Repository from the list of available Source icons.
  3. Click Configure Integration.
  4. Optionally, rename the Source to something meaningful for your team.
  5. Click Next.
  6. Click Connect and log in to your GitLab account to authorize Guru.
  7. Choose which repositories or bulk select all repositories within the selected Groups and Projects.
  8. The Source will index text-based source files fully and only index the titles of binary files (e.g., .zip files).
  9. Click Finish.
  10. Select the Guru Groups that should have access to this GitLab Source.
  11. Optionally, assign a Source Owner who can manage this Source later.
  12. Click Connect Source to finalize the setup.

What gets synced

  • Source code files from the selected GitLab repositories
  • Only text-based files are fully indexed; binary files are indexed by title only

Permissions

  • When you connect Gitlab as a source in Guru, you'll permission that content in Guru. Learn more here.
  • If someone is not provided with access in Guru to this source, they will not see Gitlab results in searches or when chatting with Guru.