使用 TeamCity for .NET Core 2.0 创建 .nupkg

Create .nupkg with TeamCity for .NET Core 2.0

我正在尝试将 TeamCity 和 Octopus Deploy 用于构建在 .NET Core 2.0 上的解决方案的 CI/CD 过程。我在正确配置 teamcity 中的构建步骤时遇到问题,因为我没有创建任何包。我正在使用 TeamCity 的 .NET Core Plugin 和相应的步骤:

我还包含了一个 'OctopusDeploy Package' 步骤,但是由于没有生成包,所以这一步什么都不做。

该项目不包含项目的任何 .json 文件(只有一些配置文件),但包含 .csproj 文件。我是整个 CI/CD 过程的新手,但我已经使用 octopack 成功地为 .NET Framework 4.6.1 解决方案实现了它。

知道如何解决这个问题吗?非常感谢任何反馈。

我已经成功地使用 octo.exe tool.

将其打包成 *.zip 包文件

所以我按照 TC 构建步骤在 Octopus 中构建版本:

  1. Dotnet Restore - .NET Core (dotnet) - 恢复 NuGet 包
  2. Gulp(可选)- Gulp - 运行 gulp 任务
  3. Dotnet 测试(可选)- .NET Core (dotnet) - 在测试项目中运行测试
  4. Dotnet 构建 - .NET Core (dotnet) - 构建项目
  5. Dotnet Publish - .NET Core (dotnet) - 将项目发布到指定的输出目录
  6. * Octo Pack - 命令行 - 使用以下命令执行 'octo.exe' 命令行工具 octo pack --id %PackId% --version %PackVersion% --basepath %PackDirectoryPath% --format zip --outfolder %ArtifactsDirectoryPath%
  7. Octo Push - OctopusDeploy: Push packages - 将打包的文件推送到 Octopus 内置包存储库
  8. Octo 创建发布 - OctopusDeploy:创建发布 - 在 Octopus 中创建发布,其中包含所需的包

* 显然你应该在 TC 代理服务器上安装 octo.exe 工具并将其添加到 PATH 变量以便能够从 TC 构建中调用它。

现在使用 DotNet Core,您不必执行所有这些设置。

可以在构建步骤中生成 Nuget 包。

遵循这些简单的步骤

  1. 右键单击项目 (.csproj) 和 select 属性
  2. 在属性屏幕上,select 右侧菜单中的包选项卡并勾选 (select) 在构建时生成 NuGet 包。
  3. 输入基本包设置,如包 ID、版本、作者和 等(应该自动填充)
  4. 保存

    运行 在 TeamCity 上构建一个,之前使用简单的 dotnet 构建步骤 进入下一步。

  5. 转到 Team City 项目构建设置

  6. Select 常规设置,在 工件路径 select 树图标上并导航到 Bin\Release 文件夹,你会在那里看到你的 Nuget 包。 Select 该文件并保存。

运行 在 Team City 中再次构建,成功完成构建后,您将在工件中看到 NuGet 包文件。

希望这对您有所帮助,因为您可以看到不需要 Octopus Pack 或 Dotnet Pack 步骤