2017-02-17 2 views
2

Also versuche ich ein Bild aus meiner Google Container Registry zu verwenden, da dies eine private Registry ist, die ich authentifizieren muss.Bitbucket Pipelines: Das Ziehen eines Bildes aus GCR mit Umgebungsvariablen schlägt fehl

Offensichtlich möchte ich nicht jede Stunde mein Auth-Token erneuern, damit meine Pipelines funktionieren, also muss ich nach der JSON-Schlüsseldatei suchen.

Es funktioniert, wenn ich das Bild wie folgt definieren:

image: 
    name: eu.gcr.io/project_id/image:latest 
    username: _json_key 
    password: > 
     {JSON file content} 
    email: [email protected] 

Aber das bedeutet, dass Ihre json Schlüsseldatei ist mit Zugang für alle in der offenen zur Verfügung, um die Rohrleitungen gut zu sehen, nicht das, was würde ich mögen.

Dann habe ich den Inhalt der JSON-Datei in eine Umgebungsvariable gesetzt und ersetzt die tatsächliche json mit den Umgebungsvariablen wie folgt:

image: 
    name: eu.gcr.io/project_id/image:latest 
    username: _json_key 
    password: > 
     ${JSON_KEY} 
    email: [email protected] 

Irgendwie im zweiten Szenario funktioniert es nicht :(

+0

ich habe es auch hier platziert: https://bitbucket.org/site/master/issues/13869/prob lem-with-environment-variables-while – TheWolfNL

+1

Wie hast du es geschafft, die env var zu setzen? Da der JSON-Schlüssel, den ich von GCP habe, Zeilenumbrüche enthält, entferne ich diese einfach? –

+1

Wenn ich mich richtig erinnere, wird bitbucket diese automatisch entfernen, also sollten Sie in der Lage sein, einfach in die ENV-Variable in Bitbuckets Pipeline-Konfiguration einzufügen. (Repo -> Einstellungen -> unter Überschrift "Pipelines" - Umgebungsvariablen) – TheWolfNL

Antwort

5

Nach einigen weiteren Tests fand ich, dass dies funktioniert:

image: 
    name: eu.gcr.io/project_id/image:latest 
    username: _json_key 
    password: '$JSON_KEY' 
Verwandte Themen