Могу ли я передать VCAP_SERVICES на этап тестирования в конвейере IBM Cloud Continuous Delivery?

На стадии (модульного) тестирования я запускаю следующие команды:

echo "Installing Node Modules"
npm install

echo "Run Unit Tests"
npm run test-mocha

Моя проблема в том, что я не могу получить доступ к VCAP_SERVICES на этапе тестирования (задание настроено на модульное тестирование).

Есть ли способ получить / передать их?

2 ответа

Единственный способ, который я вижу, это использование cf cli над предоставленной оболочкой на этом этапе. Но это потребует аутентификации, и вы не захотите хранить там дату своего пользователя.

Таким образом, одним из способов будет сохранение данных на предоставленной вкладке среды для этого этапа. Затем вы должны адаптировать эти данные на случай, если что-то изменится, потому что они не предоставлены файлом vcap, но, похоже, так оно и есть на этапе тестирования, по крайней мере.

Как уже упоминалось, лучший способ использования VCAP_SERVICES на этапе тестирования - установить его самостоятельно в конфигурации свойств среды на этапе.

Трубопровод - это среда сборки. Он должен быть в состоянии работать, даже если приложение еще не развернуто или аварийно завершилось. Иногда мы копируем значения из среды выполнения, но среда сборки должна по возможности минимизировать свои зависимости от среды выполнения.

Существует также вопрос, что работники конвейера могут получить доступ к сервисам времени выполнения, указанным в VCAP_SERVICES, Для сервисов, которые я использовал в своих конвейерах, это всегда работало, но это не гарантировано.

Другие вопросы по тегам