是否可以将AWS CodePipeline与Lightsail一起使用?

问题描述 投票:5回答:3

我一整天都在工作,找不到答案。所以我问你们:是否可以将AWS Pipeline与AWS Lightsail一起使用?

我的目标是将代码存储在CodeCommit中,并使用CodeBuild,CodeDeploy,CodePipeline和S3在Lightsail实例中创建持续部署。

这些是我认为我必须遵循的步骤来完成任务:

[x] setup a Lightsail instance
[x] create an IAM user and set permissions
[x] transfer my repository to CodeCommit
[x] create an S3 bucket to hold the build artifacts
[x] create a CodeBuild project to build the artifacts
[x] create a buildspec.yml file with my build steps
[ ] create a CodeDeploy project to deploy my application
[ ] create a CodePipeline project to trigger the build when I commit to certain branch

如你所见,我几乎就在那里。但我找不到任何方法可以将我的Lightsail实例与CodeDeploy一起使用。所以,我的问题是:它可能吗?有一些限制吗?我想念一些非常基本的东西吗?还有其他方法用Lighsail制作CD吗?对不起,我在这里变得有点疯狂啊哈哈。

amazon-web-services aws-code-deploy aws-codepipeline amazon-lightsail
3个回答
3
投票

今天,2017年8月16日,它们无法集成它们。

asked the same question on AWS forums和他们回答说这些技术尚未整合,因为它们彼此分开。

好吧,我想我必须找到另一种方式。


2
投票

我不是这里的专家,但我认为这样做的方法是使用CodeBuild中的自定义脚本,而不是使用CodeDeploy。

CodeDeploy有很多自定义内容可用于支持回滚和那些高级内容(意味着你必须在目标服务器上安装代理等)。

CodeBuild只是用于运行脚本,所以我认为添加一个部署脚本(在测试后运行)是合理的,它通过SSH连接到Lightsail实例并部署任何已更改的文件(类似于你的工作方式)它在开源中使用Travis CI等)。

具体来说,我已经在npm上使用了dploy包来进行实际的SFTP上传。它是Git-aware所以它只上传自上次修订版以来的更改(但如果你不关心它,你可以只是rsync)。


0
投票

我最近遇到了同样的挑战,并让它发挥作用。

有必要将Lightsail实例注册为CodeDeploy的内部部署实例。在实例本身上,需要安装和配置CodeDeploy代理。

我写了一篇关于如何在my blog上设置它的帖子。

© www.soinside.com 2019 - 2024. All rights reserved.