65 lines
1.6 KiB
Markdown
65 lines
1.6 KiB
Markdown
# 客户侧组件安装包构建、发布流程
|
||
|
||
## 第一步:配置版本和组件
|
||
|
||
首先搞定配置文件:
|
||
|
||
1. 把 `.checklist.example` 重命名成 `checklist`
|
||
2. 把 `.VERSION.example` 重命名成 `VERSION`
|
||
|
||
### checklist 文件格式
|
||
```
|
||
# 组件名称 目录路径 版本号 [依赖组件] [安装顺序]
|
||
dcgm-exporter-installer /path/to/dcgm-exporter-installer 1.1.0
|
||
node-exporter-installer /path/to/node-exporter-installer 1.1.0
|
||
```
|
||
|
||
### VERSION 文件
|
||
设置需要发布的版本号,比如 `1.29.0`
|
||
|
||
> 建议用 `version-manager.sh` 来管理版本
|
||
|
||
## 第二步:构建安装包
|
||
|
||
直接跑脚本:
|
||
```bash
|
||
./package_artifact.sh
|
||
```
|
||
|
||
构建完的东西会放在 `artifact/` 目录下,按版本分文件夹。
|
||
|
||
如果版本已经存在了,想要覆盖重新构建:
|
||
```bash
|
||
./package_artifact.sh --force
|
||
```
|
||
|
||
构建完可以手工测试安装包。
|
||
|
||
## 第三步:发布安装包
|
||
|
||
用这个脚本发布:
|
||
```bash
|
||
./publish_artifact.sh
|
||
```
|
||
|
||
发布后的内容在 `publish/` 目录里,包含:
|
||
- 压缩版本的安装包
|
||
- 一键安装的bash脚本
|
||
|
||
## 第四步:部署到FTP服务器
|
||
|
||
把发布的内容上传到FTP服务器,客户端就可以通过一键命令安装:
|
||
|
||
```bash
|
||
curl -fsSL 'ftp://{$USER}:{$PASSWD}@{$your-ftp-server}/setup.sh' -o setup.sh
|
||
|
||
# root用户直接执行,非root用户需要使用sudo
|
||
chmod +x setup.sh
|
||
bash setup.sh --server {$your-ftp-server} --user {$USER} --password {$PASSWD}
|
||
|
||
示例:
|
||
curl -fsS 'ftp://ftpuser:ZGClab1234!@177.177.70.200/setup.sh' -o setup.sh
|
||
chmod +x setup.sh
|
||
bash setup.sh --server {$域名} --user ftpuser --password 'ZGClab1234!'
|
||
|
||
``` |