Gerenciar metadados do artefato

Nesta página, descrevemos como gerenciar metadados relacionados a um artefato armazenado no Artifact Registry como um anexo.

Anexos são arquivos que armazenam metadados sobre um artefato relacionado armazenado no Artifact Registry. Para saber como criar um anexo, consulte Armazenar metadados de artefato em anexos.

Antes de começar

Opcional: configure padrões para comandos da Google Cloud CLI.

Funções exigidas

Para conseguir as permissões necessárias para gerenciar anexos, peça ao administrador para conceder a você os seguintes papéis do IAM no repositório:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

Anexos da lista

Um artefato no Artifact Registry pode ter qualquer número de anexos que se referem a ele. É possível listar anexos usando o console Google Cloud , a CLI gcloud ou, somente para imagens de contêiner no formato Docker, o Oras.

Console (somente Docker)

  1. No console do Google Cloud , abra a página Repositórios.

    Abrir a página Repositórios

  2. Clique no nome do repositório para ver as imagens nele.

  3. Para ver as versões de uma imagem, clique no nome dela.

  4. Clique na versão de imagem adequada.

  5. Para ver os anexos dessa versão, clique na guia Anexos.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • TARGET: o nome totalmente qualificado da versão. Para imagens do Docker, também é possível usar o URI do Artifact Registry do artefato a que o anexo se refere. No URI, é possível usar o resumo ou, para imagens do Docker, a tag. Por exemplo, us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud artifacts attachments list \
    --target=TARGET

Windows (PowerShell)

gcloud artifacts attachments list `
    --target=TARGET

Windows (cmd.exe)

gcloud artifacts attachments list ^
    --target=TARGET
Para mais informações, consulte o comando gcloud artifacts attachments list.

Oras (somente Docker)

Antes de executar o comando, faça a seguinte substituição:

  • IMAGE_URI: o URI da imagem de destino referenciada por anexos listados.
oras discover --distribution-spec v1.1-referrers-api IMAGE_URI

O exemplo a seguir lista anexos para uma imagem de contêiner, my-image, identificada pelo URI e pela tag:

oras discover --distribution-spec v1.1-referrers-api \
us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1

Em que:

  • v1.1-referrers-api é a API Referrer usada. Para mais informações, consulte os detalhes na especificação de distribuição.

  • us-west1-docker.pkg.dev/my-project/my-repo/my-image:tag1 é o URI que inclui a tag da versão da imagem do contêiner para listar anexos.

Para um guia completo e mais exemplos, consulte a documentação do oras discover.

Descrever anexos

Antes de usar os dados do comando abaixo, faça estas substituições:

  • ATTACHMENT: o nome totalmente qualificado do anexo, como projects/my-project/locations/us-west1/repositories/my-repo/attachments/my-attachment. Como alternativa, forneça apenas o ID do anexo e use as flags --location e --repository.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud artifacts attachments describe ATTACHMENT

Windows (PowerShell)

gcloud artifacts attachments describe ATTACHMENT

Windows (cmd.exe)

gcloud artifacts attachments describe ATTACHMENT
Para mais informações, consulte o comando gcloud artifacts attachments describe.

Baixar anexos

É possível fazer o download de anexos usando a CLI gcloud ou, apenas para imagens de contêiner no formato Docker, o Oras.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • ATTACHMENT: o nome totalmente qualificado do anexo, como projects/my-project/locations/us-west1/repositories/my-repo/attachments/my-attachment. Como alternativa, forneça apenas o ID do anexo e use as flags --location e --repository.
  • DESTINATION: o caminho no sistema de arquivos local para fazer o download do anexo.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud artifacts attachments download ATTACHMENT \
    --destination=DESTINATION

Windows (PowerShell)

gcloud artifacts attachments download ATTACHMENT `
    --destination=DESTINATION

Windows (cmd.exe)

gcloud artifacts attachments download ATTACHMENT ^
    --destination=DESTINATION
Para anexos em repositórios no formato Docker, como alternativa a fornecer ATTACHMENT, você pode fornecer a flag --oci-version-name seguida pelo nome completo da versão do anexo ou pelo URI do Artifact Registry. Você pode usar o resumo ou a tag, por exemplo, projects/my-project/locations/us-west1/repositories/my-repo/packages/my-package/versions/sha256:abc123.

Para mais informações, consulte o comando gcloud artifacts attachments download.

Oras (somente Docker)

Antes de executar o comando, faça estas substituições:

  • DESTINATION: o diretório de destino do anexo.

  • ATTACHMENT_URI: o URI do anexo a ser baixado. Esse é o URI do contêiner de imagem a que o anexo se refere, seguido pelo SHA exclusivo do anexo.

oras pull -o DESTINATION ATTACHMENT_URI

O exemplo a seguir faz o download de um anexo identificado pelo URI e resumo dele:

oras pull -o . us-west1-docker.pkg.dev/my-project/my-repo/my-image@sha256:xxxx

Em que:

  • -o . nomeia o diretório atual como o destino do download.

  • us-west1-docker.pkg.dev/my-project/my-repo/my-image@sha256:xxxx é o URI da imagem, incluindo o resumo do anexo a ser baixado.

Para um guia completo e mais exemplos, consulte a documentação do oras pull.

Excluir anexos

É possível excluir anexos diretamente usando o console Google Cloud ou a CLI gcloud. É possível excluir anexos indiretamente excluindo o artefato a que ele se refere.

Excluir anexos diretamente

É possível excluir anexos diretamente com uma das seguintes opções:

Console (somente Docker)

  1. No console do Google Cloud , abra a página Repositórios.

    Abrir a página Repositórios

  2. Clique no nome do repositório para ver as imagens nele.

  3. Clique no nome da imagem para ver as versões dela.

  4. Clique na versão da imagem para ver os anexos.

  5. Clique na guia Anexos para ver os anexos dessa versão.

  6. Clique no resumo do anexo que você quer excluir.

  7. Clique em EXCLUIR.

  8. Na caixa de diálogo de confirmação, clique em EXCLUIR.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • ATTACHMENT: o nome totalmente qualificado do anexo, como projects/my-project/locations/us-west1/repositories/my-repo/attachments/my-attachment. Como alternativa, forneça apenas o ID do anexo e use as flags --location e --repository.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud artifacts attachments delete ATTACHMENT

Windows (PowerShell)

gcloud artifacts attachments delete ATTACHMENT

Windows (cmd.exe)

gcloud artifacts attachments delete ATTACHMENT
Para mais informações, consulte o comando gcloud artifacts attachments delete.

Excluir anexos indiretamente

Se um artefato for excluído, todos os anexos com o nome da versão do artefato excluído como target também serão excluídos. Isso se aplica tanto à exclusão manual de artefatos quanto às exclusões causadas por políticas de limpeza.

A seguir