Buddy 自建企业版的使用体验
如果你也想试试 buddy,可以看这篇文章节省时间
这篇文讲什么?
介绍 Buddy on-premises 的使用体验:
- 我是如何安装的。
- 做了哪些配置。
- 怎么使用
这篇文对谁有用?有什么用?
对谁有用?:想用 Buddy 搭建 CI/CD 或其他自动化工作流的人。
有什么用?:节省时间
介绍
Buddy 是一个帮助自动化测试和部署 (CI/CD) 的工具
正文
Buddy 免费版是1个月120次 execution
然后它们提供一个自建选项,就是装在自己的机器上。30天试用
我因为刚好手头有一个 Azure 的免费试用。就打算用下图这台机器装一下试试
装的是 Linux 版
安装倒也简单,跑一条命令就够了。
安装等了可能有10分钟。
有个小问题是 ip 地址写错了,
给我返回的是 http://10.0.0.6 让我访问(大概是这个地址,不记得了)
这个显然不行
所以只能跑如下命令:
sudo buddy stop
sudo buddy configure
然后把 Azure 那个外网 IP 填进去:137.117.103.40
好像最后一步是 sudo buddy start 再开起来
Buddy 的安装就此完成
接下来是使用部分
代码仓库的部分我选的是 Github。需要做一定配置。
要去这个网址:https://github.com/settings/developers
新建一个应用
然后把 Github 这里的 Client ID, Client Secret 填到 Buddy 里面去
填入 Buddy
以上,Github 配置部分就完成了
Buddy 现在可以从你的 Github 账号上拿到代码了。
正式使用
我新建了一个 Ruby on Rails 5.2.2 项目用来测试。
在 Github 上面叫 rails-buddy-cd。
在 Buddy 里面新建项目就也叫同名了。
目前只有一个动作,就是用 Dockerfile 构建镜像然后推送到 Azure
我配置到推送到 Azure 的 Container Registry
账号密码你需要在 Azure 这边找一下,如下图:
我这里很快就成功了。
补充1:镜像命名
-
Docker 镜像的 name 和 tag 可以手写。
可以看到推到 Azure 上就是这样的:
-
也可以用环境变量来控制 name 和 tag。
比如 Buddy 有如下环境变量。
然后 name 和 tag 这里写
可以看到推上去之后就是分支和 commit 名字。
因为 Github 上就是这样的:
补充2:如何回滚?(rollback)
有时候做错事情了可能需要回滚到上一个版本。
https://buddy.works/knowledge/deployments/how-deploy-specific-revision-to-server
这个链接里的文档有说,其实就是在跑的时候选就行了,如下图:
点击这里
选一个 commit
然后运行就行了。
补充3:如何手动确认?
有时候你可能不想要全自动的流程。希望某个步骤要手动确认下。
比如部署需要手动确认。
那么可以加一个 "Waiting for approve" 的 Action。
可以看到下图这里就2个 Action。先 build 镜像然后等待 Approve。
在这里只是举例子,所以并没有什么卵用。Approve 后面没有任何动作。
可以看到 build 之后会提示需要 Approve
点击之后是这样的:
确定之后就完成了:
这个信息你可以任意设置