我查看了AWS CodeBuild文档并以各种形式搜索了这个问题,但没有发现任何相关内容。
我有一个ASP.NET 4 MVC应用程序,它面向.NET Framework 4.5.2。 最重要的是将此应用程序从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应用程序以及如何执行此操作?
答案 0 :(得分:1)
除非最近发生了某些变化,否则AWS CodeBuild仅支持.net Core应用程序,而不支持传统的.net框架。
您可以在EC2实例上安装Jenkins(或其他类似工具)并将其集成到您的流程中,但这需要您自己完成大部分工作。
答案 1 :(得分:0)
Amazon as of May-2018支持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