TeamCity 发布使用 Visual Studio 2015
TeamCity publish using Visual Studio 2015
我阅读了很多关于使用 Visual Studio 的各种版本从 TeamCity 发布的文章。我目前正在使用 TeamCity 的 v.9.1.7 和 Visual Studio 2015.
我在签入时有 3 个构建步骤:
- 清理并重建
- 单元测试
- 发布
当我签入我的文件时,我收到一条测试已通过的成功消息:
我可以从这里看出有些地方不对,因为我希望它能说明一些关于出版的事情。当我查看构建日志时,我看到以下内容:
[12:48:22][API\API.sln] Publish [12:48:22][Publish] MSBuild [12:48:22][MSBuild] API\API\API.csproj: Build target: Publish
[12:48:22][API\API\API.csproj] _DeploymentUnpublishable
我的发布构建步骤是这样设置的:
在我 API 的 Visual Studio 项目中,我可以将其发布到网络上的正确位置。这是我的发布配置文件:
我不确定我错过了什么。我希望发布构建步骤能够像在 Visual Studio.
中单击构建-> 发布菜单项时一样工作
我猜我遗漏了什么或者误解了发布构建步骤应该做什么。
感谢任何帮助。
IIRC,从 TeamCity 发布需要某些文件或在构建代理上安装 VS(这确实不值得推荐)。您是否已将必要的文件复制到构建代理?
工件位置定义在哪里。
您可以使用 Tentacles 将构建发布到各种环境中。
我想,您需要查看工件配置。
经过几天又几天的搜索,我终于能够让它工作了。我在 上找到了部分答案。诀窍是让它从 MSBuild 命令行运行:
C:\TFS\project\myProject\APIproject>msbuild apiproject.csproj
/p:DeployOnBuild=true
/p:PublishProfile="Properties\PublishProfiles\DEV.pubxml"
/p:VisualStudioVersion=14.0
一旦我得到这个 运行 几次,我就能够在 Team City 中创建一个构建步骤(参见这个 )并且我设置了以下内容:
- 构建文件路径:
<location of the apiproject.csproj>
- MSBuild 版本:Microsoft Build Tools 2015
- MSBuild 工具版本:14.0
- 运行 平台:x86
- 命令行参数:
/p:DeployOnBuild=true /p:PublishProfile= "C:\TFS\API\API\Properties\PublishProfiles\DEV.pubxml" /p:VisualStudioVersion=14.0
VS 可能会找到仅包含名称的发布配置文件,例如:
/p:DeployOnBuild=true;/p:PublishProfile=DEV;
如果您 运行 多个构建代理,则非常有用。
如果您要部署到 IIS,您可能需要添加 AllowUntrustedCertificate=true;
您可以使用 MSBuild runner 来部署您的 Application/API
添加命令行参数:
/t:Clean /p:DeployOnBuild=true /t:build /t:publish /p:PublishProfile=C:\_works\teamcity\publishprofiles\Publiush_Profile.pubxml /p:VisualStudioVersion=12.0
PublishPrfile URL 应该是您的发布配置文件路径。
这对你有用。
我阅读了很多关于使用 Visual Studio 的各种版本从 TeamCity 发布的文章。我目前正在使用 TeamCity 的 v.9.1.7 和 Visual Studio 2015.
我在签入时有 3 个构建步骤:
- 清理并重建
- 单元测试
- 发布
当我签入我的文件时,我收到一条测试已通过的成功消息:
我可以从这里看出有些地方不对,因为我希望它能说明一些关于出版的事情。当我查看构建日志时,我看到以下内容:
[12:48:22][API\API.sln] Publish [12:48:22][Publish] MSBuild [12:48:22][MSBuild] API\API\API.csproj: Build target: Publish [12:48:22][API\API\API.csproj] _DeploymentUnpublishable
我的发布构建步骤是这样设置的:
在我 API 的 Visual Studio 项目中,我可以将其发布到网络上的正确位置。这是我的发布配置文件:
我不确定我错过了什么。我希望发布构建步骤能够像在 Visual Studio.
中单击构建-> 发布菜单项时一样工作我猜我遗漏了什么或者误解了发布构建步骤应该做什么。
感谢任何帮助。
IIRC,从 TeamCity 发布需要某些文件或在构建代理上安装 VS(这确实不值得推荐)。您是否已将必要的文件复制到构建代理?
工件位置定义在哪里。 您可以使用 Tentacles 将构建发布到各种环境中。 我想,您需要查看工件配置。
经过几天又几天的搜索,我终于能够让它工作了。我在
C:\TFS\project\myProject\APIproject>msbuild apiproject.csproj /p:DeployOnBuild=true /p:PublishProfile="Properties\PublishProfiles\DEV.pubxml" /p:VisualStudioVersion=14.0
一旦我得到这个 运行 几次,我就能够在 Team City 中创建一个构建步骤(参见这个
- 构建文件路径:
<location of the apiproject.csproj>
- MSBuild 版本:Microsoft Build Tools 2015
- MSBuild 工具版本:14.0
- 运行 平台:x86
- 命令行参数:
/p:DeployOnBuild=true /p:PublishProfile= "C:\TFS\API\API\Properties\PublishProfiles\DEV.pubxml" /p:VisualStudioVersion=14.0
VS 可能会找到仅包含名称的发布配置文件,例如:
/p:DeployOnBuild=true;/p:PublishProfile=DEV;
如果您 运行 多个构建代理,则非常有用。
如果您要部署到 IIS,您可能需要添加 AllowUntrustedCertificate=true;
您可以使用 MSBuild runner 来部署您的 Application/API
添加命令行参数:
/t:Clean /p:DeployOnBuild=true /t:build /t:publish /p:PublishProfile=C:\_works\teamcity\publishprofiles\Publiush_Profile.pubxml /p:VisualStudioVersion=12.0
PublishPrfile URL 应该是您的发布配置文件路径。
这对你有用。