Как я могу сохранить JSON в Drone и записать его в файл, чтобы он не был поврежден? - PullRequest
0 голосов
/ 29 марта 2019

Вот контекст того, что я пытаюсь сделать. Я хотел бы иметь шаг Drone для запуска миграций базы данных с экземпляром Google Cloud SQL Postgres. Мне нужно использовать Cloud SQL Proxy для доступа к базе данных. Cloud SQL Proxy требует, чтобы вы предоставили файл учетных данных для прокси.

Проблема, с которой я сталкиваюсь, заключается в том, что когда я пытаюсь echo или printf переменную окружения в файл (как предложено здесь ), JSON искажается.

Примечание: я пытался добавить JSON через Drone GUI и Drone CLI.

1 Ответ

1 голос
/ 29 марта 2019

Лучшее решение, которое я нашел для этой проблемы, - это просто кодировать JSON с помощью base64, прежде чем помещать его в Drone.

Декодировать base64, когда это необходимо на вашем шаге.

Примеры команд:

Код: base64 data.txt > data.b64

Декодирование: echo $CREDS_B64 | base64 --decode > sql-deploy-creds.json

...