Ir al contenido

Paquetes y registro de contenedores

El registro de paquetes de un proyecto o de un grupo: listar paquetes de cualquier formato y sus archivos, leerlos y borrarlos, y publicar y descargar archivos del registro de paquetes genéricos, incluido publicar un archivo y enlazarlo a una release en un solo paso, o un directorio local entero. El registro de contenedores: listar los repositorios de un proyecto o de un grupo, leerlos y borrarlos, y listar, leer y borrar sus tags, uno a uno o en bloque.

Las reglas de protección limitan quién puede subir o borrar paquetes e imágenes de contenedor: reglas de protección de paquetes, de repositorios de contenedores y de tags de imagen, que aquí se listan, crean, actualizan y borran.

package.get solo lee un paquete cuyo estado es default o deprecated: GitLab responde 404 para cualquier otro, así que un package_id que package.list muestra en estado error, o en hidden, processing o pending_destruction cuando se pide por estado, responde 404 aunque el paquete siga existiendo, igual que una versión borrada. La acción devuelve entonces un resultado de no encontrado que nombra las dos causas en lugar de un error.

package.download escribe en el disco de la máquina donde corre el servidor, así que se clasifica como escritura, que el modo de solo lectura retira y el modo seguro previsualiza. output_path tiene que resolverse bajo el directorio de trabajo, el directorio temporal del sistema o un directorio nombrado en GITLAB_MCP_ALLOWED_DOWNLOAD_DIRS, y un servidor al que se llega por HTTP rechaza cualquier ruta local. El archivo se escribe junto a output_path con un nombre temporal y se renombra sobre él cuando está completo, así que el servidor necesita permiso de escritura en ese directorio, no solo en un archivo ya existente, y en Unix el archivo nuevo solo lo puede leer y escribir su propietario (modo 0600), permitiera lo que permitiera el archivo al que sustituye.

  • “Lista los paquetes del proyecto 42”
  • “Sube el binario de la release al registro de paquetes genéricos”
  • “Muestra los tags de la imagen api”
  • “Borra los tags de contenedor más antiguos que los diez últimos”
  • Dinámica, la superficie predeterminada: llama a gitlab_execute_action con action igual al ID de la acción, como package.delete, y sus parámetros en params. gitlab_find_action encuentra un ID a partir de una descripción de la tarea.
  • Meta (GITLAB_MCP_TOOL_SURFACE=meta): llama a gitlab_package con action igual al nombre de la acción, como delete, y sus parámetros en params.
  • Individual (GITLAB_MCP_TOOL_SURFACE=individual): llama a la herramienta propia de la acción, como gitlab_package_delete, pasándole directamente sus parámetros.

Todos los niveles sirven el grupo completo, tanto en instancias autogestionadas como en GitLab.com.

Acciones de solo lectura: 12 de 30, las que conserva un despliegue en modo de solo lectura.

La descripción de cada acción, y la de cada uno de sus parámetros, es el texto que sirve el servidor para ella en la superficie predeterminada, citado tal cual; por eso está en inglés. Una acción destructiva solo se ejecuta una vez confirmada, salvo que GITLAB_MCP_YOLO_MODE (o AUTOPILOT) se salte ese paso: la superficie dinámica necesita confirm: true en gitlab_execute_action, y las otras dos aceptan un parámetro confirm o la pregunta del cliente (Acciones destructivas).

AcciónIndividual
package.deletegitlab_package_delete
package.downloadgitlab_package_download
package.file_deletegitlab_package_file_delete
package.file_listgitlab_package_file_list
package.getgitlab_package_get
package.group_listgitlab_list_group_packages
package.listgitlab_package_list
package.protection_rule_creategitlab_create_package_protection_rule
package.protection_rule_deletegitlab_delete_package_protection_rule
package.protection_rule_listgitlab_list_package_protection_rules
package.protection_rule_updategitlab_update_package_protection_rule
package.publishgitlab_package_publish
package.publish_and_linkgitlab_package_publish_and_link
package.publish_directorygitlab_package_publish_directory
package.registry_deletegitlab_registry_delete_repository
package.registry_getgitlab_registry_get_repository
package.registry_list_groupgitlab_registry_list_group
package.registry_list_projectgitlab_registry_list_project
package.registry_rule_creategitlab_registry_protection_create
package.registry_rule_deletegitlab_registry_protection_delete
package.registry_rule_listgitlab_registry_protection_list
package.registry_rule_updategitlab_registry_protection_update
package.registry_tag_deletegitlab_registry_delete_tag
package.registry_tag_delete_bulkgitlab_registry_delete_tags_bulk
package.registry_tag_getgitlab_registry_get_tag
package.registry_tag_listgitlab_registry_list_tags
package.registry_tag_rule_creategitlab_registry_tag_protection_create
package.registry_tag_rule_deletegitlab_registry_tag_protection_delete
package.registry_tag_rule_listgitlab_registry_tag_protection_list
package.registry_tag_rule_updategitlab_registry_tag_protection_update

Delete a package permanently. Returns: a success confirmation naming the deleted package and project. See also: package.list, package.file_delete.

  • Meta-herramienta: gitlab_package, acción delete
  • Herramienta individual: gitlab_package_delete
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
package_idstring/integersíPackage ID to delete
project_idstring/integersíProject ID or URL-encoded path

Download a single file from the Generic Package Registry to a local path. Returns: the local output path, byte size, and SHA256 checksum. See also: package.file_list, package.list.

  • Meta-herramienta: gitlab_package, acción download
  • Herramienta individual: gitlab_package_download
  • Nivel: Free
  • Comportamiento: escribe, idempotente
ParámetroTipoRequeridoDescripción
file_namestringsíFile name to download. May include / to describe a directory structure (segments must not be empty or . or ..)
output_pathstringsíAbsolute path where the file will be saved on the local filesystem, confined to the current working directory, the OS temp directory, or a directory listed in GITLAB_MCP_ALLOWED_DOWNLOAD_DIRS. Symlinks are resolved and destinations outside those roots are rejected
package_namestringsíPackage name
package_versionstringsíPackage version
project_idstring/integersíProject ID or URL-encoded path

Delete a single file from a package permanently. Returns: a success confirmation naming the deleted file, package, and project. See also: package.file_list, package.delete.

  • Meta-herramienta: gitlab_package, acción file_delete
  • Herramienta individual: gitlab_package_file_delete
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
package_file_idstring/integersíPackage file ID to delete
package_idstring/integersíPackage ID
project_idstring/integersíProject ID or URL-encoded path

List the files within a single package. Returns: package files with name, size, checksums, creation time, the pipelines that built each, and pagination metadata. See also: package.download, package.file_delete, package.list.

  • Meta-herramienta: gitlab_package, acción file_list
  • Herramienta individual: gitlab_package_file_list
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
package_idstring/integersíPackage ID
project_idstring/integersíProject ID or URL-encoded path
order_bystring (id, file_name, created_at)noOrder package files by: id (default), file_name, or created_at
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction: asc or desc

Get one package of a project with its other versions. Returns: the package’s type, status, creator, pipeline metadata, tags, _links, and its other versions with their tags and the pipeline that built each. See also: package.list, package.file_list, package.delete.

  • Meta-herramienta: gitlab_package, acción get
  • Herramienta individual: gitlab_package_get
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
package_idstring/integersíPackage ID, as package.list or package.group_list returns it
project_idstring/integersíProject ID or URL-encoded path

List packages across a group and its descendant projects with optional filters and ordering. Returns: matching packages with type, status, owning project id/path, pipeline metadata, tags, _links, and pagination metadata. See also: package.list, package.get, package.file_list, package.delete.

  • Meta-herramienta: gitlab_package, acción group_list
  • Herramienta individual: gitlab_list_group_packages
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
group_idstring/integersíGroup ID or URL-encoded path
exclude_subgroupsbooleannoExclude packages from subgroups (only return packages from the group’s direct projects)
include_versionlessbooleannoInclude versionless packages
order_bystring (created_at, name, version, type, project_path)noOrder by group package registry field: created_at, name, version, type, or project_path.
package_namestringnoFilter by package name
package_typestring (composer, conan, generic, golang, helm, maven, npm, nuget, pypi, terraform_module)noFilter by package type: composer, conan, generic, golang, helm, maven, npm, nuget, pypi, or terraform_module.
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction: asc or desc
statusstring (default, hidden, processing, error, pending_destruction, deprecated)noFilter by status: default, hidden, processing, error, pending_destruction, or deprecated.

List packages in a project with optional filters and ordering. Returns: matching packages with type, status, pipeline metadata, tags, _links, and pagination metadata. See also: package.get, package.file_list, package.publish, package.delete.

  • Meta-herramienta: gitlab_package, acción list
  • Herramienta individual: gitlab_package_list
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or URL-encoded path
include_versionlessbooleannoInclude versionless packages
order_bystring (created_at, name, version, type)noOrder by package registry field: created_at, name, version, or type.
package_namestringnoFilter by package name
package_typestring (composer, conan, generic, golang, helm, maven, npm, nuget, pypi, terraform_module)noFilter by package type: composer, conan, generic, golang, helm, maven, npm, nuget, pypi, or terraform_module.
package_versionstringnoFilter by package version
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction: asc or desc
statusstring (default, hidden, processing, error, pending_destruction, deprecated)noFilter by status: default, hidden, processing, error, pending_destruction, or deprecated.

Create a package protection rule for a project. Returns: the new rule’s id, project id, package name pattern, package type, and minimum push/delete access levels. See also: package.protection_rule_list, package.protection_rule_update, package.protection_rule_delete.

  • Meta-herramienta: gitlab_package, acción protection_rule_create
  • Herramienta individual: gitlab_create_package_protection_rule
  • Nivel: Free
  • Comportamiento: escribe, no idempotente
ParámetroTipoRequeridoDescripción
package_name_patternstringsíPackage name pattern with optional wildcards (e.g. @my-scope/my-pkg*)
package_typestringsíPackage type protected by the rule, spelled as GitLab names the registry format, for example npm. GitLab documents no closed list
project_idstring/integersíProject ID or URL-encoded path
minimum_access_level_for_deletestringnoMinimum access level for delete (maintainer, owner, admin)
minimum_access_level_for_pushstringnoMinimum access level for push (maintainer, owner, admin)

Delete a package protection rule from a project by its id (cannot be undone). Returns: a success confirmation. See also: package.protection_rule_list, package.protection_rule_create.

  • Meta-herramienta: gitlab_package, acción protection_rule_delete
  • Herramienta individual: gitlab_delete_package_protection_rule
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or URL-encoded path
rule_idintegersíPackage protection rule ID

List package protection rules for a project. Returns: each rule’s id, project id, package name pattern, package type, and minimum push/delete access levels, with pagination metadata. For container image protection use package.registry_rule_list. See also: package.protection_rule_create, package.protection_rule_update.

  • Meta-herramienta: gitlab_package, acción protection_rule_list
  • Herramienta individual: gitlab_list_package_protection_rules
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or URL-encoded path
order_bystringnoColumn to order results by (keyset pagination)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction (asc, desc)

Update an existing package protection rule by its id. Returns: the updated rule’s id, project id, package name pattern, package type, and minimum push/delete access levels. See also: package.protection_rule_list, package.protection_rule_create, package.protection_rule_delete.

  • Meta-herramienta: gitlab_package, acción protection_rule_update
  • Herramienta individual: gitlab_update_package_protection_rule
  • Nivel: Free
  • Comportamiento: escribe, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or URL-encoded path
rule_idintegersíPackage protection rule ID
minimum_access_level_for_deletestringnoMinimum access level for delete (maintainer, owner, admin)
minimum_access_level_for_pushstringnoMinimum access level for push (maintainer, owner, admin)
package_name_patternstringnoPackage name pattern with optional wildcards
package_typestringnoPackage type protected by the rule, spelled as GitLab names the registry format, for example npm. GitLab documents no closed list

Publish a single file to the Generic Package Registry. Returns: the published file’s id, package id, name, size, checksums (md5/sha1/sha256), and download URL. See also: package.publish_and_link, package.publish_directory, package.list.

  • Meta-herramienta: gitlab_package, acción publish
  • Herramienta individual: gitlab_package_publish
  • Nivel: Free
  • Comportamiento: escribe, no idempotente
ParámetroTipoRequeridoDescripción
file_namestringsíName of the file within the package. May include / to describe a directory structure (segments must not be empty or . or ..)
package_namestringsíPackage name (alphanumeric, dots, dashes, underscores)
package_versionstringsíPackage version (e.g. 1.0.0)
project_idstring/integersíProject ID or URL-encoded path
content_base64stringnoBase64-encoded file content. Only one should be provided.
file_pathstringnoAbsolute path to a local file. Alternative to content_base64. Only one of file_path or content_base64 should be provided.
selectstring (package_file)noResponse detail selector. Use package_file to receive the published file metadata (id, size, checksums).
statusstring (default, hidden)noPackage visibility on publish: default (publicly visible) or hidden.

Publish a file to the Generic Package Registry and link it to a release in one call. Returns: the published file metadata and the created release asset link. See also: package.publish, package.publish_directory, release.get.

  • Meta-herramienta: gitlab_package, acción publish_and_link
  • Herramienta individual: gitlab_package_publish_and_link
  • Nivel: Free
  • Comportamiento: escribe, no idempotente
ParámetroTipoRequeridoDescripción
file_namestringsíName of the file within the package
package_namestringsíPackage name (alphanumeric, dots, dashes, underscores)
package_versionstringsíPackage version (e.g. 1.0.0)
project_idstring/integersíProject ID or URL-encoded path
tag_namestringsíTag name of the release to link the package file to
content_base64stringnoBase64-encoded file content. Alternative to file_path.
file_pathstringnoAbsolute path to a local file. Alternative to content_base64.
link_namestringnoDisplay name of the release link. Defaults to file_name if omitted. MUST be the exact filename. Never add descriptive suffixes.
link_typestring (package, runbook, image, other)noType of the release link: package, runbook, image, or other. Defaults to package.
statusstring (default, hidden)noPackage status: default or hidden

Publish every regular file from a local directory to the Generic Package Registry. Returns: total files, total bytes, per-file results, and any per-file errors. See also: package.publish, package.publish_and_link, package.list.

  • Meta-herramienta: gitlab_package, acción publish_directory
  • Herramienta individual: gitlab_package_publish_directory
  • Nivel: Free
  • Comportamiento: escribe, no idempotente
ParámetroTipoRequeridoDescripción
directory_pathstringsíAbsolute path to a local directory whose files will be published
package_namestringsíPackage name (alphanumeric, dots, dashes, underscores)
package_versionstringsíPackage version (e.g. 1.0.0)
project_idstring/integersíProject ID or URL-encoded path
include_patternstringnoSingle glob pattern to filter files within the directory (e.g. *.txt or *.tar.gz). If omitted, all regular files are included. Do not pass comma-separated filenames.
statusstring (default, hidden)noPackage status: default or hidden

Delete one container registry repository (cannot be undone). Returns: a success confirmation. See also: package.registry_list_project, package.registry_get, package.registry_tag_delete.

  • Meta-herramienta: gitlab_package, acción registry_delete
  • Herramienta individual: gitlab_registry_delete_repository
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
repository_idintegersíRegistry repository ID

Get details of one container registry repository by its id. Returns: the repository’s name, path, location, status, tag count, and optional tags. See also: package.registry_list_project, package.registry_tag_list, package.registry_delete.

  • Meta-herramienta: gitlab_package, acción registry_get
  • Herramienta individual: gitlab_registry_get_repository
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
repository_idintegersíRegistry repository ID
tagsbooleannoInclude tags in response
tags_countbooleannoInclude tags count in response

List container registry image repositories across a group. Returns: each repository’s id, name, path, location, status, tag count, and pagination metadata. See also: package.registry_list_project, package.registry_get.

  • Meta-herramienta: gitlab_package, acción registry_list_group
  • Herramienta individual: gitlab_registry_list_group
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
group_idstring/integersíGroup ID or path
order_bystringnoColumn to order results by (keyset pagination)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction (asc, desc)

List container registry image repositories in a project. Returns: each repository’s id, name, path, location, status, tag count, optional tags, and pagination metadata. See also: package.registry_get, package.registry_tag_list, package.registry_list_group.

  • Meta-herramienta: gitlab_package, acción registry_list_project
  • Herramienta individual: gitlab_registry_list_project
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
order_bystringnoColumn to order results by (keyset pagination)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction (asc, desc)
tagsbooleannoInclude tags in response
tags_countbooleannoInclude tags count in response

Create a container registry protection rule for a project.

  • Meta-herramienta: gitlab_package, acción registry_rule_create
  • Herramienta individual: gitlab_registry_protection_create
  • Nivel: Free
  • Comportamiento: escribe, no idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
repository_path_patternstringsíRepository path pattern (e.g. my-project/my-image*)
minimum_access_level_for_deletestringnoMinimum access level for delete (maintainer, owner, admin)
minimum_access_level_for_pushstringnoMinimum access level for push (maintainer, owner, admin)

Delete a container registry repository-path protection rule (cannot be undone). Returns: a success confirmation. See also: package.registry_rule_list, package.registry_rule_create.

  • Meta-herramienta: gitlab_package, acción registry_rule_delete
  • Herramienta individual: gitlab_registry_protection_delete
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
rule_idintegersíProtection rule ID

List container registry repository-path protection rules for a project. Returns: each rule’s path pattern and minimum push/delete access levels. For tag-level protection use package.registry_tag_rule_list. See also: package.registry_rule_create, package.registry_tag_rule_list.

  • Meta-herramienta: gitlab_package, acción registry_rule_list
  • Herramienta individual: gitlab_registry_protection_list
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path

Update a container registry repository-path protection rule. Returns: the updated rule with its path pattern and minimum push/delete access levels. See also: package.registry_rule_list, package.registry_rule_delete, package.registry_rule_create.

  • Meta-herramienta: gitlab_package, acción registry_rule_update
  • Herramienta individual: gitlab_registry_protection_update
  • Nivel: Free
  • Comportamiento: escribe, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
rule_idintegersíProtection rule ID
minimum_access_level_for_deletestringnoMinimum access level for delete (maintainer, owner, admin)
minimum_access_level_for_pushstringnoMinimum access level for push (maintainer, owner, admin)
repository_path_patternstringnoRepository path pattern

Delete one container registry tag (cannot be undone). Returns: a success confirmation. See also: package.registry_tag_list, package.registry_tag_delete_bulk, package.registry_tag_get.

  • Meta-herramienta: gitlab_package, acción registry_tag_delete
  • Herramienta individual: gitlab_registry_delete_tag
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
repository_idintegersíRegistry repository ID
tag_namestringsíTag name to delete

Delete container registry tags in bulk by name patterns and age (cannot be undone). Returns: a success confirmation. Deletion runs asynchronously. See also: package.registry_tag_list, package.registry_tag_delete.

  • Meta-herramienta: gitlab_package, acción registry_tag_delete_bulk
  • Herramienta individual: gitlab_registry_delete_tags_bulk
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
repository_idintegersíRegistry repository ID
keep_nintegernoNumber of latest tags to keep
name_regexstringnoDeprecated: regex pattern of tag names to delete. Use name_regex_delete instead
name_regex_deletestringnoRegex pattern of tag names to delete
name_regex_keepstringnoRegex pattern of tag names to keep
older_thanstringnoDelete tags older than this (e.g. 1h, 2d, 1month)

Get metadata of one container registry tag. Returns: the tag’s name, path, location, revision, digest, total size, and creation time. See also: package.registry_tag_list, package.registry_tag_delete.

  • Meta-herramienta: gitlab_package, acción registry_tag_get
  • Herramienta individual: gitlab_registry_get_tag
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
repository_idintegersíRegistry repository ID
tag_namestringsíTag name

List tags in one container registry repository.

  • Meta-herramienta: gitlab_package, acción registry_tag_list
  • Herramienta individual: gitlab_registry_list_tags
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
repository_idintegersíRegistry repository ID
order_bystringnoColumn to order results by (keyset pagination)
pageintegernoPage number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward.
page_tokenstringnoKeyset pagination cursor: record id at which to fetch the next page, taken from the previous keyset response. Only used when pagination=‘keyset’.
paginationstringnoPagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost.
per_pageintegernoItems per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large.
sortstring (asc, desc)noSort direction (asc, desc)

Create a container registry tag protection rule. Returns: the created rule. Omit both minimum access levels to make matching tags immutable. See also: package.registry_tag_rule_list, package.registry_tag_rule_update, package.registry_rule_create.

  • Meta-herramienta: gitlab_package, acción registry_tag_rule_create
  • Herramienta individual: gitlab_registry_tag_protection_create
  • Nivel: Free
  • Comportamiento: escribe, no idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
tag_name_patternstringsíTag name pattern as a RE2 regular expression (e.g. v.+)
minimum_access_level_for_deletestringnoMinimum access level to delete matching tags (maintainer, owner, admin). Omit both push and delete levels to make matching tags immutable
minimum_access_level_for_pushstringnoMinimum access level to push matching tags (maintainer, owner, admin). Omit both push and delete levels to make matching tags immutable

Delete a container registry tag protection rule (cannot be undone). Returns: a success confirmation. See also: package.registry_tag_rule_list, package.registry_tag_rule_create.

  • Meta-herramienta: gitlab_package, acción registry_tag_rule_delete
  • Herramienta individual: gitlab_registry_tag_protection_delete
  • Nivel: Free
  • Comportamiento: escribe, destructiva (necesita confirmación), idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
rule_idintegersíTag protection rule ID

List container registry tag protection rules for a project. Returns: each rule’s tag name pattern and minimum push/delete access levels (empty = immutable). For repository-path protection use package.registry_rule_list. See also: package.registry_tag_rule_create, package.registry_tag_list.

  • Meta-herramienta: gitlab_package, acción registry_tag_rule_list
  • Herramienta individual: gitlab_registry_tag_protection_list
  • Nivel: Free
  • Comportamiento: solo lectura, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path

Update a container registry tag protection rule. Returns: the updated rule. See also: package.registry_tag_rule_list, package.registry_tag_rule_delete.

  • Meta-herramienta: gitlab_package, acción registry_tag_rule_update
  • Herramienta individual: gitlab_registry_tag_protection_update
  • Nivel: Free
  • Comportamiento: escribe, idempotente
ParámetroTipoRequeridoDescripción
project_idstring/integersíProject ID or path
rule_idintegersíTag protection rule ID
minimum_access_level_for_deletestringnoMinimum access level to delete matching tags (maintainer, owner, admin)
minimum_access_level_for_pushstringnoMinimum access level to push matching tags (maintainer, owner, admin)
tag_name_patternstringnoTag name pattern as a RE2 regular expression