使用AWS CodePipeline和Jenkins有什么优缺点

Sno*_*ash 7 jenkins aws-codepipeline

使用AWS CodePipeline和Jenkins有什么优缺点?

我无法在interwebs上看到很多信息(除了https://stackshare.io/stackups/jenkins-vs-aws-codepipeline).据我所知,他们如下:

AWS CodePipeline专业人士

  • 基于Web的
  • 与AWS集成
  • 设置简单(基于网络)

AWS CodePipeline缺点

  • 不能用于在本地设置代码库

詹金斯职业选手

  • 独立软件
  • 可用于许多系统(AWS除外)
  • 许多设置选项(例如插件)
  • 可用于在本地设置代码库

人们可以用来做出明智选择的其他主要差异吗?

sat*_*esh 6

使用 AWS CodePipeLine 的另一个缺点是缺乏与 GitHub 以外的源代码控制提供商的集成。我们唯一的其他选择是创建启用版本的 Amazon S3 存储桶并将我们的代码推送到那里。这会在源代码管理和 CodePipeline 之间创建一个额外的层。

此外,没有适当的文档来解释如何将代码推送到 Amazon S3 存储桶,以获取在常用平台(例如 .Net)中构建的代码库。AWS网站中给出的示例处理一些随机文件,这没有任何帮助。

AWS CodePipeLine缺点部分的问题中缺少的另一个条目(微不足道?)是价格。詹金斯是免费的。Gitlab SCM 解决方案现已由 AWS 提供https://aws.amazon.com/blogs/devops/integrating-git-with-aws-codepipeline/

  • 自由的 ?你必须托管它,所以它不是免费的。通常,托管 + 维护的费用将超过每月 1 美元,这是 AWS CodePipeline 的价格。 (18认同)
  • 值得注意的是,Amazon AWS 现在拥有 CodeCommit,它与 CodePipeline 集成作为源代码控制提供商。 (3认同)

小智 5

CodePipeline 是一个持续的“部署”工具,而 Jenkins 更像是一个持续的“集成”工具。

持续集成是一种 DevOps 软件开发实践,开发人员定期将他们的代码更改合并到一个中央存储库中,然后运行自动构建和测试。

通过持续部署,代码更改会自动构建、测试并发布到生产环境。持续部署通过在构建阶段之后将所有代码更改部署到测试环境和/或生产环境来扩展持续集成。

参考资料:
https : //aws.amazon.com/devops/continuous-integration/
https://aws.amazon.com/devops/continuous-delivery/

  • 这个答案在当时可能是准确的,但现在肯定不太正确了。CodePipeline 允许链接不同的 CodeBuild 阶段,这些阶段可以执行集成 - 构建、测试、集成测试、部署到预生产和生产阶段。也就是说,CodePipeline 缺少 Jenkins 通过插件实现的许多功能 - 部署回滚、将部署推迟到特定时间窗口等等。 (2认同)