Auf dieser Seite wird beschrieben, wie Sie RPM-Pakete in Yum-Repositories hinzufügen, aufrufen und löschen. Artifact Registry-Yum-Repositories unterstützen Yum und DNF.
Hinweis
- Wenn das Ziel-Yum-Repository nicht vorhanden ist, erstellen Sie ein neues Repository.
- Konfigurieren Sie VMs für den Zugriff auf das Repository.
- (Optional) Konfigurieren Sie die Standardeinstellungen für gcloud-Befehle.
- Achten Sie darauf, dass die Paketnamen in den Metadaten den Richtlinien für die Paketbenennung von Fedora und den Richtlinien für die Paketversionierung von Fedora entsprechen.
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 Paket importieren, das in Cloud Storage gespeichert ist.
Bei sehr langen Import- oder Uploadvorgängen kann der Ablaufzeitraum für das Token überschritten werden, 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 Batches 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.
Direkter Upload
Verwenden Sie den
gcloud artifacts yum upload Befehl
zum Hochladen eines Pakets in ein Yum-Repository:
gcloud artifacts yum upload REPOSITORY \
--location=LOCATION \
--source=PACKAGES
Ersetzen Sie die folgenden Werte:
REPOSITORYist der Name des Artifact Registry-Repositorys.-
LOCATIONist der regionale Standort des Repositorys. PACKAGESist der Pfad zum Paket.
Wenn Sie beispielsweise das Paket my-package.rpm in das Yum-Repository
my-repo am Standort u-france-east1 hochladen möchten, führen Sie folgenden Befehl aus:
gcloud artifacts yum upload my-repo \
--location=u-france-east1 \
--source=my-package.rpm
Cloud Storage
- Laden Sie die Pakete direkt in einen Cloud Storage-Bucket hoch.
- Führen Sie dazu diesen Befehl aus:
gcloud artifacts yum import REPOSITORY \ --location=LOCATION \ --gcs-source=PACKAGES
Ersetzen Sie die folgenden Werte:
REPOSITORYist der Name des Artifact Registry-Repositorys.-
LOCATIONist der regionale Standort des Repositorys. PACKAGESist eine durch Kommas getrennte Liste von Paketen in Cloud Storage. Wenn Sie alle Pakete aus einem Verzeichnis hochladen möchten, verwenden Sie einen Platzhalter für das Verzeichnis (*) oder einen rekursiven Platzhalter für das Verzeichnis (**), um alle Pakete in allen Unterverzeichnissen hochzuladen.
Mit dem folgenden Befehl werden beispielsweise das Paket
package.rpmund alle Pakete im Verzeichnisdirectoryaus dem Bucketmy-bucketin das Yum-Repositorymy-repoam Standortu-france-east1hochgeladen:gcloud artifacts yum import my-repo \ --location=u-france-east1 \ --gcs-source=gs://my-bucket/path/to/package.rpm,gs://my-bucket/directory*
Nach Abschluss des Upload- oder Importvorgangs können Sie in der Cloud de Confiance Console oder mit der gcloud CLI die Pakete im Repository ansehen und prüfen, ob sie erfolgreich hochgeladen wurden.
Wenn Sie ein großes Repository mit vielen Paketen haben, kann es einige Minuten dauern, bis der Paketindex neu generiert wird, damit die neuen Pakete für den Yum-Client sichtbar sind.
Pakete ansehen
Repository-Modi: Standard
Zum Ansehen von Paketen benötigen Sie die Berechtigungen der Rolle Artifact Registry-Leser. In Artifact Registry werden keine Dateien in Paketen aufgeführt.
So rufen Sie die Pakete und Paketversionen mit der Cloud de Confiance console
oder gcloudab:
Console
Öffnen Sie in der Cloud de Confiance console die Seite Repositories.
Klicken Sie in der Liste der Repositories auf das entsprechende Repository.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
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]
Ersetzen Sie Folgendes:
REPOSITORYist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.-
LOCATIONist der regionale Speicherort für das Repository. 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]
Ersetzen Sie Folgendes:
PACKAGEist die ID des Pakets oder die voll qualifizierte Kennzeichnung für das Paket.REPOSITORYist der Name des Repositorys. Wenn Sie ein Standard Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.-
LOCATIONist der regionale Speicherort für das Repository. 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.
Pakete installieren
Repository-Modi: Standard
Bevor Sie Pakete installieren, prüfen Sie, ob Sie die VM so konfiguriert haben, dass Pakete aus Ihrem Artifact Registry-Repository installiert werden.
Führen Sie den folgenden Befehl aus, um ein Paket zu installieren:
sudo yum --enablerepo=REPOSITORY install PACKAGE
Ersetzen Sie die folgenden Werte:
PACKAGEist der Paketname.REPOSITORYist der Name des Repositorys, das in der Datei.repokonfiguriert ist.
Wenn Sie beispielsweise das Paket my-package aus dem Repository my-repo installieren möchten, führen Sie den folgenden 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
Öffnen Sie in der Cloud de Confiance console die Seite Repositories.
Klicken Sie in der Liste der Repositories auf das entsprechende Repository.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
Wählen Sie das Paket aus, das Sie löschen möchten.
Klicken Sie auf Löschen.
Klicken Sie im Bestätigungsdialogfeld auf Löschen.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud artifacts packages delete PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] [--async]
Ersetzen Sie Folgendes:
PACKAGEist der Name des Pakets im Repository.REPOSITORYist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.-
LOCATIONist der regionale Standort des Repositorys. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standardstandort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.
Das Flag --async bewirkt, dass der Befehl sofort zurückgegeben wird, ohne auf den Abschluss des Vorgangs zu warten.
So löschen Sie Versionen eines Pakets:
Console
Öffnen Sie in der Cloud de Confiance console die Seite Repositories.
Klicken Sie in der Liste der Repositories auf das entsprechende Repository.
Auf der Seite Pakete sind die Pakete des Repositorys aufgeführt.
Klicken Sie auf das Paket, um die Versionen des Pakets aufzurufen.
Wählen Sie die Versionen aus, die Sie löschen möchten.
Klicken Sie auf Löschen.
Klicken Sie im Bestätigungsdialogfeld auf Löschen.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud artifacts versions delete VERSION \
--package=PACKAGE \
[--repository=REPOSITORY] [--location=LOCATION] \
[--async]
Ersetzen Sie Folgendes:
VERSIONist der Name der zu löschenden Version.PACKAGEist der Name des Pakets im Repository.REPOSITORYist der Name des Repositorys. Wenn Sie ein Standard-Repository konfiguriert haben, wird bei Weglassen dieses Flags dieses Standard-Repository verwendet.-
LOCATIONist der regionale Standort des Repositorys. Verwenden Sie dieses Flag, um Repositories an einem bestimmten Speicherort aufzurufen. Wenn Sie einen Standardstandort konfiguriert haben, wird bei Weglassen dieses Flags dieser Standardwert verwendet.
Das Flag --async bewirkt, dass der Befehl sofort zurückgegeben wird, 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 zu berücksichtigen.