feat(devops): GitLab Repository History

ref: #693 #515
This commit is contained in:
2025-03-20 14:51:04 +09:30
parent 561e175723
commit 69c631d59b
3 changed files with 67 additions and 0 deletions

View File

@ -33,3 +33,16 @@ class GitLabRepository(
documentation = ''
def save_history(self, before: dict, after: dict) -> bool:
from devops.models.git_repository.gitlab_history import GitlabHistory
history = super().save_history(
before = before,
after = after,
history_model = GitlabHistory
)
return history

View File

@ -0,0 +1,53 @@
from django.db import models
from core.models.model_history import ModelHistory
from devops.models.git_repository.gitlab import GitLabRepository
class GitlabHistory(
ModelHistory
):
class Meta:
db_table = 'devops_gitlab_repository_history'
ordering = ModelHistory._meta.ordering
verbose_name = 'GitLab Repository History'
verbose_name_plural = 'GitLab Repository History'
model = models.ForeignKey(
GitLabRepository,
blank = False,
help_text = 'Model this note belongs to',
null = False,
on_delete = models.CASCADE,
related_name = 'history',
verbose_name = 'Model',
)
table_fields: list = []
page_layout: dict = []
def get_object(self):
return self
def get_serialized_model(self, serializer_context):
model = None
from devops.serializers.git_repository.gitlab import BaseSerializer
model = BaseSerializer(self.model, context = serializer_context)
return model

View File

@ -8,6 +8,7 @@ from drf_spectacular.utils import (
# THis import only exists so that the migrations can be created
from devops.models.git_repository.github_history import GitHubHistory # pylint: disable=W0611:unused-import
from devops.models.git_repository.gitlab_history import GitlabHistory # pylint: disable=W0611:unused-import
from devops.models.git_group import GitGroup
from devops.serializers.git_repository.base import (
GitRepository,