как получить доступ к секретам от Дженкинса в файле .scala? - PullRequest
1 голос
/ 29 июня 2019

У меня есть переменная привязки секретного текста SECRET_TKN в конфигурации задания Дженкинса. Я хочу получить доступ к этой переменной в файле .scala. Как мне получить общий доступ к этой переменной в моем коде?

Я пробовал следующее, но, похоже, оно работает неправильно:

val token =sys.env("${SECRET_TKN}")
println ("value = " +token)

Вывод на консоль показывает значение как SOME(***), что приводит к сбою вызовов API, так как я считаю, что ключевое слово SOME идет вместе с фактическим извлеченным значением.

Кроме того, попробовал sys.env ("$ {? STG_SERVICE_TKN}"), но не повезло.

Ответы [ 2 ]

1 голос
/ 30 июня 2019

В вашем случае это будет работать, если SECRET_TKN - это заполненная переменная, это будет работать нормально:

val SECRET_TKN =  "SECRET_TKN"
val token =sys.env(s"${SECRET_TKN}")

Лучше использовать sys.env.get("mySecret"), который даст вам Option[String] вместо того, чтобы выдавать ошибку, если эта переменная отсутствует.

1 голос
/ 29 июня 2019

sys.env вводится по имени переменной, поэтому это должно работать:

val token = sys.env("SECRET_TKN")
...