summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/api-objects.rst2
-rw-r--r--docs/gl_objects/repositories.rst28
-rw-r--r--docs/gl_objects/repository_tags.rst47
3 files changed, 77 insertions, 0 deletions
diff --git a/docs/api-objects.rst b/docs/api-objects.rst
index 0cc5014..451e411 100644
--- a/docs/api-objects.rst
+++ b/docs/api-objects.rst
@@ -34,6 +34,8 @@ API examples
gl_objects/pagesdomains
gl_objects/projects
gl_objects/runners
+ gl_objects/repositories
+ gl_objects/repository_tags
gl_objects/search
gl_objects/settings
gl_objects/snippets
diff --git a/docs/gl_objects/repositories.rst b/docs/gl_objects/repositories.rst
new file mode 100644
index 0000000..b671fe1
--- /dev/null
+++ b/docs/gl_objects/repositories.rst
@@ -0,0 +1,28 @@
+#####################
+Registry Repositories
+#####################
+
+References
+----------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.ProjectRegistryRepository`
+ + :class:`gitlab.v4.objects.ProjectRegistryRepositoryManager`
+ + :attr:`gitlab.v4.objects.Project.registries`
+
+* Gitlab API: https://docs.gitlab.com/ce/api/container_registry.html
+
+Examples
+--------
+
+Get the list of container registry repositories associated with the project::
+
+ registries = project.registries.list()
+
+Delete repository::
+
+ project.registries.delete(id=x)
+ # or
+ registry = registries.pop()
+ registry.delete()
diff --git a/docs/gl_objects/repository_tags.rst b/docs/gl_objects/repository_tags.rst
new file mode 100644
index 0000000..79bb745
--- /dev/null
+++ b/docs/gl_objects/repository_tags.rst
@@ -0,0 +1,47 @@
+########################
+Registry Repository Tags
+########################
+
+References
+----------
+
+* v4 API:
+
+ + :class:`gitlab.v4.objects.ProjectRegistryTag`
+ + :class:`gitlab.v4.objects.ProjectRegistryTagManager`
+ + :attr:`gitlab.v4.objects.Repository.tags`
+
+* Gitlab API: https://docs.gitlab.com/ce/api/container_registry.html
+
+Examples
+--------
+
+Get the list of repository tags in given registry::
+
+ registries = project.registries.list()
+ registry = registries.pop()
+ tags = registry.tags.list()
+
+Get specific tag::
+
+ registry.tags.get(id=tag_name)
+
+Delete tag::
+
+ registry.tags.delete(id=tag_name)
+ # or
+ tag = registry.tags.get(id=tag_name)
+ tag.delete()
+
+Delete tag in bulk::
+
+ registry.tags.delete_in_bulk(keep_n=1)
+ # or
+ registry.tags.delete_in_bulk(older_than="1m")
+ # or
+ registry.tags.delete_in_bulk(name_regex="v.+", keep_n=2)
+
+.. note::
+
+ Delete in bulk is asnychronous operation and may take a while.
+ Refer to: https://docs.gitlab.com/ce/api/container_registry.html#delete-repository-tags-in-bulk