diff options
author | Gauvain Pocentek <gauvain@pocentek.net> | 2016-11-05 07:54:09 +0100 |
---|---|---|
committer | Gauvain Pocentek <gauvain@pocentek.net> | 2016-11-05 07:54:09 +0100 |
commit | 0c1817f8be113a949218332a61655a1a835248c5 (patch) | |
tree | b129d02c7879be60458ffec6ed5381d117c8a6cc | |
parent | 12fca8409156b910cab0240bf77726a0b0bca1e0 (diff) | |
parent | 6bedfc32e1f35e21ab3f1c6f0a2cf5c66b06a95e (diff) | |
download | gitlab-0c1817f8be113a949218332a61655a1a835248c5.tar.gz |
Merge branch 'master-project-deploy-keys' of https://github.com/Asher256/python-gitlab into Asher256-master-project-deploy-keys
-rw-r--r-- | docs/gl_objects/deploy_keys.py | 8 | ||||
-rw-r--r-- | docs/gl_objects/deploy_keys.rst | 12 | ||||
-rw-r--r-- | gitlab/exceptions.py | 4 | ||||
-rw-r--r-- | gitlab/objects.py | 12 |
4 files changed, 36 insertions, 0 deletions
diff --git a/docs/gl_objects/deploy_keys.py b/docs/gl_objects/deploy_keys.py index 7a69fa3..40da95c 100644 --- a/docs/gl_objects/deploy_keys.py +++ b/docs/gl_objects/deploy_keys.py @@ -34,3 +34,11 @@ key = project.keys.list(key_id) # or key.delete() # end delete + +# enable +key = project.keys.enable(key_id) +# end enable + +# disable +key = project.keys.disable(key_id) +# end disable diff --git a/docs/gl_objects/deploy_keys.rst b/docs/gl_objects/deploy_keys.rst index e67e2c1..57c1298 100644 --- a/docs/gl_objects/deploy_keys.rst +++ b/docs/gl_objects/deploy_keys.rst @@ -56,3 +56,15 @@ Delete a deploy key for a project: .. literalinclude:: deploy_keys.py :start-after: # delete :end-before: # end delete + +Enable a deploy key for a project: + +.. literalinclude:: deploy_keys.py + :start-after: # enable + :end-before: # end enable + +Disable a deploy key for a project: + +.. literalinclude:: deploy_keys.py + :start-after: # disable + :end-before: # end disable diff --git a/gitlab/exceptions.py b/gitlab/exceptions.py index 733551f..1d1f477 100644 --- a/gitlab/exceptions.py +++ b/gitlab/exceptions.py @@ -75,6 +75,10 @@ class GitlabTransferProjectError(GitlabOperationError): pass +class GitlabProjectDeployKeyError(GitlabOperationError): + pass + + class GitlabCancelError(GitlabOperationError): pass diff --git a/gitlab/objects.py b/gitlab/objects.py index 23887c4..48dd257 100644 --- a/gitlab/objects.py +++ b/gitlab/objects.py @@ -1253,6 +1253,18 @@ class ProjectKey(GitlabObject): class ProjectKeyManager(BaseManager): obj_cls = ProjectKey + def enable(self, key_id): + """Enable a deploy key for a project.""" + url = '/projects/%s/deploy_keys/%s/enable' % (self.parent.id, key_id) + r = self.gitlab._raw_post(url) + raise_error_from_response(r, GitlabProjectDeployKeyError, 201) + + def disable(self, key_id): + """Disable a deploy key for a project.""" + url = '/projects/%s/deploy_keys/%s/disable' % (self.parent.id, key_id) + r = self.gitlab._raw_delete(url) + raise_error_from_response(r, GitlabProjectDeployKeyError, 201) + class ProjectEvent(GitlabObject): _url = '/projects/%(project_id)s/events' |