DevStream v0.1.0 发布, 玩转 DevOps 工具链从未如此简单

小逸-学习中 2022-03-17 14:29:42

写代码以外,还有很多头疼事

假如你现在成立一家公司,或者更具体一点,你要组建一个研发团队,在开始写代码前你需要做哪些事情?

有些繁琐又重复,让人头疼的事情是绕不开的,比如:

  1. 你需要选择一个地方来存放代码,也许是 GitHub,也许是 GitLab;
  2. 你需要一个工具来完成项目管理或者说需求管理、Issue 管理等等工作,也许你会选择 Jira 或者禅道或者 Trello;
  3. 你需要选择一种开发语言,选择一个开发框架,比如你决定用 Golang 来开发,假如这是一个 web 项目,你需要考虑 web 框架用什么?“第一行”代码怎么写,也就是第一个脚手架怎么组装;
  4. 然后你需要配置一些 ci 自动化,比如 GitHub 上添加 actions 来完成代码的扫描、测试等等;
  5. 当然 cd 工具也不能少,不管你选择 Jenkins 还是 ArgoCD;
  6. 如果 cd 完成了,接下来可能你马上要开始纠结日志、监控、告警等等方案应该怎么定了
  7. 如果想得更多,或许你希望 GitHub 上别人给你提的 issue 能够自动同步到你的 Jira 或者 Trello……
  8. ……

也许我上面说到的例子并不完整或者绝对准确,但是有一个结论我们必须接受:在一个软件的开发生命周期中,除了业务代码编码本身,在 DevOps 工具链上我们需要花费大量精力去选型、打通、落地、维护……

 

开源 DevOps 工具链 vs 一站式 DevOps 平台

我们可以选择在某个云厂商手里购买一个一站式 DevOps 解决方案,只要钱够,基本就不用操心运维的问题了。这时候你可能会遇到的最大的问题就是“灵活性”不足,没有一个云厂商愿意为了你的定制化需求去修改这个“一站式 DevOps”里的任何一个环节。比如你觉得自己公司的持续集成环节特别牛,但是怎么集成进去呢?当然“钱够”也只是一个假设,或许最大的问题是“没钱”。

我们也可以选择开源的 DevOps 工具,自己落地,搭建一条灵活的工具链,只要有足够的人力来维护(可能需要几个很资深的工程师才能玩转整条工具链)。这时候可能会遇到的最大的问题就是“人力”和“经验”不足,要自己搞清楚每个环节的“最佳实践”并不是一件容易的事情。免费、灵活,但是落地难,维护难,这也不是最佳方案。

所以我们想要有开源 DevOps 工具链的灵活性,可以自由替换其中任意一个工具;我们也想要有一站式 DevOps PaaS 服务的便利性,不用自己投入人力物力去研究去慢慢落地。

所以你还有第三种选择,就是找一个能够“自动化管理开源 DevOps 工具链”的工具,让它来实现一个“节约人力”又“灵活高效”的 DevOps 平台。

没错,DevStream 做的就是这件事:解决开源 DevOps 工具落地的难点,搞定开源 DevOps 工具链之间打通的痛点,解放研发团队的生产力,让大家少在 DevOps 工具上踩坑,腾出更多的精力在自己的业务逻辑上。

 

DevStream v0.1.0 目前能干什么?

  1. 缺陷、需求管理 - Trello (集成 GitHub)
  2. 源码管理 - Golang 脚手架生成
  3. CI 流程 - Golang、Python、Nodejs
  4. CD/GitOps - ArgoCD / ArgoCD App
  5. Monitoring - kube-prometheus
  6. ……

当然当你打开 DevStream 的项目主页时,或许在 Releases 页面里会惊奇地发现我们已经发布了 v0.2.0 或者更新版本了,那么不需要犹豫,请直接下载最新版本来体验,让历史成为历史。

 

能不能更直观一点?

👇 DevStream Demo 视频

https://www.bilibili.com/video/BV1wq4y147T1/

 

你想问 DevStream 的将来?

或许用不了多久,我们就能完整实现 “DevOps toolchain as code”,那时候你的整个 DevOps 工具链都能以 DevStream 作为唯一入口来运维,dtm(DevStream 命令行工具)将成为你的整条 DevOps 工具链的 “single source of truth”。当然那时你需要替换整个 DevOps 工具链中的某一个环节,也会变得很简单。

其实目前我们已经部分实现 “single source of truth”,部署好的工具发生的部分变更已经能够被 dtm 感知到,并且 dtm 会判断这种变更是否合理,是否需要修复,进而采取相应的动作让整个 DevOps 工具链变得更可靠。

 

怎么参与 DevStream 社区?

当然,DevStream 的发展离不开社区用户的支持,DevStream 欢迎所有人参与社区建设,一起完善 dtm 的功能,让 dtm 越来越强大!

不要有任何心理负担,只要打开 GitHub,找到 merico-dev/stream 项目,README 里有详细的介绍。反正就是非常欢迎大家下载、体验、捉虫、提 Issue、挑刺、bugfix 等等等等。

如果您有任何建议或疑问,可以加入Discord 或 点击merico-dev/stream->Readme->DevStream用户微信群,与 DevStream 开发者沟通。

...全文
962 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-01-13
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-云原生 发布问题, 以便更快地解决您的疑问
Oracle Instant Client 11.2.0.1.0是轻量级Oracle客户端,用于连接访问Oracle 9i、10g、11g 11.2.0.1.0版本的Oracle数据库。 Oracle Instant Client11.2.0.1.0 安装程序包含OCI/ OCCI、JDBC-OCI SDK(软件开发工具包),软件开发时所需的全部头文件和接库。 此版本不支持 Pro*C/C++和.NET程序所需的Oracle Provider for OLE DB,如需支持上述功能,请访问并下载ODAC(Oracle Data Access Components,其包含 ODP.NET, Oracle Services for MTS, Oracle Providers for ASP.NET):  http://www.oracle.com/technetwork/database/windows/downloads/utilsoft-087491.html  http://www.oracle.com/technetwork/cn/database/windows/downloads/index-101312-zhs.html 此版本集成了Oracle 11g 11.2.0.1.0中的实用工具tnsping、exp/imp,支持 Object Browser、TOAD等 Oracle 管理工具,并在Windows XP、Windows Vista、Windows 7平台下测试通过。 注意: 1. 请勿使用高版本的exp/imp工具对低版本的Oralce数据库进行导出,导入操作。 2. 安装完成后需手工配置 %TNS_ADMIN%\tnsnames.ora 文件,内容如下: ??? = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = xxxxxx) ) ) 1. 将 ??? 改为任意名字,这个名字将在你的程序或程序配置中用到。 2. 将 xxx.xxx.xxx.xxx 改为要连接的 Oracle 服务器的机器名或IP地址。 3. 将 xxxxxx 改为要连接的 Oracle 服务器的 SID,如不知道 SID,请询问安装 Oracle 数据库的管理人员。 相关网站: Oracle Instant Client 主页 http://www.oracle.com/technetwork/database/features/instant-client/index-100365.html Oracle Instant Client 常见问题 http://www.oracle.com/technetwork/database/features/oci/ic-faq-094177.html#A3661 SQL*Plus http://download.oracle.com/docs/cd/E11882_01/server.112/e16604/apd.htm#sthref3169 SDK: OCI(Oracle Call Interface) http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10646/oci01int.htm#i423362 OCCI(Oracle C++ Call Interface) http://download.oracle.com/docs/cd/E11882_01/appdev.112/e10764/install.htm#CACFFGHF 如需源码或技术支持: Email: gosearcher@gmail.com

62

社区成员

发帖
与我相关
我的任务
社区描述
专注软件研发效能和软件工程领域,干货资讯与实践经验分享
软件工程经验分享 企业社区
社区管理员
  • 思码逸研发效能
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧