Einbinden persistenter Datenträger in Google Cloud Build

Einbinden persistenter Datenträger in Google Cloud Build

Ich muss im Rahmen des automatisierten Bereitstellungsprozesses mit „Google Cloud Build“ Dateien aus einem Git-Repository auf eine persistente Festplatte in der Google Cloud kopieren.

Wie kann ich persistente Volume-Ansprüche verwenden oder NFS-Freigaben im Cloud-Build-YAML mounten?

Ich habe es bereits geschafft, Dateien von /workspace in den Pod zu kopieren, auf dem der NFS-Server läuft, indem ich „kubectl cp“ verwendet habe. Allerdings ist cp von kubectl begrenzt, unterstützt keinen Verzeichnisausschluss und verfügt nicht über die Synchronisierungsfunktionen wie rsync.

Zusammenfassend: Wie kann ich mit Google Cloud Build eine NFS-Freigabe mounten?

Antwort1

Wenn Sie nur Dateien aus dem Git-Repo verwalten möchten, können Sie Ihre Artefakte inCloud-SpeicherDies ist ein Beispiel für die Speicherung mehrerer Artefakte in Cloud Storage:

steps:    
- name: 'gcr.io/cloud-builders/javac'
  args: ['HelloWorld.java']
artifacts:
 objects:
 location: 'gs://[STORAGE_LOCATION]/'
 paths: ['HelloWorld.java', 'HelloWorld.class', 'cloudbuild.yaml']

Außerdem können SiePlatzhalterbeim Senden der Dateien an Cloud Storage. Dies hilft Ihnen bei der Anforderung des Verzeichnisausschlusses. Später können Sie die Dateien mit einem derClient-Bibliothekenvom Kubernetes-Dienst.

verwandte Informationen