惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
T
The Exploit Database - CXSecurity.com
V
Vulnerabilities – Threatpost
Know Your Adversary
Know Your Adversary
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
N
News and Events Feed by Topic
Spread Privacy
Spread Privacy
Application and Cybersecurity Blog
Application and Cybersecurity Blog
S
Secure Thoughts
G
GRAHAM CLULEY
Google Online Security Blog
Google Online Security Blog
Help Net Security
Help Net Security
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
O
OpenAI News
Google DeepMind News
Google DeepMind News
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Security Archives - TechRepublic
Security Archives - TechRepublic
L
LINUX DO - 最新话题
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Stack Overflow Blog
Stack Overflow Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
L
Lohrmann on Cybersecurity
H
Hacker News: Front Page
W
WeLiveSecurity
P
Privacy International News Feed
Forbes - Security
Forbes - Security
月光博客
月光博客
PCI Perspectives
PCI Perspectives
T
Tailwind CSS Blog
N
News and Events Feed by Topic
T
Threat Research - Cisco Blogs
Engineering at Meta
Engineering at Meta
F
Full Disclosure
AI
AI
Hacker News - Newest:
Hacker News - Newest: "LLM"
Schneier on Security
Schneier on Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
D
Darknet – Hacking Tools, Hacker News & Cyber Security
V
Visual Studio Blog
The Hacker News
The Hacker News
博客园 - 叶小钗
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
博客园 - 司徒正美
T
The Blog of Author Tim Ferriss

DevOps

复制企业级 Linux 开发环境:如何实现严格开发环境与生产环境一致性的基础架构策略 - V2EX 带有账密的 ISP 住宅代理,海外服务器请求正常, macOS 本地 curl 持续失败 A lock-file-based plugin manager for Jenkins 从 2022 年至今, DevOps 技术栈有什么新的发展吗 oracle 1U1G 机器能吗? 各位都是怎样优雅的 pull 容器镜像的 Gisia 新版发布,增加看板功能,欢迎提意见 内部做一个新的环境,在更新生产环境前先把生产服务等先在这个服务上过一遍,确认没问题后再上生产,这个环境叫什么环境?这种流程叫什么流程? 使用 containerd 配置镜像加速不生效问题 一个 Jenkins 技术问题,要被搞疯了 推荐一款轻量级 DevOps 平台 tg 上运维/sre/devops 相关的交流群 有哪些能满足要求的 DevOps 平台? 国内参加 CKA/CKAD 考试有无推荐的代理提供商 关于 Java 项目的健康检查、自愈和轻量级管理 drone 构建一直卡住,心力憔悴 [Terraform/腾讯云] 有用 Terraform 来管理腾讯云的朋友吗,它这个频率限制真的没问题吗? 遇到一点证书问题,望运维大佬给看看 - V2EX 关于 CMDB 如何保证数据一致性的讨论 Red Hat Access 文档下载求助 各位 Linux 运维的巨佬工作用 mac 吗 - V2EX 在单服务器搭最小规模的 CICD 的技术栈是什么 - V2EX 遇到一个 Redis 跨 VPC 读取的问题 好奇 Linux 运维 修改配置一般有做版本控制吗 - V2EX 私有化 SaaS 系统应该支持随便换域名吗 - V2EX 请教一个关于容器化部署的问题 官方 helm charts V.S. bitnami helm charts V.S. 官方 operator,大家一般倾向于用哪个? terraform 原理的一点儿思考 私有化部署太难搞了 - V2EX Google SRE 的 on-call 方法和工具 开发转做运维开发,有什么需要注意的?需要额外学习和掌握什么? 开源 CMDB 新增支持多种认证方式: CAS、OAuth2.0、OIDC,并已兼容测试 casdoor 很好奇还有没有类似 Jenkins 的 配置 Freestyle 项目的 CI/CD 工具 坚持为「专业性」买单,就是最大的降本增效! KCL 社区最新动态速递 | IDE 插件支持引用查找和重命名、CNCF ArtifactHub KCL 集成 - V2EX cmdb vs rpa ? 国内有没有类似 FreeIPA 和 Keycloak 的产品? 求推荐一个可以管理多个 Linux 系统的平台 ipv6 访问 docker 最优雅的姿势是啥? 私有化部署术语大家一般用 self-host(及其变种)还是 on-premise? 上线时需要将迭代期内的各种配置改动同步到生产环境,有没有好用的配置备忘录的工具? 有没有数据库 CICD 方面比较好的实践 Nexus Repository 3 权限管理思路, LDAP 集成与单点,助力 CI/CD 加速 sonarqube 与 gitlab 的账号单点认证与项目集成详解 如何设置 azure devops 上 创建的 pull request 在满足某些条件时, 自动能够完成合并到目标分支 jenkins pipeline 如何在 stage3 错误的时候,返回 stage2 重新执行 4 位硬科技创始人对谈 DevOps 硬件实战 jenkins 如何在一个任务中创建多个构建触发器,并且每个构建触发器对应的步骤是不同的 Unity 单元测试和 Gitlab 自动化集成示例 怎么做好运维 Windows Server 如何做 CI/CD?
大家的 CI 都是怎么搭建的?
justdoit123 · 2024-02-04 · via DevOps

这是一个创建于 860 天前的主题,其中的信息可能已经有所发展或是发生改变。

最近感觉 jenkins 的 pipeline 写烦了,调试起来也比较麻烦。

突然感觉,CI 过程及其配置管理依赖工具的 DSL 不太好。哪天要把 jenkins 的 CI 迁移到 github action 上,又要重写。

之前我们的部分 CI Job 的工作会有一些 python 脚本(使用 python 是因为主要开发语言是 python )来处理,而 jenkins 或者 github action 负责调用,以及传入一些环境变量、security 配置。 像这种 job ,在不同 CI 工具间切换,会比纯 jenkins pipeline 的好迁移。

如果把这种 Job 的形式进行到底,像这样:

  • CI job 由团队熟练的开发语言来实现,抽离一些公共模块出来复用
  • CI 所需要的 security 配置加密到代码里,使用类似 sopstranscrypt 方案
  • jenkins/github action 这类工具负责解密配置,以及调用 ci 工具

不知道这样的方案如何? 很想知道各位的 CI 方案是什么样子的?有什么想法。

FlytoSirius

1

FlytoSirius      2024 年 2 月 4 日

不论如何, 把 sensitive 的配置加密到代码里都不是首选方案吧.

把这些 sensitive 配置 抽取为输入变量 , 并转换为 自动从环境变量取值, pipeline 中由 jenkins/github actions 等从自身的 secret 或第三方 secret manager 获取 secret 并注入到 运行时环境变量 来实现相应配置的赋值, 这样才是一般比较广泛使用的平衡了安全性与复杂度的方案吧.

nightwitch

2

nightwitch      2024 年 2 月 4 日

在 CI 的描述语言里直接写代码就是邪路啊,既不方便管理也不方便迁移。
不都是写在各种 bash / python / powershell 这种脚本里,然后 ci 只负责调用和设置环境变量么

FlytoSirius

3

FlytoSirius      2024 年 2 月 4 日   ❤️ 1

关于: 是应用 CI 自身的模块来编写更原生化的 pipeline, 还是使 CI 基本仅负责调用,组织和粘合 shell/python script 的执行.
我个人倾向于后者, 确实是会更方便在多种 CI 工具之间迁移.

CivAx

4

CivAx      2024 年 2 月 4 日

密码有个叫 sealed secret 的工具,可以以加密形式在代码中直接储存密钥,然后在 k8s 中再还原为 secret

sc3263

5

sc3263      2024 年 2 月 4 日

@FlytoSirius 前几天刚把 CI 从 Jenkins 迁移到 Gitlab Pipeline 上。迁移的时候做了亿点点改造,改完之后基本和你说的一样,CI 仅负责基本调用,主要逻辑都在 Python 中实现。
Gitlab Pipeline 被触发后,设置一系列的环境变量,调用 Python 脚本。在 Python 脚本里做真正的工作:解析环境变量,编译,跑单测、归档啥的。
这样本地开发调试脚本也方便,后续迁移 CI 平台也更容易。

hez2010

6

hez2010      2024 年 2 月 4 日

我们的构建脚本全都拿 PowerShell 写的,CI 只是负责传递参数和调用,所以无论迁移到哪个平台都很简单。

justdoit123

7

justdoit123      2024 年 2 月 5 日

原来大家都是不依赖 CI 工具的语法写 CI Job 的~~

@FlytoSirius 关于 secret ,至少我感觉 Jenkins 里的 secret 不是很好用。才萌生了把配置放入加密代码中的想法。

@CivAx 谢谢~ 我去了解下。

FlytoSirius

8

FlytoSirius      2024 年 2 月 5 日

@justdoit123

Jenkins 里的 secret 管理确实不是很好的选择, 但也胜过记录"加密"过的密码在代码里, 再在 pipeline 里"解密". 这种方式实质还是把密码保存在了 git repo 里, 是尽量要避免的.

要是用 GitHub Actions 的 CI/CD, secret 也不会在多个途径使用的话, GitHub 里的 Secret 管理也是可靠的.

但一般生产环境, 一个第三方的 secret 管理工具[SaaS 或 self-host]还是需要的.
HashiCorp 的 Vault 就是很好的选择, 能 SaaS, 也能公司自己 self-host, 国内国外都用得很广泛, 第三方支持也很广泛. 各种 CI/CD 工具基本都支持动态从其中获取 secret.

shimada666

9

shimada666      2024 年 2 月 5 日

我的做法:jenkins pipeline + nacos
为什么不上 k8s secret/config 而用 nacos:项目小,方便

guanzhangzhang

10

guanzhangzhang      2024 年 2 月 5 日

makefile 或者 justfile 实现具体细节,比如文件拷贝和编译
ci 主要是利用平台的权限拉取代码,和最终的上传到制品库,运行是传入参数啥的调用 makefile 之类的,这样迁移成本小

CivAx

11

CivAx      2024 年 2 月 5 日

@FlytoSirius #8 Bitnami Sealed Secret 就是为了解决如何把加密过的密码(或任何 secret )放在 git repo 里诞生的,解决 "I can manage all my K8s config in git, except Secrets." 的问题。Sealed secret 使用证书生成加密过的 secret.yaml 便于安全存放在 git repo 中,在 apply 到 k8s 集群后通过 controller 解密为正常 base64 enc 的 secret 。

shanch

12

shanch      2024 年 2 月 5 日

确实有这种问题,用 pipeline 迁移不好弄,我们现在基本上全是用 bash 写的脚本,然后通过 jenkins 传入环境变量

seekafter

13

seekafter      2024 年 2 月 5 日

我自己的项目用的 drone,凑活能用

dddd1919

14

dddd1919      2024 年 2 月 5 日

用 gitlab 的话当然首选 gitlab ci ,不仅方便,而且还有 gitlab 自带的 ci/cd 标签,可以放在 readme 里,这精美小标签反正我是没法拒绝

itabas016

15

itabas016      2024 年 2 月 5 日 via Android

试试 teamcity ,UI 好看,前段时间从 jenkins 全部切到了 teamcity

ZZ74

16

ZZ74      2024 年 2 月 5 日

jenkins 支持在它界面里配置密码这些 ,k-v 形式。pipeline 里面用 key 去获取。不过可能是商业版才有

defunct9

17

defunct9      2024 年 2 月 5 日

shell 打倒一切

79lawyer

18

79lawyer      2024 年 2 月 5 日

我们是自己开发的平台,调用 Jenkins 的 API 做打包发布,没有使用 Jenkins pipeline ,更适合自己公司的场景吧

zzzzzzZ

21

zzzzzzZ      2024 年 2 月 5 日

物理 secret+物理 yaml+脚本 「环境变量」「配置」「物理文件」基本上都给脚本和 yaml 做

文件夹管理方便物理迁移,jenkins 只执行任务流,管理一些版本号之类的自定义配置。动态配置交给 nacos

sampeng

22

sampeng      2024 年 2 月 5 日

gitlab 纯跑 ci 。cd 自研中。。
受够了 jenkins 那个破 ui 还有非常不自然的逻辑了

woncode

23

woncode      2024 年 2 月 5 日 via Android

@defunct9 原来 teamcity 有免费的自托管版本,之前还一直必须收费呢,下次试试!我也受不了 Jenkins 那上古的 ui ,相信 jetbrain 家的产品品质应该会没问题

xuebing

24

xuebing      2024 年 2 月 5 日

国内制造业,Tekton+自研 UI ,不管是原来用的 Drone 的还是现在 Tekton ,针对每个 Step 就做参数变量化的管理,目的就是可移植且更容易推进各业务 IT 的 CI 标准化

fsdrw08

25

fsdrw08      2024 年 2 月 5 日 via Android

可以考虑 drone 或者其开源代替,woodpecker ,Jenkins 管理起来比较麻烦,可以作为第二选择