summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/api-objects.rst2
-rw-r--r--docs/cli.rst36
-rw-r--r--docs/gl_objects/groups.rst5
-rw-r--r--docs/gl_objects/milestones.rst33
-rw-r--r--docs/gl_objects/packages.rst68
-rw-r--r--docs/gl_objects/pipelines_and_jobs.rst81
-rw-r--r--docs/gl_objects/projects.rst2
-rw-r--r--docs/gl_objects/users.rst4
-rw-r--r--docs/gl_objects/variables.rst102
9 files changed, 281 insertions, 52 deletions
diff --git a/docs/api-objects.rst b/docs/api-objects.rst
index 32852f8..8221f63 100644
--- a/docs/api-objects.rst
+++ b/docs/api-objects.rst
@@ -32,6 +32,7 @@ API examples
gl_objects/milestones
gl_objects/namespaces
gl_objects/notes
+ gl_objects/packages
gl_objects/pagesdomains
gl_objects/pipelines_and_jobs
gl_objects/projects
@@ -47,5 +48,6 @@ API examples
gl_objects/templates
gl_objects/todos
gl_objects/users
+ gl_objects/variables
gl_objects/sidekiq
gl_objects/wikis
diff --git a/docs/cli.rst b/docs/cli.rst
index 4261d0e..95f7062 100644
--- a/docs/cli.rst
+++ b/docs/cli.rst
@@ -192,6 +192,18 @@ List all the projects:
$ gitlab project list --all
+List all projects of a group:
+
+.. code-block:: console
+
+ $ gitlab group-project list --all --group-id 1
+
+List all projects of a group and its subgroups:
+
+.. code-block:: console
+
+ $ gitlab group-project list --all --include-subgroups true --group-id 1
+
Limit to 5 items per request, display the 1st page only
.. code-block:: console
@@ -223,6 +235,30 @@ List deploy tokens for a group:
$ gitlab -v group-deploy-token list --group-id 3
+List packages for a project:
+
+.. code-block:: console
+
+ $ gitlab -v project-package list --project-id 3
+
+List packages for a group:
+
+.. code-block:: console
+
+ $ gitlab -v group-package list --group-id 3
+
+Get a specific project package by id:
+
+.. code-block:: console
+
+ $ gitlab -v project-package get --id 1 --project-id 3
+
+Delete a specific project package by id:
+
+.. code-block:: console
+
+ $ gitlab -v project-package delete --id 1 --project-id 3
+
Get a list of snippets for this project:
.. code-block:: console
diff --git a/docs/gl_objects/groups.rst b/docs/gl_objects/groups.rst
index 02d2bb0..199847d 100644
--- a/docs/gl_objects/groups.rst
+++ b/docs/gl_objects/groups.rst
@@ -74,6 +74,11 @@ Remove a group::
# or
group.delete()
+Share/unshare the group with a group::
+
+ group.share(group2.id, gitlab.DEVELOPER_ACCESS)
+ group.unshare(group2.id)
+
Import / Export
===============
diff --git a/docs/gl_objects/milestones.rst b/docs/gl_objects/milestones.rst
index f24e13f..40f9ba6 100644
--- a/docs/gl_objects/milestones.rst
+++ b/docs/gl_objects/milestones.rst
@@ -2,6 +2,9 @@
Milestones
##########
+Project milestones
+==================
+
Reference
---------
@@ -70,3 +73,33 @@ List the issues related to a milestone::
List the merge requests related to a milestone::
merge_requests = milestone.merge_requests()
+
+Milestone events
+============
+
+Resource milestone events keep track of what happens to GitLab issues and merge requests.
+
+Reference
+---------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.ProjectIssueResourceMilestoneEvent`
+ + :class:`gitlab.v4.objects.ProjectIssueResourceMilestoneEventManager`
+ + :attr:`gitlab.v4.objects.ProjectIssue.resourcemilestoneevents`
+ + :class:`gitlab.v4.objects.ProjectMergeRequestResourceMilestoneEvent`
+ + :class:`gitlab.v4.objects.ProjectMergeRequestResourceMilestoneEventManager`
+ + :attr:`gitlab.v4.objects.ProjectMergeRequest.resourcemilestoneevents`
+
+* GitLab API: https://docs.gitlab.com/ee/api/resource_milestone_events.html
+
+Examples
+--------
+
+Get milestones for a resource (issue, merge request)::
+
+ milestones = resource.resourcemilestoneevents.list()
+
+Get a specific milestone for a resource::
+
+ milestone = resource.resourcemilestoneevents.get(milestone_id)
diff --git a/docs/gl_objects/packages.rst b/docs/gl_objects/packages.rst
new file mode 100644
index 0000000..3c1782b
--- /dev/null
+++ b/docs/gl_objects/packages.rst
@@ -0,0 +1,68 @@
+#######
+Packages
+#######
+
+Packages allow you to utilize GitLab as a private repository for a variety
+of common package managers.
+
+Project Packages
+=====================
+
+Reference
+---------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.ProjectPackage`
+ + :class:`gitlab.v4.objects.ProjectPackageManager`
+ + :attr:`gitlab.v4.objects.Project.packages`
+
+* GitLab API: https://docs.gitlab.com/ee/api/packages.html#within-a-project
+
+Examples
+--------
+
+List the packages in a project::
+
+ packages = project.packages.list()
+
+Filter the results by ``package_type`` or ``package_name`` ::
+
+ packages = project.packages.list(package_type='pypi')
+
+Get a specific package of a project by id::
+
+ package = project.packages.get(1)
+
+Delete a package from a project::
+
+ package.delete()
+ # or
+ project.packages.delete(package.id)
+
+
+Group Packages
+===================
+
+Reference
+---------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.GroupPackage`
+ + :class:`gitlab.v4.objects.GroupPackageManager`
+ + :attr:`gitlab.v4.objects.Group.packages`
+
+* GitLab API: https://docs.gitlab.com/ee/api/packages.html#within-a-group
+
+Examples
+--------
+
+List the packages in a group::
+
+ packages = group.packages.list()
+
+Filter the results by ``package_type`` or ``package_name`` ::
+
+ packages = group.packages.list(package_type='pypi')
+
diff --git a/docs/gl_objects/pipelines_and_jobs.rst b/docs/gl_objects/pipelines_and_jobs.rst
index 7faf657..0a3ddb1 100644
--- a/docs/gl_objects/pipelines_and_jobs.rst
+++ b/docs/gl_objects/pipelines_and_jobs.rst
@@ -184,58 +184,6 @@ Delete a schedule variable::
var.delete()
-Projects and groups variables
-=============================
-
-You can associate variables to projects and groups to modify the build/job
-scripts behavior.
-
-Reference
----------
-
-* v4 API
-
- + :class:`gitlab.v4.objects.ProjectVariable`
- + :class:`gitlab.v4.objects.ProjectVariableManager`
- + :attr:`gitlab.v4.objects.Project.variables`
- + :class:`gitlab.v4.objects.GroupVariable`
- + :class:`gitlab.v4.objects.GroupVariableManager`
- + :attr:`gitlab.v4.objects.Group.variables`
-
-* GitLab API
-
- + https://docs.gitlab.com/ce/api/project_level_variables.html
- + https://docs.gitlab.com/ce/api/group_level_variables.html
-
-Examples
---------
-
-List variables::
-
- p_variables = project.variables.list()
- g_variables = group.variables.list()
-
-Get a variable::
-
- p_var = project.variables.get('key_name')
- g_var = group.variables.get('key_name')
-
-Create a variable::
-
- var = project.variables.create({'key': 'key1', 'value': 'value1'})
- var = group.variables.create({'key': 'key1', 'value': 'value1'})
-
-Update a variable value::
-
- var.value = 'new_value'
- var.save()
-
-Remove a variable::
-
- project.variables.delete('key_name')
- group.variables.delete('key_name')
- # or
- var.delete()
Jobs
====
@@ -292,6 +240,11 @@ Get the artifacts of a job::
build_or_job.artifacts()
+Get the artifacts of a job by its name from the latest successful pipeline of
+a branch or tag:
+
+ project.artifacts(ref_name='master', job='build')
+
.. warning::
Artifacts are entirely stored in memory in this example.
@@ -349,3 +302,27 @@ Play (trigger) a job::
Erase a job (artifacts and trace)::
build_or_job.erase()
+
+
+Pipeline bridges
+=====================
+
+Get a list of bridge jobs (including child pipelines) for a pipeline.
+
+Reference
+---------
+
+* v4 API
+
+ + :class:`gitlab.v4.objects.ProjectPipelineBridge`
+ + :class:`gitlab.v4.objects.ProjectPipelineBridgeManager`
+ + :attr:`gitlab.v4.objects.ProjectPipeline.bridges`
+
+* GitLab API: https://docs.gitlab.com/ee/api/jobs.html#list-pipeline-bridges
+
+Examples
+--------
+
+List bridges for the pipeline::
+
+ bridges = pipeline.bridges.list()
diff --git a/docs/gl_objects/projects.rst b/docs/gl_objects/projects.rst
index 9bd98b1..61383e4 100644
--- a/docs/gl_objects/projects.rst
+++ b/docs/gl_objects/projects.rst
@@ -376,6 +376,8 @@ encoded text::
Delete a file::
f.delete(commit_message='Delete testfile', branch='master')
+ # or
+ project.files.delete(file_path='testfile.txt', commit_message='Delete testfile', branch='master')
Get file blame::
diff --git a/docs/gl_objects/users.rst b/docs/gl_objects/users.rst
index 5b1cf3d..9f2d42c 100644
--- a/docs/gl_objects/users.rst
+++ b/docs/gl_objects/users.rst
@@ -80,6 +80,10 @@ Set an external identity for a user::
user.extern_uid = '3'
user.save()
+Delete an external identity by provider name::
+
+ user.identityproviders.delete('oauth2_generic')
+
User custom attributes
======================
diff --git a/docs/gl_objects/variables.rst b/docs/gl_objects/variables.rst
new file mode 100644
index 0000000..e6ae4ba
--- /dev/null
+++ b/docs/gl_objects/variables.rst
@@ -0,0 +1,102 @@
+###############
+CI/CD Variables
+###############
+
+You can configure variables at the instance-level (admin only), or associate
+variables to projects and groups, to modify pipeline/job scripts behavior.
+
+
+Instance-level variables
+========================
+
+This endpoint requires admin access.
+
+Reference
+---------
+
+* v4 API
+
+ + :class:`gitlab.v4.objects.Variable`
+ + :class:`gitlab.v4.objects.VariableManager`
+ + :attr:`gitlab.Gitlab.variables`
+
+* GitLab API
+
+ + https://docs.gitlab.com/ce/api/instance_level_ci_variables.html
+
+Examples
+--------
+
+List all instance variables::
+
+ variables = gl.variables.list()
+
+Get an instance variable by key::
+
+ variable = gl.variables.get('key_name')
+
+Create an instance variable::
+
+ variable = gl.variables.create({'key': 'key1', 'value': 'value1'})
+
+Update a variable value::
+
+ variable.value = 'new_value'
+ variable.save()
+
+Remove a variable::
+
+ gl.variables.delete('key_name')
+ # or
+ variable.delete()
+
+Projects and groups variables
+=============================
+
+Reference
+---------
+
+* v4 API
+
+ + :class:`gitlab.v4.objects.ProjectVariable`
+ + :class:`gitlab.v4.objects.ProjectVariableManager`
+ + :attr:`gitlab.v4.objects.Project.variables`
+ + :class:`gitlab.v4.objects.GroupVariable`
+ + :class:`gitlab.v4.objects.GroupVariableManager`
+ + :attr:`gitlab.v4.objects.Group.variables`
+
+* GitLab API
+
+ + https://docs.gitlab.com/ce/api/instance_level_ci_variables.html
+ + https://docs.gitlab.com/ce/api/project_level_variables.html
+ + https://docs.gitlab.com/ce/api/group_level_variables.html
+
+Examples
+--------
+
+List variables::
+
+ p_variables = project.variables.list()
+ g_variables = group.variables.list()
+
+Get a variable::
+
+ p_var = project.variables.get('key_name')
+ g_var = group.variables.get('key_name')
+
+Create a variable::
+
+ var = project.variables.create({'key': 'key1', 'value': 'value1'})
+ var = group.variables.create({'key': 'key1', 'value': 'value1'})
+
+Update a variable value::
+
+ var.value = 'new_value'
+ var.save()
+
+Remove a variable::
+
+ project.variables.delete('key_name')
+ group.variables.delete('key_name')
+ # or
+ var.delete()