DTSConfiguration Преобразование файла в Осьминог

Я использую Octopus и хочу трансформировать мои файлы. Однако эти файлы не являются файлами.config. Это как-то разные файлы отчетов, а именно.dtsConfig и.dtsx

Я пробовал это как файл.config, но он не работает. Я установил флажок "XML Configuration-XML Variables" на моем шаге пакета развертывания nuget и добавил переменную configurationString в "Переменные".

Как я могу преобразовать их, используя моего осьминога?

3 ответа

Вы можете предоставить переменные в любом типе файла независимо от того, является ли он.config или нет! Если файл не является.config, вам нужно сделать несколько дополнительных шагов. Примените следующие шаги:

  • Добавьте отображение переменных в ваш файл, как этот #{MyVariable},
  • Укажите, что переменная в переменной Octopus установлена ​​правильно,
  • Не забудьте включить этот файл в процесс развертывания Octopus! На шаге процесса нажмите ссылку "Настроить компоненты", затем установите флажок "Заменить переменные в файлах". После того, как вы установили этот флажок, вы увидите новое текстовое поле "Целевые файлы", появившееся на шаге процесса. В этом текстовом поле укажите путь к файлу!

В любом случае, вы можете включить в процесс скрипт PowerShell, который может выполнять более мощную задачу. Вы также можете с помощью скрипта ps1 изменить имя файла или то, что вы хотите.

Простым решением было бы использовать сценарии preDeploy, Deploy и PostDeploy для выполнения некоторых манипуляций с файлами.

PreDeploy -> переименовать DTSConfig в.config

Либо используйте Deploy или файлы преобразования, чтобы внести изменения.

PostDeploy -> переименовать его обратно в DTSConfig

В зависимости от вашей версии Octopus, вам придется либо включить файлы ps1 (Pre/post/deploy), либо включить их в процесс / шаг.

Я использую Octopus и использовал для развертывания пакета служб SSIS, предоставляя значения строки подключения в.dtsconfig. Вам не нужно применять преобразование. Просто используйте переменные. Это пойдет на работу.

Просто используйте #{Variables} в вашем.dtsconfig. Смотрите ниже пример #{TestVariable1}

dtsconfig:

  <?xml version="1.0" ?> 
- <DTSConfiguration>
- <DTSConfigurationHeading>
  <DTSConfigurationFileInfo GeneratedBy="Developer" GeneratedFromPackageName="SSIS_CashierTotals" GeneratedFromPackageID="{0AB76029-625B-49CC-8131-91F3512B17BC}" GeneratedDate="4/22/2010 1:28:15 PM" /> 
  </DTSConfigurationHeading>
- <Configuration ConfiguredType="Property" Path="\Package.Variables[User::sFileName].Properties[Value]" ValueType="String">
  <ConfiguredValue>#{TestVariable1}</ConfiguredValue> 
  </Configuration>
    </DTSConfiguration>

Укажите значение для переменной #{TestVariable1} в разделе Переменные вашего проекта в Octopus deploy.

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