Esta página descreve como adicionar, visualizar e excluir pacotes Debian em Apt repositórios.
Antes de começar
- Se o repositório Apt de destino não existir, Crie um novo repositório.
- Configure VMs para acessar o repositório.
- (Opcional) Configure padrões para comandos gcloud.
- Verifique se os nomes dos pacotes nos metadados atendem aos Padrões de nome do pacote Debian
Como adicionar pacotes
Modos de repositório: padrão
É necessário ter permissões de leitura e gravação para o para adicionar pacotes.
É possível fazer o upload de um pacote para um repositório usando a Google Cloud CLI ou importar um pacote armazenado no Cloud Storage. Se você criar pacotes usando Cloud Build, o build pode armazenar os pacotes no Cloud Storage para você para importar.
Operações de importação ou upload muito longas podem exceder o período de expiração do token que a CLI gcloud usa para chamar a API. Se você tiver um um grande número de pacotes, considere adicioná-los em lotes menores cada operação de upload ou importação pode ser concluída em um período menor. Consulte a documentação Solução de problemas de pacotes do SO para mais informações.
Envio direto
Use o
Comando gcloud artifacts apt upload
para fazer upload de um pacote para um repositório Apt:
gcloud artifacts apt 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 de dados.
- PACKAGES é o caminho para o pacote.
Por exemplo, para fazer upload do pacote my-package.deb
no repositório Apt
my-repo
no local us-central1
, execute:
gcloud artifacts apt upload my-repo \ --location=us-central1 \ --source=my-package.deb
Cloud Storage
Faça upload dos pacotes para o Cloud Storage de uma das seguintes maneiras:
- Faça upload dos pacotes diretamente para um Bucket do Cloud Storage
- Criar pacotes com Cloud Build e armazená-los em um bucket
Execute este comando:
gcloud artifacts apt 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 de pacotes separados por vírgulas em
Cloud Storage. Para carregar todos os pacotes de um diretório, use um
caractere curinga de diretório (
*
) ou use um caractere curinga de diretório recursivo (**) para fazer o upload de todos os pacotes em todos os subdiretórios.
Por exemplo, para fazer upload do pacote
package.rpm
e todos os pacotes do o diretóriodirectory
do bucketmy-bucket
para o diretório Apt repositóriomy-repo
no localus-central1
, execute:gcloud artifacts apt import my-repo \ --location=us-central1 \ --gcs-source=gs://my-bucket/path/to/package.deb,gs://my-bucket/directory*
Quando o upload ou a importação for concluído, será possível usar o O console do Google Cloud ou CLI gcloud para conferir pacotes no repositório e confirmar se o upload foi concluído.
Se você tem um repositório grande com muitos pacotes, pode demorar minutos para gerar novamente o índice de pacotes, de modo que os novos pacotes fiquem visíveis para o cliente Apt.
Como visualizar pacotes
Modos de repositório:padrão, remoto (pré-lançamento)
Para acessar pacotes, é preciso ter as permissões no Artifact Registry Papel de leitor. O Artifact Registry não lista arquivos dentro de pacotes.
Para conferir os pacotes e as versões deles usando o console do Google Cloud
ou gcloud
:
Console
Abra a página Repositórios no console do Google Cloud.
Na lista de repositórios, clique no repositório apropriado.
A página Pacotes lista os pacotes no repositório.
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. Use esta sinalização para ver repositórios em um local específico. Se você configurado um local padrão, é possível omitir essa sinalização para 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 regional ou multirregional local. Use esta sinalização para ver repositórios em um local específico. Se você configurado um local padrão, é possível omitir essa sinalização para padrão.
Como instalar pacotes
Modos de repositório:padrão, remoto (pré-lançamento)
Antes de instalar pacotes, verifique se você configurou o gerenciador de pacotes e o repositório corretamente.
Para instalar um pacote no repositório:
Atualize a lista de pacotes disponíveis:
sudo apt update
Instale o pacote, especificando o nome do repositório configurado em Apto.
sudo apt install PACKAGE/REPOSITORY
Substitua os seguintes valores:
- PACKAGE é o nome do pacote.
- REPOSITORY é o nome do repositório do Artifact Registry. Para repositórios remotos, use o nome do repositório upstream padrão.
Por exemplo, para instalar o pacote
my-package
do repositóriomy-repo
, execute o comando:sudo apt install my-package -t my-repo
Como excluir pacotes
Modos de repositório: padrão
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
Abra a página Repositórios no console do Google Cloud.
Na lista de repositórios, clique no repositório apropriado.
A página Pacotes lista os pacotes no repositório.
Selecione o pacote que você quer excluir.
Clique em EXCLUIR.
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 regional ou multirregional local. Use esta sinalização para ver repositórios em um local específico. Se você configurado um local padrão, é possível omitir essa sinalização para padrão.
--async
Retorna imediatamente, sem aguardar a conclusão da operação em andamento.
Para excluir versões de um pacote:
Console
Abra a página Repositórios no console do Google Cloud.
Na lista de repositórios, clique no repositório apropriado.
A página Pacotes lista os pacotes no repositório.
Clique em um pacote para visualizar as versões dele.
Selecione as versões que você quer excluir.
Clique em EXCLUIR.
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 regional ou multirregional local. Use esta sinalização para ver repositórios em um local específico. Se você configurado um local padrão, é possível omitir essa sinalização para padrão.
--async
retorna imediatamente, sem aguardar a conclusão da operação em andamento.
Para repositórios grandes, pode levar alguns minutos para gerar novamente o pacote Apt para refletir as exclusões.