Como gerenciar pacotes de RPM

Nesta página, descrevemos como adicionar, visualizar e excluir pacotes RPM nos repositórios Yum. Os repositórios do Yum do Artifact Registry são compatíveis com o Yum e o DNF.

Antes de começar

  1. Se o repositório de destino Yum não existir, crie um novo repositório.
  2. Configure as VMs para acessar o repositório.
  3. (Opcional) Configure padrões para comandos gcloud.
  4. Verifique se os nomes dos seus pacotes nos metadados atendem às diretrizes de nomenclatura de pacotes do Fedora e às diretrizes de controle de versões dos pacotes do Fedora (em inglês).

Como adicionar pacotes

Você precisa ter permissões de leitura e gravação para que o repositório possa adicionar pacotes.

É possível fazer upload de um pacote para um repositório usando a ferramenta de linha de comando gcloudou importar um pacote armazenado no Cloud Storage. Se você criar pacotes usando o Cloud Build, os pacotes poderão ser armazenados no Cloud Storage para serem importados.

Envio direto

Use o comando gcloud beta artifacts yum upload para fazer upload de um pacote para um repositório do Yum:

gcloud beta artifacts yum upload REPOSITORY \
    --location=LOCATION \
    --source=PACKAGES

Substitua os seguintes valores:

  • REPOSITORY é o nome do repositório do Artifact Registry.
  • LOCATION é o local regional ou multirregional do repositório.
  • PACKAGES é o caminho para o pacote.

Por exemplo, para fazer upload do pacote my-package.rpm para o repositório my-repo do Yum no local us-central1, execute:

gcloud beta artifacts yum upload my-repo \
    --location=us-central1 \
    --source=my-package.rpm

Cloud Storage

  1. Faça o upload dos pacotes para o Cloud Storage de uma das seguintes maneiras:

    • Faça upload dos pacotes diretamente para um bucket do Cloud Storage.
    • Crie pacotes com o Cloud Build e armazene-os em um bucket
  2. Execute este comando:

    gcloud beta artifacts yum import REPOSITORY \
        --location=LOCATION \
        --gcs-source=PACKAGES
    

    Substitua os seguintes valores:

    • REPOSITORY é o nome do repositório do Artifact Registry.
    • LOCATION é o local regional ou multirregional do repositório.
    • PACKAGES é uma lista separada por vírgulas de pacotes no Cloud Storage. Para fazer upload de todos os pacotes de um diretório, use um caractere curinga de diretório (*) ou um caractere curinga de diretório recursivo (**) para fazer upload de todos os pacotes em todos os subdiretórios.

    Por exemplo, para fazer upload de um pacote package.rpm e todos os pacotes do diretório directory do bucket my-bucket para o repositório Yum my-repo no local us-central1, execute:

    gcloud beta artifacts yum import my-repo \
        --location=us-central1 \
        --gcs-source=gs://my-bucket/path/to/package.rpm,gs://my-bucket/directory*
    

Como visualizar pacotes

Para ver pacotes, é preciso ter as permissões no papel Leitor do Artifact Registry.

Para visualizar pacotes e versões de pacotes usando o Console do Google Cloud ou gcloud:

Console

  1. Abra a página Repositórios no Console do Google Cloud.

    Abrir a página Repositórios

  2. Na lista de repositórios, clique no repositório apropriado.

    A página Pacotes lista os pacotes no repositório.

  3. Clique em um pacote para visualizar as versões dele.

gcloud

Para listar pacotes em um repositório, execute o seguinte comando:

gcloud artifacts packages list [--repository=REPOSITORY] [--location=LOCATION]

Onde

  • REPOSITORY é o nome do repositório. Se você tiver configurado um repositório padrão, você pode omitir essa sinalização para usar o padrão.
  • LOCATION é um local regional ou multirregional. Use esta sinalização para ver repositórios em um local específico. Se você tiver configurado um local padrão, poderá omitir essa sinalização para usar o padrão.

Para ver as versões de um pacote, execute o seguinte comando:

gcloud artifacts versions list --package=PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION]

Onde

  • PACKAGE é o ID do pacote ou o identificador totalmente qualificado do pacote.
  • REPOSITORY é o nome do repositório. Se você tiver configurado um repositório padrão, você pode omitir essa sinalização para usar o padrão.
  • LOCATION é um local regional ou multirregional. Use esta sinalização para ver repositórios em um local específico. Se você tiver configurado um local padrão, poderá omitir essa sinalização para usar o padrão.

Como instalar pacotes

Antes de instalar pacotes, verifique se você configurou o gerenciador e o repositório de pacotes corretamente.

Para instalar pacotes:

Instale o pacote especificando o nome do repositório configurado no Yum.

sudo yum --enablerepo=REPOSITORY install PACKAGE

Substitua os seguintes valores:

  • PACKAGE é o nome do pacote;
  • REPOSITORY é o nome do repositório configurado no arquivo .repo.

Por exemplo, para instalar o pacote my-package a partir do repositório my-repo, execute o comando:

sudo yum --enablerepo=my-repo install my-package

Como excluir pacotes

Antes de excluir uma versão de pacote ou um pacote, verifique se você comunicou ou resolveu qualquer dependência importante nele.

Para excluir um pacote:

Console

  1. Abra a página Repositórios no Console do Google Cloud.

    Abrir a página Repositórios

  2. Na lista de repositórios, clique no repositório apropriado.

    A página Pacotes lista os pacotes no repositório.

  3. Selecione o pacote que você quer excluir.

  4. Clique em EXCLUIR.

  5. Na caixa de diálogo de confirmação, clique em Excluir.

gcloud

Execute este comando:

gcloud artifacts packages delete PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION] [--async]

Onde

  • PACKAGE é o nome do pacote no repositório.
  • REPOSITORY é o nome do repositório. Se você tiver configurado um repositório padrão, você pode omitir essa sinalização para usar o padrão.
  • LOCATION é um local regional ou multirregional. Use esta sinalização para ver repositórios em um local específico. Se você tiver configurado um local padrão, poderá omitir essa sinalização para usar o padrão.
  • --async Retorna imediatamente, sem aguardar a conclusão da operação em andamento.

Para excluir versões de um pacote:

Console

  1. Abra a página Repositórios no Console do Google Cloud.

    Abrir a página Repositórios

  2. Na lista de repositórios, clique no repositório apropriado.

    A página Pacotes lista os pacotes no repositório.

  3. Clique em um pacote para visualizar as versões dele.

  4. Selecione as versões que você quer excluir.

  5. Clique em EXCLUIR.

  6. Na caixa de diálogo de confirmação, clique em Excluir.

gcloud

Execute este comando:

gcloud artifacts versions delete VERSION \
    --package=PACKAGE \
    [--repository=REPOSITORY] [--location=LOCATION] \
    [--async]

Onde

  • PACKAGE é o nome do pacote no repositório.
  • REPOSITORY é o nome do repositório. Se você tiver configurado um repositório padrão, você pode omitir essa sinalização para usar o padrão.
  • LOCATION é um local regional ou multirregional. Use esta sinalização para ver repositórios em um local específico. Se você tiver configurado um local padrão, poderá omitir essa sinalização para usar o padrão.
  • --async retorna imediatamente, sem aguardar a conclusão da operação em andamento.

A seguir