Gestione pacchetti RPM

Questa pagina descrive come aggiungere, visualizzare ed eliminare i pacchetti RPM nei repository Yum. I repository Yum di Artifact Registry supportano Yum e DNF.

Prima di iniziare

  1. Se il repository Yum di destinazione non esiste, crea un nuovo repository.
  2. Configura le VM per accedere al repository.
  3. (Facoltativo) Configura i valori predefiniti per i comandi gcloud.
  4. Assicurati che i nomi dei pacchetti nei metadati soddisfino le Linee guida per la denominazione dei pacchetti Fedora e Linee guida per il controllo delle versioni dei pacchetti Fedora.

Aggiunta di pacchetti

Modalità repository: standard

Devi disporre delle autorizzazioni di lettura e scrittura per per aggiungere pacchetti.

Puoi caricare un pacchetto in un repository utilizzando l'interfaccia a riga di comando Google Cloud oppure puoi importarne uno archiviato in Cloud Storage. Se crei pacchetti utilizzando Cloud Build, la compilazione può archiviarli in Cloud Storage per consentirti di importarli.

Le operazioni di importazione o caricamento molto lunghe potrebbero superare il periodo di scadenza della usato da gcloud CLI per chiamare l'API. Se disponi di un un numero elevato di pacchetti, valuta la possibilità di aggiungerli in batch più piccoli, ogni operazione di caricamento o importazione può essere completata in meno tempo. Per ulteriori informazioni, consulta la documentazione sulla risoluzione dei problemi relativi ai pacchetti del sistema operativo.

Caricamento diretto

Utilizza il comando gcloud artifacts yum upload per caricare un pacchetto in un repository Yum:

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

Sostituisci i seguenti valori:

  • REPOSITORY è il nome del repository Artifact Registry.
  • LOCATION è la posizione regionale o multiregionale del repository.
  • PACKAGES è il percorso del pacchetto.

Ad esempio, per caricare il pacchetto my-package.rpm nel repository Yummy-repo nella posizione us-central1, esegui:

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

Cloud Storage

  1. Carica i pacchetti in Cloud Storage in uno dei modi seguenti:

    • Carica i pacchetti direttamente su un Bucket Cloud Storage
    • Crea i pacchetti con Cloud Build e archiviali in un bucket
  2. Esegui questo comando:

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

    Sostituisci i seguenti valori:

    • REPOSITORY è il nome del repository Artifact Registry.
    • LOCATION è la posizione regionale o multiregionale del repository.
    • PACKAGES è un elenco separato da virgole di pacchetti in di archiviazione ideale in Cloud Storage. Per caricare tutti i pacchetti da una directory, utilizza un carattere jolly per le directory (*) o un carattere jolly per le directory ricorsive (**) per caricare tutti i pacchetti in tutte le sottodirectory.

    Ad esempio, per caricare il pacchetto package.rpm e tutti i pacchetti in la directory directory dal bucket my-bucket a Yum repository my-repo nella località us-central1, esegui:

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

Al termine dell'operazione di caricamento o importazione, puoi utilizzare Console Google Cloud o gcloud CLI per visualizzare i pacchetti nella repository e verificare che siano stati caricati correttamente.

Se hai un repository di grandi dimensioni con molti pacchetti, potrebbero essere necessarie minuti per rigenerare l'indice dei pacchetti in modo che i nuovi pacchetti siano visibili il client Yum.

Visualizzazione dei pacchetti

Modalità repository: standard, remota (anteprima)

Per visualizzare i pacchetti, devi disporre delle autorizzazioni nel ruolo di lettore di Artifact Registry. Artifact Registry non elenca i file all'interno dei pacchetti.

Visualizzazione di pacchetti e versioni dei pacchetti utilizzando la console Google Cloud o gcloud:

Console

  1. Apri la pagina Repository nella console Google Cloud.

    Apri la pagina Repository

  2. Nell'elenco dei repository, fai clic sul repository appropriato.

    La pagina Pacchetti elenca i pacchetti presenti nel repository.

  3. Fai clic su un pacchetto per visualizzare le sue versioni.

gcloud

Per elencare i pacchetti contenuti in un repository, esegui questo comando:

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

Dove

  • REPOSITORY è il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.
  • LOCATION è un una o più regioni località. Utilizza questo flag per visualizzare i repository in una posizione specifica. Se configurato una località predefinita, puoi omettere questo flag per utilizzare per impostazione predefinita.

Per visualizzare le versioni di un pacchetto, esegui il comando seguente:

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

Dove

  • PACKAGE è l'ID del pacchetto o dell'identificatore completo per il pacchetto.
  • REPOSITORY è il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.
  • LOCATION è un una o più regioni località. Utilizza questo flag per visualizzare i repository in una posizione specifica. Se hai configurato una posizione predefinita, puoi omettere questo flag per utilizzare la posizione predefinita.

Installazione dei pacchetti

Modalità del repository: standard, remoto (anteprima)

Prima di installare i pacchetti, verifica di aver configurato il gestore di pacchetti e il repository.

Per installare i pacchetti:

Installa il pacchetto, specificando il nome del repository configurato in Yum.

sudo yum --enablerepo=REPOSITORY install PACKAGE

Sostituisci i seguenti valori:

  • PACKAGE è il nome del pacchetto
  • REPOSITORY è il nome del repository configurato nel file .repo.

Ad esempio, per installare il pacchetto my-package dal repository my-repo, esegui questo comando:

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

Eliminazione dei pacchetti

Modalità del repository: standard

Prima di eliminare un pacchetto o una versione del pacchetto, verifica di avere che abbia comunicato o gestito eventuali dipendenze importanti.

Per eliminare un pacchetto:

Console

  1. Apri la pagina Repository nella console Google Cloud.

    Apri la pagina Repository

  2. Nell'elenco dei repository, fai clic sul repository appropriato.

    La pagina Pacchetti elenca i pacchetti nel repository.

  3. Seleziona il pacchetto da eliminare.

  4. Fai clic su ELIMINA.

  5. Nella finestra di dialogo di conferma, fai clic su ELIMINA.

gcloud

Esegui questo comando:

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

Dove

  • PACKAGE è il nome del pacchetto nel repository.
  • REPOSITORY è il nome del repository. Se hai configurato un repository predefinito, puoi omettere questo flag per utilizzare quello predefinito.
  • LOCATION è un una o più regioni località. Utilizza questo flag per visualizzare i repository in una posizione specifica. Se configurato una località predefinita, puoi omettere questo flag per utilizzare per impostazione predefinita.
  • --async Torna immediatamente senza attendere il completamento dell'operazione in corso.

Per eliminare le versioni di un pacchetto:

Console

  1. Apri la pagina Repository nella console Google Cloud.

    Apri la pagina Repository

  2. Nell'elenco dei repository, fai clic sul repository appropriato.

    La pagina Pacchetti elenca i pacchetti presenti nel repository.

  3. Fai clic su un pacchetto per visualizzarne le versioni.

  4. Seleziona le versioni da eliminare.

  5. Fai clic su ELIMINA.

  6. Nella finestra di dialogo di conferma, fai clic su ELIMINA.

gcloud

Esegui questo comando:

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

Dove

  • PACKAGE è il nome del pacchetto nel repository.
  • REPOSITORY è il nome del repository. Se hai configurato default, puoi omettere questo flag per utilizzare il repository predefinito.
  • LOCATION è un una o più regioni località. Utilizza questo flag per visualizzare i repository in una posizione specifica. Se hai configurato una posizione predefinita, puoi omettere questo flag per utilizzare la posizione predefinita.
  • --async restituisce immediatamente il valore, senza attendere il completamento dell'operazione in corso.

Per i repository di grandi dimensioni, la rigenerazione del pacchetto Yum può richiedere alcuni minuti per riflettere le eliminazioni.

Passaggi successivi