Armazenar pacotes RPM no Artifact Registry

Neste guia de início rápido, mostramos como configurar um repositório Yum privado do Artifact Registry, adicionar um pacote RPM a ele e instalar o pacote em uma VM do Compute Engine que executa o sistema operacional CentOS 7. Para saber como configurar repositórios Yum que usam DNF, consulte Configurar VMs para instalar pacotes RPM.

Para saber mais sobre como gerenciar pacotes RPM, consulte Como trabalhar com pacotes RPM.

Antes de começar

  1. In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.

    Go to project selector

  2. Verify that billing is enabled for your Trusted Cloud project.

  3. Enable the Artifact Registry API.

    Enable the API

  4. Instalar a CLI gcloud

    1. Instale e inicialize a Google Cloud CLI se ela ainda não estiver instalada. Para uma instalação atual, atualize os componentes da Google Cloud CLI com o comando:

      gcloud components update
      

      Para verificar sua versão da CLI gcloud, execute o comando:

      gcloud version
      

    Criar um repositório

    Crie o repositório para seus artefatos.

    1. Crie o repositório:

      Console

      1. Abra a página Repositórios no console do Trusted Cloud .

        Abrir a página Repositórios

      2. Clique em Criar repositório.

      3. Especifique quickstart-yum-repo como o nome do repositório.

      4. Selecione Yum como o formato.

      5. Em Tipo de local, selecione Região e escolha o local u-france-east1.

      6. Clique em Criar.

      O repositório é adicionado à lista de repositórios.

      gcloud

      1. No Cloud Shell, execute o comando a seguir para criar um novo repositório Yum no projeto atual chamado quickstart-yum-repo no local u-france-east1.

        gcloud artifacts repositories create quickstart-yum-repo \
            --repository-format=yum \
            --location=u-france-east1 \
            --description="Yum repository"
        
      2. Execute o seguinte comando para verificar se o repositório foi criado:

        gcloud artifacts repositories list
        

    Agora você pode adicionar um pacote ao repositório.

    Adicionar um pacote ao repositório

    É possível fazer upload de um pacote para um repositório usando a Google Cloud CLI ou importar um pacote armazenado no Cloud Storage.

    Neste guia de início rápido, você vai fazer upload de um arquivo de amostra usando o comando gcloud artifacts yum upload.

    1. No Cloud Shell, faça o download do editor de texto nano com o comando:

      sudo yum install --downloaddir=. --downloadonly nano
      

      O Yum faz o download da versão mais recente do pacote disponível nos repositórios configurados do CentOS.

      Loaded plugins: fastestmirror
      Loading mirror speeds from cached hostfile
       * base: mirror.dal.nexril.net
       * epel: ord.mirror.rackspace.com
       * extras: centos.mirror.lstn.net
       * updates: ftpmirror.your.org
      Resolving Dependencies
      --> Running transaction check
      ---> Package nano.x86_64 0:2.3.1-10.el7 will be installed
      --> Finished Dependency Resolution
      
      Dependencies Resolved
      
      ================================================================================
       Package        Arch             Version                   Repository      Size
      ================================================================================
      Installing:
       nano           x86_64           2.3.1-10.el7              base           440 k
      
      Transaction Summary
      ================================================================================
      Install  1 Package
      
      Total download size: 440 k
      Installed size: 1.6 M
      Background downloading packages, then exiting:
      nano-2.3.1-10.el7.x86_64.rpm                               | 440 kB   00:00
      exiting because "Download Only" specified
      

      Execute ls para receber o nome do arquivo do pacote. O nome do arquivo é semelhante a nano-2.3.1-10.el7.x86_64.rpm.

    2. Para simplificar os comandos gcloud, defina o repositório padrão como quickstart-yum-repo e o local padrão como u-france-east1. Depois que os valores forem definidos, não será necessário especificá-los nos comandos gcloud que exigem um repositório ou local.

      Para definir o repositório, execute o comando:

      gcloud config set artifacts/repository quickstart-yum-repo
      

      Para definir o local, execute o comando:

      gcloud config set artifacts/location u-france-east1
      

      Saiba mais sobre esses comandos na documentação do gcloud config set.

    3. Execute o comando gcloud artifacts yum upload para fazer upload do pacote para o repositório:

      gcloud artifacts yum upload quickstart-yum-repo \
          --source=FILE_NAME
      

      Substitua FILE_NAME pelo caminho para o pacote nano.

    Ver o pacote no repositório

    Verifique se o pacote foi adicionado ao repositório.

    Console

    1. Abra a página Repositórios no console do Trusted Cloud .

      Abrir a página Repositórios

    2. Na lista de repositórios, clique em quickstart-yum-repo.

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

    gcloud

    Para listar os pacotes no repositório quickstart-yum-repo, execute o comando:

     gcloud artifacts packages list
    

    Para ver as versões de um pacote no quickstart-yum-repo, execute o comando:

    gcloud artifacts versions list --package=nano
    

    Criar uma VM

    Crie uma nova VM do Compute Engine em que você vai instalar o pacote de amostra.

    No Cloud Shell, execute o seguinte comando para criar uma instância de VM chamada quickstart-yum-vm.

    gcloud compute instances create quickstart-yum-vm \
        --image-family=centos-7 \
        --image-project=centos-cloud \
        --scopes=cloud-platform
    

    Por padrão, a VM não tem os escopos de acesso necessários para trabalhar com o repositório. A flag --scopes define o escopo de acesso da VM como cloud-platform.

    Configurar o gerenciador de pacotes

    Para instalar um pacote na VM, adicione o repositório criado ao arquivo Yum que define os repositórios de pacotes.

    1. Acesse a página "Instâncias de VM".

      Abra a página "Instâncias de VM"

    2. Na linha com sua VM, clique em SSH. Uma nova janela será aberta com uma sessão de terminal na VM.

    3. Atualize o Yum:

      sudo yum makecache
      
    4. Instale o assistente de credenciais do Yum na VM para permitir que ele faça a autenticação usando o seguinte comando:

      sudo yum install yum-plugin-artifact-registry
      
    5. Configure a VM para acessar pacotes do Artifact Registry usando o seguinte comando:

      sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOF
      [yum-quickstart]
      name=My Repository
      baseurl=https://u-france-east1-yum.s3nsregistry.fr/projects/PROJECT/quickstart-yum-repo
      enabled=1
      repo_gpgcheck=0
      gpgcheck=0
      EOF
      

      Substitua PROJECT pelo Trusted Cloud by S3NS ID do projeto.

    Instale o pacote

    Instale o pacote que você adicionou ao repositório.

    1. Atualize a lista de pacotes disponíveis:

      sudo yum makecache
      
    2. Instale o pacote no seu repositório.

      sudo yum --enablerepo=yum-quickstart install nano
      

      Digite y quando solicitado.

      As informações de instalação retornadas são semelhantes ao exemplo a seguir:

      Loaded plugins: fastestmirror
      Loading mirror speeds from cached hostfile
       * base: mirrors.cmich.edu
       * epel: ord.mirror.rackspace.com
       * extras: mirror.team-cymru.com
       * updates: mirror.us-midwest-1.nexcess.net
      quickstart-yum-repo                                      | 1.3 kB     00:00
      Resolving Dependencies
      --> Running transaction check
      ---> Package nano.x86_64 0:2.3.1-10.el7 will be installed
      --> Finished Dependency Resolution
      
      Dependencies Resolved
      
      ================================================================================
       Package        Arch             Version                   Repository      Size
      ================================================================================
      Installing:
       nano           x86_64           2.3.1-10.el7              base           440 k
      
      Transaction Summary
      ================================================================================
      Install  1 Package
      
      Total size: 440 k
      Installed size: 1.6 M
      Is this ok [y/d/N]: y
      Downloading packages:
      Running transaction check
      Running transaction test
      Transaction test succeeded
      Running transaction
        Installing : nano-2.3.1-10.el7.x86_64                                     1/1
        Verifying  : nano-2.3.1-10.el7.x86_64                                     1/1
      
      Installed:
        nano.x86_64 0:2.3.1-10.el7
      
      Complete!
      

    Limpar

    Para evitar cobranças na sua conta do Trusted Cloud pelos recursos usados nesta página, siga estas etapas.

    Antes de remover o repositório, verifique se os pacotes que você quer manter estão disponíveis em outro local.

    Para excluir o repositório:

    Console

    1. Abra a página Repositórios no console do Trusted Cloud .

      Abrir a página Repositórios

    2. Na lista de repositórios, selecione quickstart-yum-repo.

    3. Clique em Excluir.

    gcloud

    1. Para excluir o repositório quickstart-yum-repo, execute o seguinte comando:

      gcloud artifacts repositories delete quickstart-yum-repo
      
    2. Se quiser remover as configurações padrão de repositório e localização que definiu como configuração ativa gcloud, execute os seguintes comandos:

      gcloud config unset artifacts/repository
      gcloud config unset artifacts/location
      

    Para excluir a VM criada, execute o seguinte comando:

    gcloud compute instances delete quickstart-yum-vm
    

    A seguir