硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

在 Amazon EKS 上使用 Jenkins 和 HashiCorp Terraform 实现持续集成(三)

  • 2019-12-20
  • 本文字数:878 字

    阅读完需:约 3 分钟

在 Amazon EKS 上使用 Jenkins 和 HashiCorp Terraform 实现持续集成(三)

使用 AWS Cloud9 修改代码并推送代码更改

让我们使用 AWS Cloud9 推送代码更改,并观察 Jenkins 和 Spinnaker 中端到端的持续集成和持续部署管道的执行情况。打开 AWS Cloud9 并在 messages.properties 文件中将 welcome 更改为 Welcome CI/CD,然后保存文件。



图 20.推送代码更改


在 AWS Cloud9 中打开 shell 终端并运行以下命令:


Bash


cd environment/amazon-eks-jenkins-terraformgit status
复制代码


Bash


git commit  -am "change messages.properties"git push
复制代码


这会将代码更改推送到 GitHub 存储库,从而触发 Jenkins 管道。Jenkins 管道将运行各个阶段,并将 Docker 映像推送到 Docker Hub 注册表。新 Docker 映像的创建将触发 Spinnaker DeployToUAT 管道,这继而会触发 Manual Approval 管道,如下所示。此时,新的代码更改已交付给 Amazon EKS UAT 集群:即实现了持续交付。



图 21.Spinnaker 管道


选择批准作为判断输入,然后单击继续以批准将触发 DeployToProd Spinnaker 管道的代码更改。然后,新的代码更改将部署到 Amazon EKS 生产集群:即实现了持续部署。


打开 Amazon EKS 生产集群的负载均衡器终端节点,您将看到新的代码更改:



图 22.应用程序代码更改

清理

要删除 Jenkins 实例,请在 AWS Cloud9 IDE 内运行以下命令:


Bash


cd environment/amazon-eks-jenkins-terraform/terraform
复制代码


Bash


terraform destroy -auto-approve
复制代码



图 23.Terraform destroy

结论

在本文中,我们概述了在 Amazon EKS 上使用 Terraform 和 Jenkins 配置持续集成平台所需的详细说明。Jenkins 可以与 Spinnaker 集成以构建完整的 CI/CD 管道。在 Spinnaker 中将 Jenkins 设置为持续集成 (CI) 系统,您将可以使用 Jenkins 触发管道、在管道中添加 Jenkins 阶段或在管道中添加脚本阶段。要了解有关 Terraform 的更多信息,请参阅 terraform.io 或 Terraform 文档


Meghan Liese

Meghan Liese 是总部位于加利福尼亚州旧金山的 HashiCorp 的 Terraform 产品营销总监。


本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/continuous-integration-using-jenkins-and-hashicorp-terraform-on-amazon-eks/


2019-12-20 15:15853

评论

发布
暂无评论
在 Amazon EKS 上使用 Jenkins 和 HashiCorp Terraform 实现持续集成(三)_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章