写点什么

在 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:15737

评论

发布
暂无评论
发现更多内容

mac分屏功能怎么用?mac分屏软件推荐 magnet

理理

Magnet中文版 Magnet破解版 mac分屏功能 Magnet Mac下载 苹果窗口管理软件

软件测试/测试开发丨学习笔记之用户端Web自动化测试

测试人

程序员 软件测试 自动化测试 测试开发 web自动化

写给程序员的可逆计算理论辨析

canonical

开源 低代码 Docker 镜像 可逆计算 Nop平台

深度学习进阶篇-国内预训练模型[5]:ERINE、ERNIE 3.0、ERNIE-的设计思路、模型结构、应用场景等详解

汀丶人工智能

人工智能 自然语言处理 深度学习 文心 ERNIE Transformer

利用springboot初始化机制三种实现策略模式的应用

Java你猿哥

Java spring Spring Boot 设计模式 ssm

大模型全情投入,低代码也越来越清晰

引迈信息

低代码 大模型 JNPF

GPT用于复杂代码生产所需要满足的必要条件

canonical

低代码 GPT GPT-4 可逆计算

ps神经滤镜是干什么的,神经滤镜的功能和作用

理理

ps神经滤镜 PS2023破解 Neural Filters下载 Photoshop2023 Mac

Typora for Mac:一款极简风格Markdown写作软件

理理

Typora破解 Mac软件 Markdown文本编辑器 Typora Mac下载

MySQL Idea 启动主程序 无法识别时区

Andy

MySQL SQL脚本语句加上数据库存在判断

Andy

Redis和MySQL的爱恨情仇!

Java你猿哥

Java MySQL redis ssm 缓存雪崩

QUIC 协议:特性、应用场景及其对物联网/车联网的影响

EMQ映云科技

车联网 物联网 mqtt QUIC

经典智能合约案例之发红包

timerring

区块链

太牛了!在GitHub上“千金难求”的SpringBoot趣味实战课免费分享

Java你猿哥

Java spring Spring Boot ssm SpringBoot实战

智能工厂 | 联合汽车电子有限公司汽车驱动科技上海智能工厂

工赋开发者社区

经典智能合约之智能拍卖

timerring

区块链

MySQL 启动apollo-adminservice 报错 Caused by: java.sql.SQLSyntaxErrorException: Unknown column 'serverconf0_.Cluster' in 'field list

Andy

希尔伯特旅馆里,住着AI的某种真相

脑极体

AI 智能涌现

文心一言 VS 讯飞星火 VS chatgpt (24)-- 算法导论4.2 6题

福大大架构师每日一题

福大大 ChatGPT 文心一言 讯飞星火

C语言编程—枚举

芯动大师

七年老程序员的三四月总结:三十岁、准备婚礼、三次分享

拭心

程序人生 总结思考

Parallels Desktop如何退出账号?PD18虚拟机退出账号方法

理理

Parallels Desktop下载 PD18虚拟机破解 Parallels如何退出账号

StarUML教程:CLI(命令行界面)功能的使用

理理

StarUML教程 CLI(命令行界面) UML软件建模器 StarUML for Mac StarUML Mac破解下载

iOS MachineLearning 系列(20)—— 训练生成CoreML模型

珲少

2023-05-28:为什么Redis单线程模型效率也能那么高?

福大大架构师每日一题

redis 福大大

CSS小技巧使用 font-variation 让文字起飞

南城FE

CSS 设计 前端开发 动画 字体

GitHub星标126K的京东「微服务进阶笔记」首次开源!好评如潮

Java你猿哥

Java 架构 微服务 Spring Cloud ssm

软件测试/测试开发丨学习笔记之Web自动化测试

测试人

程序员 软件测试 自动化测试 测试开发 web自动化

用Python做一个翻译器 | Python小知识

AIWeker

Python 人工智能 python小知识

Git安装和配置教程:Windows/Mac/Linux三平台详细图文教程,带你一次性搞定Git环境

小万哥

git Linux 程序员 后端 C/C++

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