我必须将Octopus-Deploy连接到位于Azure Devops Artifact Feed上的外部Feed。我已经成功连接到提要,但是看到如何将我的SSIS项目(.ispac)和SSDB项目(.dacpac)打包为.dacpac和.ispac,它找不到它们,因为它希望它们位于.NuGet中格式。
由于卡住,我无法尝试很多东西。
不适用
我必须将我制作的任何类型的程序包放在此饲料上,以从Octopus连接并从中进行部署。我必须将我的所有程序包都设置为NuGet程序包,或者找到另一种方式,即章鱼部署可以在Azure外部Feed上找到我的程序包,而无需使用NuGet程序包。我只在部署SSDT,例如dacpac,ispac,sql-agents,sql脚本等。
答案 0 :(得分:1)
您可以制作一个NuSpec文件,其中包含将其打包到NuGet中才能在Octopus中使用NuGet外部提要的内容。对于SSIS,您将需要像这样在nuspec文件中引用.ispac文件:
{
tr:not(:has(tr))
}
然后,您将在DevOps中创建一个“构建”管道,以构建您的解决方案。对于ispac,您将需要使用SSIS Build(可以从市场上购买)。
在构建解决方案以形成最新的.ispac之后,您可以使用指向.nuspec文件的NuGet包,如下所示:
{
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>SSIS.ODSToDW</id>
<version>2.0.0</version>
<authors>blah</authors>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>ODSToDW ispac</description>
</metadata>
<files>
<file src="bin/Development/ODS-To-DW.ispac" target="ODS-To-DW.ispac" />
</files>
</package>
}
然后,您可以对天蓝色的Artifact Feed进行“ NuGet推送”。章鱼将可以使用“外部NuGet提要”从中进行连接,这将使您能够使用章鱼进程选项中的“部署程序包”,从中可以使用章鱼的名称指向您的特定工件,并且部署后的Powershell脚本将允许您将其部署到sql服务器。