如何配置 AWS CodeBuild 来构建 ASP.NET 4 个应用程序
How to configure AWS CodeBuild to build ASP.NET 4 application
我查看了 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 存储库中提取代码并构建 ASP.NET 4 以 .NET Framework 为目标的应用程序以及如何执行此操作?
除非最近发生了某些变化,否则 AWS CodeBuild 仅支持 .net Core 应用程序,不支持传统的 .net 框架。
您可以在 EC2 实例上安装 Jenkins(或其他类似工具)并将其集成到您的流程中,但这需要您自己完成大部分工作才能使其正常工作。
Amazon,as of May-2018, supports Windows hosts. Combine that with the 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
我查看了 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 存储库中提取代码并构建 ASP.NET 4 以 .NET Framework 为目标的应用程序以及如何执行此操作?
除非最近发生了某些变化,否则 AWS CodeBuild 仅支持 .net Core 应用程序,不支持传统的 .net 框架。
您可以在 EC2 实例上安装 Jenkins(或其他类似工具)并将其集成到您的流程中,但这需要您自己完成大部分工作才能使其正常工作。
Amazon,as of May-2018, supports Windows hosts. Combine that with the 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