1212from jf_ingest .config import AzureDevopsAuthConfig as JFIngestAzureDevopsAuthConfig
1313from jf_ingest .config import GitAuthConfig as JFIngestGitAuthConfig
1414from jf_ingest .config import GitConfig as JFIngestGitConfig
15+ from jf_ingest .config import GitLabAuthConfig as JFIngestGitLabAuthConfig
1516from jf_ingest .config import IngestionConfig , IngestionType , IssueMetadata , JiraDownloadConfig
1617
1718from jf_agent import JELLYFISH_API_BASE , VALID_RUN_MODES
@@ -37,6 +38,7 @@ class GitConfig:
3738 git_redact_names_and_urls : bool
3839 gitlab_per_page_override : bool
3940 git_verbose : bool
41+ gitlab_keep_base_url : bool
4042 # For multi-git
4143 creds_envvar_prefix : str
4244 # legacy fields ==================
@@ -70,6 +72,7 @@ class GitConfig:
7072 'jira_issue_jql' ,
7173 'jira_download_worklogs' ,
7274 'jira_download_sprints' ,
75+ 'jira_filter_boards_by_projects' ,
7376 'jira_recursively_download_parents' ,
7477 'jira_skip_saving_data_locally' ,
7578 'git_configs' ,
@@ -167,6 +170,7 @@ def obtain_config(args) -> ValidatedConfig:
167170 jira_issue_jql = jira_config .get ('issue_jql' )
168171 jira_download_worklogs = jira_config .get ('download_worklogs' , True )
169172 jira_download_sprints = jira_config .get ('download_sprints' , True )
173+ jira_filter_boards_by_projects = jira_config .get ('filter_boards_by_projects' , False )
170174 jira_recursively_download_parents = jira_config .get ('recursively_download_parents' , False )
171175 jira_skip_saving_data_locally = jira_config .get ('skip_saving_data_locally' , False )
172176
@@ -278,6 +282,7 @@ def obtain_config(args) -> ValidatedConfig:
278282 jira_issue_jql ,
279283 jira_download_worklogs ,
280284 jira_download_sprints ,
285+ jira_filter_boards_by_projects ,
281286 jira_recursively_download_parents ,
282287 jira_skip_saving_data_locally ,
283288 git_configs , # array of GitConfig
@@ -341,11 +346,12 @@ def _get_jf_ingest_git_auth_config(
341346 verify = not skip_ssl_verification ,
342347 )
343348 if config .git_provider == GL_PROVIDER :
344- return JFIngestGitAuthConfig (
349+ return JFIngestGitLabAuthConfig (
345350 company_slug = company_slug ,
346351 token = git_creds ['gitlab_token' ],
347352 base_url = config .git_url ,
348353 verify = not skip_ssl_verification ,
354+ keep_base_url = config .gitlab_keep_base_url ,
349355 )
350356 if config .git_provider == ADO_PROVIDER :
351357 return JFIngestAzureDevopsAuthConfig (
@@ -444,6 +450,7 @@ def get_ingest_config(
444450 #
445451 # Sprints/Boards Info
446452 download_sprints = config .jira_download_sprints ,
453+ filter_boards_by_projects = config .jira_filter_boards_by_projects ,
447454 #
448455 # Issues
449456 full_redownload = False ,
@@ -662,6 +669,7 @@ def _get_git_config(git_config, git_provider_override=None, multiple=False) -> G
662669 gitlab_per_page_override = git_config .get ('gitlab_per_page_override' , None ),
663670 git_verbose = git_config .get ('verbose' , False ),
664671 creds_envvar_prefix = creds_envvar_prefix ,
672+ gitlab_keep_base_url = git_config .get ('keep_base_url' , False ),
665673 # legacy fields ===========
666674 git_include_bbcloud_projects = list (git_include_bbcloud_projects ),
667675 git_exclude_bbcloud_projects = list (git_exclude_bbcloud_projects ),
0 commit comments