1

我查看了 AWS CodeBuild 文档并以各种形式搜索了这个问题,但没有找到任何相关的内容。

我有一个面向 .NET Framework 4.5.2 的 ASP.NET 4 MVC 应用程序。最大的想法是将这个应用程序从 git 存储库自动部署到几台 Windows 机器上。

我有使用 AWS CLI 和 AWS CodeDeploy 来构建应用程序并将其从我的开发机器部署到我们的服务器的脚本。这些脚本工作正常。

下一步,我不知道该怎么做,是使用 AWS CodeBuild(或者我应该使用其他 AWS 东西或不使用 AWS 东西)以便从 git 存储库中提取代码并运行我的构建脚本(不是在我的开发机器上)。但似乎 CodeBuild 只能与 Unix/Linux 环境一起工作,而不能与 Windows + .NET Framework 一起工作。

问题是:有没有办法使用 CodeBuild 或其他 AWS 服务从 git 存储库中提取代码并构建针对 .NET Framework 的 ASP.NET 4 应用程序以及如何执行此操作?

4

2 回答 2

3

亚马逊,截至 2018 年 5 月,支持 Windows 主机。将它与Microsoft .NET Framework Build Image结合起来,我就可以让它工作了。这是一个初步的 buildspec.yml 开始使用:

version: 0.2

# Assumes the image is microsoft/dotnet-framework:4.7.2-sdk or similar
phases:
  install:
    commands:
      # Below is the URL for the MSI linked from https://www.iis.net/downloads/microsoft/web-deploy
      - Invoke-WebRequest -OutFile WebDeploy_amd64_en-US.msi https://download.microsoft.com/download/0/1/D/01DC28EA-638C-4A22-A57B-4CEF97755C6C/WebDeploy_amd64_en-US.msi
      - msiexec /i WebDeploy_amd64_en-US.msi /quiet
      # MSIExec will return before it is actually done - 30s seems to work...
      - Start-Sleep 30
  pre_build:
    commands:
      - nuget restore
  build:
    commands:
      - msbuild /P:Configuration=Release /T:Build,Package
于 2018-12-10T03:13:52.337 回答
1

除非最近发生了变化,否则 AWS CodeBuild 仅支持 .net Core 应用程序,而不支持传统的 .net 框架。

您可以在 EC2 实例上安装 Jenkins(或其他类似工具)并将其集成到您的流程中,但这需要您自己完成大部分工作以使其正常工作。

于 2017-09-13T21:02:00.793 回答