【大咖分享】AI 大模型时代,架构师有哪些机遇和挑战? 了解详情
写点什么

Patcher:实现基础设施即代码持续更新的利器

作者:Claudio Masolo

  • 2023-06-02
    北京
  • 本文字数:1068 字

    阅读完需:约 4 分钟

Patcher:实现基础设施即代码持续更新的利器

Gruntwork发布Patcher 的 Beta 测试版。该工具可以自动保持基础设施即代码的更新,即使有重大更改也没问题。

 

在撰写本文时,Patcher 允许将参考架构CIS AWS Foundation Benchmark 1.4 版本升级到 1.5 版本。该版本引入了 200 多项更改并修复了 3 项重大更改。参考架构是一系列建议和最佳实践,将来自 Gruntwork 的基础设施即代码库组装成 AWS 上的端到端技术栈。Patcher 的目标是让用户可以管理 Gruntwork 基础设施即代码库的所有升级工作,并自动执行一系列的操作。

 

用户可以从 GitHub 存储库安装 Patcher(在撰写本文时,访问其存储库还需要向 Gruntwork 申请)。Patcher 使用 Docker 在沙盒环境中执行升级。

 

安装完成后,要升级 IaC 存储库,Patcher 会执行以下步骤:

  • 查找依赖项更新

  • 应用更改的补丁

  • 检查更改

  • 部署

 

Patcher 使用以下命令查找并更新依赖项:

patcher upgrade
复制代码

 

该工具会分析源代码并自动发现依赖项、每个依赖项的版本,以及是否有新版本。在下面的示例中,Patcher 发现了一些需要升级的依赖项。



Patcher如何显示需要升级的依赖项

 

Patcher 允许维护人员定义一个补丁,指定如何转换代码以完成重大更改。应用于代码的补丁通过 YAML 文件描述。Patcher 会执行 YAML 代码中定义的步骤。那些步骤可能是任意命令。例如,tflint(一种强制执行与安全组相关的新建议的方法)的补丁可以指定为:

name: "Add tflint hook to Terragrunt configuration for CIS compliance checks"author: Gruntwork <gruntwork.io>image: gruntwork/patcher_bash_env:v0.0.12steps:  - name: "Create tflint configuration"    run: create_tf_lint_config.sh  - name: "Add to the root terragrunt.hcl a hook for tflint"    run: add_hook.sh
复制代码

 

Patcher 在已定义的 Docker 镜像中执行升级。这使得代码可移植,并且能够通过限制镜像可以查看的内容和执行的操作来保证用户的安全。当 Patcher 升级完成后,它会显示应用的所有补丁的摘要信息。这样,用户就可以查看更改并应用它们。

 

可以使用 git diff 进行检查,因为 Patcher 会将所有的更改都保存在本地存储库中。然后,用户可以决定提交所有更改,还是进行部分更改。



在Patcher升级后执行git diff

 

在上面的屏幕截图中,作为从 CIS 1.4 到 1.5 升级的一部分,Patcher 做了一些更改,应用了一些补丁。

 

Patcher 的第一个版本专注于支持从 CIS 1.4 到 1.5 的迁移,但 Gruntwork 的愿景是将 Gruntwork 基础设施即代码和参考架构的所有更新都自动化。

 

原文链接:

https://www.infoq.com/news/2023/04/patcher-iac-upgrade/


相关阅读:

谷歌发布云基础设施可靠性指南,帮助消费者做出正确决策

Medium的Kubernetes基础设施

2023-06-02 08:002947

评论

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

恒源云(Gpushare)_自动化训练小技巧白送给你,不要吗?

恒源云

OSS SSH hy-tmp

腾讯二面:Linux操作系统里一个进程最多可以创建多少个线程?

Java全栈架构师

Linux 程序员 架构 面试 操作系统

hash,bloomfilter,分布式一致性hash

Linux服务器开发

分布式 hash 后端开发 Linux服务器开发 C++后台开发

详解离线数仓和实时数仓的区别

五分钟学大数据

4月月更

TiDB源码系列之沉浸式编译TiDB

TiDB 社区干货传送门

ironSource 发行解决方案 Supersonic 两周年,游戏全球下载量突破 20 亿

Geek_2d6073

【高并发】一文秒懂Happens-Before原则

冰河

并发编程 多线程 协程 异步编程 精通高并发系列

记一次CPU持续增长的问题解决

BUG侦探

Python py-spy CPU增长问题

百度程序员开发避坑指南(3)

百度Geek说

前端

百度工程师教你快速提升研发效率小技巧

百度Geek说

前端

使用ORM与原始SQL的性能对比

杨彦星

Python MySQL sanic

ArduBee|开源技术背后的创新

科技热闻

数据挖掘:针对小样本与不均衡样本的机器学习算法实践

鲸品堂

数据挖掘

四川数字经济发展分析:四川21市州数字经济发展活跃度解密

易观分析

数字化转型 数字化经济

多个私有云设施管理用什么云管理软件好?

行云管家

云计算 私有云 云管理 多有云

百度程序员开发避坑指南(移动端篇)

百度Geek说

移动端

科创中国开源创新榜单发布,EMQX 获评“年度优秀开源产品”

EMQ映云科技

开源 物联网 IoT emq emqx

搭建一个可视化看板,仅需4步

阿里云云效

云计算 阿里云 看板 研发团队 可视化看板

VNC中文是什么意思?全称是什么?

行云管家

运维 服务器 vnc

【技术加油站】浅谈百度智能测试的三个阶段

百度Geek说

测试

恒源云(Gpushare)_炼丹萌新指南,这次错不了!

恒源云

深度学习 GPU算力 算法训练

测试权限

石子头

公司产品手册的编写方法

小炮

企业 产品宣传手册

如何成为更好的AI专业人员?请查收这7条实战经验

Baihai IDP

人工智能 算法 数据科学

问题来了!拔掉网线几秒,再插回去,原本的 TCP 连接还存在吗?

Java全栈架构师

程序员 架构 面试 计算机网络 底层知识

借品牌升级之际,谈一谈技术开发者为什么选择 InfoQ 写作社区

宇宙之一粟

4月月更 InfoQ写作社区2周年

【分享汇总】AIoT开源科技节暨OpenHarmony技术论坛(附链接)

OpenHarmony开发者

OpenHarmony AIoT开源科技节

2022年4月中国数据库排行榜:华为GaussDB 挺进前四,榜单前八得分扶摇直上

墨天轮

数据库 国产数据库 达梦 人大金仓 gbase8a

SVGIcon 组件的构建与使用

全象云低代码

前端 低代码 SVG 低代码平台 图标库

亚马逊云科技 loT 百亿连接力量

亚马逊云科技 (Amazon Web Services)

亚马逊云

STI即将登录Gate.io,我们有哪些期待?

小哈区块

  • 扫码加入 InfoQ 开发者交流群
Patcher:实现基础设施即代码持续更新的利器_软件工程_InfoQ精选文章