2014-10-18 4 views
0

ASP.NET Mvc 5 웹 사이트에 Octopus Deploy를 사용하기 시작했으며 web.config 값을 대체하는 것이 효과적이지만 web.config에 값을 추가하는 방법이 있습니다. 존재하지 않는?Octopus Deploy를 사용하여 web.config에 응용 프로그램 설정을 추가하십시오.

우리가해야하는 이유는 우리가 플러그 형 아키텍처를 가지고 있고 일부 프로젝트가 솔루션에서 참조하지 않고 이러한 추가 프로젝트가 NuGet으로 패키징되어 있으며 시스템이 특정 역할을 수행하는 경우 이러한 추가 패키지가 배포되고 앱이 시작할 때 dll을로드합니다.

우리가 배포하는 표준 web.config에는 이러한 설정이 없으므로 필요하지 않은 경우 추가 값을 추가하지 않으므로 deploy의 web.config에 더 많은 appsettings를 추가하는 것이 이상적입니다.

+0

문어로 web.config의 값을 어떻게 업데이트 할 수 있습니까? – Campinho

답변

2

Octopus Deploy에서이 작업을 수행하는 방법에는 두 가지가 있습니다.

미리 추가하려는 섹션을 알고있는 경우 Conditionals을 사용하여 섹션을 web config transformations과 함께 포함하거나 제외 할 수 있습니다.

좀 더 동적 인 작업을 수행하려면 deploy.ps1 PowerShell 스크립트를 사용하여 노드를 추가하는 것이 가장 좋습니다. 이 같은 것이 그것을 할 것입니다.

$filePath = [path to my web.config file] 

# load the XML from the web.config 
$xml = New-Object XML 
$xml = [xml](Get-Content $filePath) 

$setting = $xml.CreateElement('add') 
$setting.SetAttribute('key','Name') 

$xml.configuration.appSettings.AppendChild($setting) 

$xml.Save($filePath) 
+0

도움을 주셔서 감사합니다.이 코드 스 니펫은 필자가 필요로하는 PowerShell 스크립트를 작성하는 데 도움이되었습니다. – user351711

관련 문제