diff options
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/api-objects.rst | 2 | ||||
| -rw-r--r-- | docs/cli.rst | 36 | ||||
| -rw-r--r-- | docs/gl_objects/groups.rst | 5 | ||||
| -rw-r--r-- | docs/gl_objects/milestones.rst | 33 | ||||
| -rw-r--r-- | docs/gl_objects/packages.rst | 68 | ||||
| -rw-r--r-- | docs/gl_objects/pipelines_and_jobs.rst | 81 | ||||
| -rw-r--r-- | docs/gl_objects/projects.rst | 2 | ||||
| -rw-r--r-- | docs/gl_objects/users.rst | 4 | ||||
| -rw-r--r-- | docs/gl_objects/variables.rst | 102 |
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() |
