Arbeitsnotizen zu: Bamboo Variablen in Build Jobs

Variablen in Scripts

Kommentieren Jul 11 2022

 

Bei der Vewendung von Variablen in einem Bamboo Build Job und dessen Tasks bin ich über ein mir nicht bekanntes Verhalten der Variablen gestolpert.

Verwendet man ein Scripttask mit einem inline script kann man den Variablensyntax, wie in der Doku beschrieben, verwenden. Ebenso bei all den anderen Feldern die so ein Taks anbietet.

Lagert man diese Script als Dateien in das Repo aus, funktioniert dieser Syntax nicht mehr.

Man muss die Variablen umschreiben. Dabei wird ein . mit einem _ ersetzt. Bisher habe ich dies noch nicht in der offizellen Dokumentation gefunden sondern nur in einem Kommentar irgendwo im Netz.

Bei der Verwendung eines Docker Tasks tritt das Problem auch auf. Sobald das Dockerfile nicht mehr inline ist. Da reicht leider das Umschreiben nicht aus, sondern es muss ein anderer Weg über --build-arg im Feld Additional arguments genommen werden. In diesem Feld kann der gewohnte Bamboo Variablensyntax verwendet werden. Zusätzlich muss dann diese Variable im Dockerfile mit ARG <VARNAME> übernommen werden.

Um auf das Dockerfile im Docker Task zuzugreifen muss man das Feld Working directory anpassen. Nicht immer liegt das Dockerfile im root oder es gibt sogar mehrere davon.