@@ -838,13 +838,44 @@ class ProjectBuildManager(BaseManager):
838838 obj_cls = ProjectBuild
839839
840840
841+ class ProjectCommitStatus (GitlabObject ):
842+ _url = '/projects/%(project_id)s/statuses/%(commit_id)s'
843+ canUpdate = False
844+ canDelete = False
845+ requiredUrlAttrs = ['project_id' , 'commit_id' ]
846+ optionalGetAttrs = ['ref_name' , 'stage' , 'name' , 'all' ]
847+ requiredCreateAttrs = ['state' ]
848+ optionalCreateAttrs = ['description' , 'name' , 'context' , 'ref' ,
849+ 'target_url' ]
850+
851+
852+ class ProjectCommitStatusManager (BaseManager ):
853+ obj_cls = ProjectCommitStatus
854+
855+
856+ class ProjectCommitComment (GitlabObject ):
857+ _url = '/projects/%(project_id)s/repository/commits/%(commit_id)s/comments'
858+ canUpdate = False
859+ cantGet = False
860+ canDelete = False
861+ requiredUrlAttrs = ['project_id' , 'commit_id' ]
862+ requiredCreateAttrs = ['note' ]
863+ optionalCreateAttrs = ['path' , 'line' , 'line_type' ]
864+
865+
866+ class ProjectCommitCommentManager (BaseManager ):
867+ obj_cls = ProjectCommitComment
868+
869+
841870class ProjectCommit (GitlabObject ):
842871 _url = '/projects/%(project_id)s/repository/commits'
843872 canDelete = False
844873 canUpdate = False
845874 canCreate = False
846875 requiredUrlAttrs = ['project_id' ]
847876 shortPrintAttr = 'title'
877+ managers = [('comments' , ProjectCommitCommentManager ,
878+ [('project_id' , 'project_id' ), ('commit_id' , 'id' )])]
848879
849880 def diff (self , ** kwargs ):
850881 """Generate the commit diff."""
@@ -904,21 +935,6 @@ class ProjectCommitManager(BaseManager):
904935 obj_cls = ProjectCommit
905936
906937
907- class ProjectCommitStatus (GitlabObject ):
908- _url = '/projects/%(project_id)s/statuses/%(commit_id)s'
909- canUpdate = False
910- canDelete = False
911- requiredUrlAttrs = ['project_id' , 'commit_id' ]
912- optionalGetAttrs = ['ref_name' , 'stage' , 'name' , 'all' ]
913- requiredCreateAttrs = ['state' ]
914- optionalCreateAttrs = ['description' , 'name' , 'context' , 'ref' ,
915- 'target_url' ]
916-
917-
918- class ProjectCommitStatusManager (BaseManager ):
919- obj_cls = ProjectCommitStatus
920-
921-
922938class ProjectKey (GitlabObject ):
923939 _url = '/projects/%(project_id)s/keys'
924940 canUpdate = False
0 commit comments