[FR] Dynamic GitLab project selection via API queries
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 45/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Pouca atividade
- Stack de tecnologia
- gitlab, typescript
Direção de pesquisa
The issue names no repository files, tests, or entry points; start by locating GitLab connection configuration and project synchronization handling, then review the linked GitLab project-list API documentation. Done means projectQuery results are synchronized alongside groups and projects, with pagination handled as needed and duplicate projects imported only once.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description
Add support for configuring which GitLab projects are mirrored/synchronized by using GitLab API queries.
Introduce a new optional parameter called projectQuery, which allows users to dynamically select projects to mirror based on GitLab API endpoints.
Proposed Configuration
The projectQuery parameter would be an array of strings.
Each string represents a GitLab API URL path (including query parameters) that returns a list of projects.
Example:
{
"connections": {
"gitlab-connection": {
"type": "gitlab",
"groups": [
"..."
],
"projects": [
"..."
],
"projectQuery": [
"groups/group1/projects?include_subgroups=true",
"groups/group2/projects?include_subgroups=false",
"groups/group3/projects?include_subgroups=true&archived=false",
"search?scope=projects&search=flight",
"projects?topic=devops"
]
}
}
}
Here are a few endpoints that return a list of projects:
- https://docs.gitlab.com/api/projects.html#list-all-projects
- https://docs.gitlab.com/api/groups.html#list-a-groups-projects
- https://docs.gitlab.com/api/search.html#scope-projects.
Expected Behavior
All projects returned by the specified API queries should be mirrored in Sourcebot.
If a project is matched by multiple query strings, it must be imported only once (deduplication).
This feature should complement existing groups and projects configuration options.
Motivation
This would make GitLab synchronization more flexible and scalable, especially for organizations with:
- Large numbers of projects
- Complex group and subgroup structures
It would also reduce configuration maintenance by relying on GitLab’s API filtering capabilities.
- Linguagem predominante
- TypeScript
- Estrelas
- 3.9k
- Forks
- 374
- Merge médio
- 21h 18min
- PRs com merge (30d)
- 39
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de sourcebot-dev/sourcebot
-
bug triage needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
sourcebot-dev/sourcebot#1681 · 1 comentário ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
sourcebot-dev/sourcebot#1633 ·
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
sourcebot-dev/sourcebot#1384 · 4 comentários ·
-
ask_sb bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
sourcebot-dev/sourcebot#1137 · 4 comentários ·
-
bug triage needed
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 48/100
sourcebot-dev/sourcebot#1661 · 1 comentário ·
Todas as issues de sourcebot-dev/sourcebot
Issues semelhantes
-
bug(cli): hapi doctor inline-media prints a fabricated B:\ helper-script path in packaged installs Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
-
Crush Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
catppuccin/catppuccin#3125 ·
-
Add a SECURITY.md Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
ElementsProject/cln-application#167 · 1 comentário · 1 reação ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Quantco/pnpm-licenses#17 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100