summaryrefslogtreecommitdiff
path: root/docs/gl_objects/projects.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/gl_objects/projects.rst')
-rw-r--r--docs/gl_objects/projects.rst52
1 files changed, 47 insertions, 5 deletions
diff --git a/docs/gl_objects/projects.rst b/docs/gl_objects/projects.rst
index 3950862..a00aae0 100644
--- a/docs/gl_objects/projects.rst
+++ b/docs/gl_objects/projects.rst
@@ -45,10 +45,10 @@ Results can also be sorted using the following parameters:
projects = gl.projects.list(visibility='public')
# List owned projects
- projects = gl.projects.owned()
+ projects = gl.projects.list(owned=True)
# List starred projects
- projects = gl.projects.starred()
+ projects = gl.projects.list(starred=True)
# Search projects
projects = gl.projects.list(search='keyword')
@@ -95,6 +95,10 @@ Fork a project::
# fork to a specific namespace
fork = project.forks.create({'namespace': 'myteam'})
+Get a list of forks for the project::
+
+ forks = project.forks.list()
+
Create/delete a fork relation between projects (requires admin permissions)::
project.create_fork_relation(source_project.id)
@@ -243,7 +247,7 @@ generated by GitLab you need to:
Import the project::
- gl.projects.import_project(open('/tmp/export.tgz', 'rb'), 'my_new_project')
+ ouput = gl.projects.import_project(open('/tmp/export.tgz', 'rb'), 'my_new_project')
# Get a ProjectImport object to track the import status
project_import = gl.projects.get(output['id'], lazy=True).imports.get()
while project_import.import_status != 'finished':
@@ -288,7 +292,7 @@ Delete a custom attribute for a project::
Search projects by custom attribute::
- project.customattributes.set('type': 'internal')
+ project.customattributes.set('type', 'internal')
gl.projects.list(custom_attributes={'type': 'internal'})
Project files
@@ -474,6 +478,11 @@ List the project members::
members = project.members.list()
+List the project members recursively (including inherited members through
+ancestor groups)::
+
+ members = project.members.all(all=True)
+
Search project members matching a query string::
members = project.members.list(query='bar')
@@ -489,7 +498,7 @@ Add a project member::
Modify a project member (change the access level)::
- member.access_level = gitlab.MASTER_ACCESS
+ member.access_level = gitlab.MAINTAINER_ACCESS
member.save()
Remove a member from the project team::
@@ -653,3 +662,36 @@ Edit project push rules::
Delete project push rules::
pr.delete()
+
+Project protected tags
+======================
+
+Reference
+---------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.ProjectProtectedTag`
+ + :class:`gitlab.v4.objects.ProjectProtectedTagManager`
+ + :attr:`gitlab.v4.objects.Project.protectedtags`
+
+* GitLab API: https://docs.gitlab.com/ce/api/protected_tags.html
+
+Examples
+---------
+
+Get a list of protected tags from a project::
+
+ protected_tags = project.protectedtags.list()
+
+Get a single protected tag or wildcard protected tag::
+
+ protected_tag = project.protectedtags.get('v*')
+
+Protect a single repository tag or several project repository tags using a wildcard protected tag::
+
+ project.protectedtags.create({'name': 'v*', 'create_access_level': '40'})
+
+Unprotect the given protected tag or wildcard protected tag.::
+
+ protected_tag.delete()