Extend API to allow more diverse types of git repositories as Code repos
Summary
We currently have don't store the git platform of a git repository, we want to store it to be able to handle different platforms in the FE more easily.
Acceptance Criteria
-
Code Repository store the git platform
Additional Notes / Information
Technical Information
Suggested Implementation
-
Write enum.StrEnum
(mantik_api.utils.enums.CaseInsensitiveStrEnum
) for git platform with fields-
GitHub -
GitLab -
Bitbucket
-
-
Add platform
column toCodeRepository
database table-
Enum with allowed values GitHub
,GitLab
,Bitbucket
-
Set default to GitHub (research whether postgres sets default for new columns if rows present in database table) -
Check if old git repo's stored in DB have GitHub (e.g. fetch from API, because pydantic might produce an error of platform is None
)
-
-
Add platform
field to API model -
Adapt GitRepo Class to accept Bitbucket as a platform -
differentiate between self hosted and not self hosted bitbucket -
argument commit
is required for not self hosted bitbucket -
arguments branch and commit is required for self hosted bitbucket
-
Edited by Fabian Emmerich