Возможно ли использование Octopus Deploy для изменения значений конфигурации, отличных от настроек приложения, с помощью переменных?
У нас работает OD 1.6.
Я хотел бы использовать переменные OD для изменения значений, таких как Session State Provider, которых нет в разделе настроек приложения.
Я знаю, что могу использовать преобразование для этого, но как компания, мы предпочитаем использовать переменные OD, а не преобразования, поскольку это позволяет нашей оперативной команде изменять настройки без изменения нашей кодовой базы.
Есть ли способ ввести переменные в произвольные места в web.config?
Что-то вроде:
<sessionState mode="Custom" customProvider="#{MyODVariable.SessionStore}">
<providers>
<add name="MySessionStateStore" type="Microsoft.Web.Redis.RedisSessionStateProvider" host="#{MyODVariable.Host}"
accessKey="#{MyODVariable.AccessKey}" ssl="#{MyODVariable.SSL}" />
</providers>
</sessionState>
2 ответа
В 2.4+ есть функция для этого, но в 1.6 единственный способ решить эту проблему - написать сценарий PowerShell и выполнить замену в файле. Если вы ищете пример, хорошим местом для начала будет код PowerShell, найденный на этой странице библиотеки: http://library.octopusdeploy.com/#!/step-template/actiontemplate-file-system-find-and- замещать
Ясно, что вопрос был написан давно, для того, что сейчас является старой версией. Если кто-то с более свежей версией прибудет сюда...
Вы можете использовать файл преобразования, содержащий переменные Octopus. Выберите " Настроить компоненты", чтобы включить замену переменных в этом файле (вы должны указать ему, какой файл), и включить применение преобразования (используйте соглашение об именах или укажите, что вы хотите).
Затем вы можете добавить действия, внесенные сообществом, чтобы найти незаменяемые переменные ( поставьте галочку в поле Рассматривать как ошибку, чтобы развертывание завершилось неудачно, если переменная была пропущена), и удалить файлы преобразования.