RPM-Pakete verwalten

Auf dieser Seite wird beschrieben, wie Sie RPM-Pakete in Yum-Repositories hinzufügen, aufrufen und löschen. Yum-Repositories in Artifact Registry unterstützen Yum und DNF.

Hinweis

  1. Wenn das Yum-Ziel-Repository nicht vorhanden ist, Erstellen Sie ein neues Repository.
  2. Konfigurieren Sie VMs für den Zugriff auf das Repository.
  3. (Optional) Konfigurieren Sie die Standardeinstellungen für gcloud-Befehle.
  4. Achten Sie darauf, dass die Paketnamen in den Metadaten den Benennungsrichtlinien für Fedora-Pakete und Richtlinien für die Fedora-Paketversionsverwaltung

Pakete hinzufügen

Repository-Modi: Standard

Sie benötigen sowohl Lese- als auch Schreibberechtigungen für das Repository, um Pakete hinzuzufügen.

Sie können ein Paket mit der Google Cloud CLI in ein Repository hochladen oder ein in Cloud Storage gespeichertes Paket importieren. Wenn Sie Pakete mit Cloud Build kann der Build die Pakete für Sie in Cloud Storage speichern. zu importieren.

Sehr lange Import- oder Upload-Vorgänge können die Ablauffrist für die Token, das die gcloud CLI zum Aufrufen der API verwendet. Wenn Sie eine sehr große Anzahl von Paketen hinzufügen möchten, sollten Sie sie in kleineren Gruppen hinzufügen, damit jeder Upload- oder Importvorgang in kürzerer Zeit abgeschlossen werden kann. Weitere Informationen finden Sie in der Dokumentation zur Fehlerbehebung bei Betriebssystempaketen. Informationen.

Direkter Upload

Verwenden Sie den Befehl gcloud artifacts yum upload, um ein Paket in ein Yum-Repository hochzuladen:

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

Ersetzen Sie die folgenden Werte:

  • REPOSITORY ist der Name des Artifact Registry-Repositorys.
  • LOCATION ist der regionale oder multiregionale Speicherort des Repositorys.
  • PACKAGES ist der Pfad zum Paket.

Wenn Sie beispielsweise das Paket my-package.rpm in das Yum-Repository hochladen möchten, Führen Sie my-repo am Standort us-central1 aus:

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

Cloud Storage

  1. Sie haben folgende Möglichkeiten, die Pakete in Cloud Storage hochzuladen:

    • Pakete direkt in einen Cloud Storage-Bucket hochladen
    • Pakete mit Cloud Build erstellen und in einem Bucket speichern
  2. Führen Sie dazu diesen Befehl aus:

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

    Ersetzen Sie die folgenden Werte:

    • REPOSITORY ist der Name des Artifact Registry-Repositorys.
    • LOCATION ist der regionale oder multiregionale Speicherort des Repositorys.
    • PACKAGES ist eine durch Kommas getrennte Liste von Paketen in Cloud Storage. Wenn Sie alle Pakete aus einem Verzeichnis hochladen möchten, verwenden Sie einen Verzeichnis-Wildcard-Zeichen (*) oder einen rekursiven Verzeichnis-Wildcard-Zeichen (**), um alle Pakete in allen Unterverzeichnissen hochzuladen.

    Wenn Sie beispielsweise das Paket package.rpm und alle Pakete im Verzeichnis directory aus dem Bucket my-bucket in das Yum-Repository my-repo am Speicherort us-central1 hochladen möchten, führen Sie Folgendes aus:

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

Wenn der Upload- oder Importvorgang abgeschlossen ist, können Sie die Methode Google Cloud Console oder gcloud CLI, um Pakete im Repository und bestätigen Sie, dass sie erfolgreich hochgeladen wurden.

Wenn Sie ein großes Repository mit vielen Paketen haben, Minuten, um den Paketindex neu zu generieren, sodass die neuen Pakete für Yum-Kunde.

Pakete ansehen

Repository-Modi: Standard, remote (Vorabversion)

Zum Aufrufen von Paketen benötigen Sie die entsprechenden Berechtigungen in Artifact Registry Rolle „Leser“. Artifact Registry listet keine Dateien auf in Paketen enthalten.

So rufen Sie Pakete und Paketversionen mit der Google Cloud Console auf: oder gcloud:

Console

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Klicken Sie in der Liste der Repositories auf das entsprechende Repository.

    Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.

  3. Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.

gcloud

Führen Sie den folgenden Befehl aus, um die Pakete in einem Repository aufzulisten:

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

Dabei gilt:

  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regional oder multiregional Standort Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standard-Speicherort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.

Um die Versionen für ein Paket aufzurufen, führen Sie folgenden Befehl aus:

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

Wo

  • PACKAGE ist die ID des Pakets oder die vollqualifizierte Kennzeichnung für das Paket.
  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regional oder multiregional Standort Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie default-Speicherort konfiguriert haben, können Sie dieses Flag weglassen, die Standardeinstellung.

Pakete installieren

Repository-Modi: Standard, Remote (Vorabversion)

Stellen Sie vor dem Installieren von Paketen sicher, dass Sie des Paketmanagers und des Repositorys.

So installieren Sie Pakete:

Installieren Sie das Paket und geben Sie dabei den Namen des in Yum konfigurierten Repositorys an.

sudo yum --enablerepo=REPOSITORY install PACKAGE

Ersetzen Sie die folgenden Werte:

  • PACKAGE ist der Paketname.
  • REPOSITORY ist der Name des in der Datei .repo konfigurierten Repositorys.

Wenn Sie beispielsweise das Paket my-package aus dem Repository my-repo installieren möchten, führen Sie den Befehl aus:

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

Pakete löschen

Repository-Modi: Standard

Bevor Sie ein Paket oder eine Paketversion löschen, prüfen Sie, ob Sie alle wichtigen Abhängigkeiten davon kommuniziert oder behoben haben.

So löschen Sie ein Paket:

Console

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Klicken Sie in der Liste der Repositories auf das entsprechende Repository.

    Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.

  3. Wählen Sie das Paket aus, das Sie löschen möchten.

  4. Klicken Sie auf Löschen.

  5. Klicken Sie im Bestätigungsdialogfeld auf Löschen.

gcloud

Führen Sie folgenden Befehl aus:

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

Dabei gilt:

  • PACKAGE ist der Name des Pakets im Repository.
  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regional oder multiregional Standort Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie default-Speicherort konfiguriert haben, können Sie dieses Flag weglassen, die Standardeinstellung.
  • --async wird sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten.

So löschen Sie Versionen eines Pakets:

Console

  1. Öffnen Sie in der Cloud Console die Seite Repositories.

    Zur Seite „Repositories“

  2. Klicken Sie in der Liste der Repositories auf das entsprechende Repository.

    Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.

  3. Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.

  4. Wählen Sie die Versionen aus, die Sie löschen möchten.

  5. Klicken Sie auf Löschen.

  6. Klicken Sie im Bestätigungsdialogfeld auf Löschen.

gcloud

Führen Sie folgenden Befehl aus:

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

Dabei gilt:

  • PACKAGE ist der Name des Pakets im Repository.
  • REPOSITORY ist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.
  • LOCATION ist ein regional oder multiregional Standort Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standard-Speicherort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.
  • --async wird sofort zurückgegeben, ohne auf den Abschluss des Vorgangs zu warten.

Bei großen Repositories kann es einige Minuten dauern, bis der Yum-Paketindex neu generiert wird, um die Löschungen widerzuspiegeln.

Nächste Schritte