CLI 工具
目录
概述
violet
CLI 工具是一个平台集成的实用程序,允许您将软件包从自定义门户上传到平台。该工具支持三种类型的软件包:Operators、Cluster Plugins 和 Helm charts。
支持的操作系统
- Linux、macOS 和 Windows
- Linux 和 macOS 支持 x86 和 ARM 架构
权限要求
- 您必须提供有效的平台用户账号(用户名和密码)
- 该账号的 role 属性必须设置为
System
,且角色名称必须是 platform-admin-system
注意: 如果您的账号 role 属性设置为 Custom
而非 System
,即使该角色拥有所有 Platform Management
权限,也无法使用此工具。
下载工具
- 进入 Administrator 视图
- 点击左侧导航中的 Marketplace/Upload Packages
- 点击 Download Package Upload Tool
- 选择与您的操作系统和架构匹配的二进制文件
安装工具
下载工具后,将其安装到您的打包或上传服务器或个人电脑上。
Linux 或 macOS
非 root 用户:
# Linux x86
sudo mv -f violet_linux_amd64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
# Linux ARM
sudo mv -f violet_linux_arm64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
# macOS x86
sudo mv -f violet_darwin_amd64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
# macOS ARM
sudo mv -f violet_darwin_arm64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
root 用户:
# Linux x86
mv -f violet_linux_amd64 /usr/bin/violet && chmod +x /usr/bin/violet
# Linux ARM
mv -f violet_linux_arm64 /usr/bin/violet && chmod +x /usr/bin/violet
# macOS x86
mv -f violet_darwin_amd64 /usr/bin/violet && chmod +x /usr/bin/violet
# macOS ARM
mv -f violet_darwin_arm64 /usr/bin/violet && chmod +x /usr/bin/violet
Windows
-
下载文件并重命名为 violet.exe
,或者使用 PowerShell 重命名:
# Windows x86
mv -Force violet_windows_amd64.exe violet.exe
-
在 PowerShell 中运行该工具。
注意:如果您尚未将工具路径添加到环境变量,运行命令时需要指定工具的完整路径。
使用工具
预览软件包
平台管理员可以使用 violet show
查看并确认软件包信息后再上传。
violet show topolvm-operator.v2.3.0.tgz
Name: NativeStor
Type: bundle
Arch: [linux/amd64]
Version: 2.3.0
violet show topolvm-operator.v2.3.0.tgz --all
Name: NativeStor
Type: bundle
Arch: []
Version: 2.3.0
Artifact: harbor.demo.io/acp/topolvm-operator-bundle:v3.11.0
RelateImages: [harbor.demo.io/acp/topolvm-operator:v3.11.0 harbor.demo.io/acp/topolvm:v3.11.0 harbor.demo.io/3rdparty/k8scsi/csi-provisioner:v3.00 harbor.demo.io/3rdparty/k8scsi/csi-provisioner:v2.1.1 harbor.demo.io/3rdparty/k8scsi/csi-resizer:v1.3.0 harbor.demo.io/3rdparty/k8scsicsi-attacher:v3.3.0 harbor.demo.io/3rdparty/k8scsi/csi-snapshotter:v3.0.2 harbor.demo.io/3rdparty/k8scsi/csi-node-driver-registrar:v2.3.0 harbordemo.io/3rdparty/k8scsi/livenessprobe:v2.4.0]
上传 Operators
violet push opensearch-operator.v3.14.2.tgz --platform-address https://192.168.0.1 --platform-username <user> --platform-password <password>
参数 | 说明 |
---|
args[0] | 必填。violet push 命令后的第一个参数。指定要上传的软件包文件路径。若有多个软件包,放置在同一目录下并指定目录路径,工具会自动上传目录中所有软件包。 |
--platform-address | 必填。平台的访问地址。 |
--platform-username | 必填。具有 Platform Administrator role 的本地用户的用户名。 |
--platform-password | 必填。该用户名对应的密码。 |
--skip-push | 可选。仅需创建上传相关资源但不推送镜像时添加此参数。 |
--force | 可选。当包内镜像已存在于平台时,添加此参数可强制覆盖并更新相关资源。 |
--target-chartrepo | 可选。需要上传到特定 catalogsource 时添加此参数。 |
--clusters | 可选。指定上传到哪些集群,多个集群名称用逗号分隔,如 global,cluster1,cluster2 。未指定时,默认上传到 global 集群。 |
--debug | 可选。需要打印调试日志信息时添加此参数。 |
上传 Cluster Plugins
violet push plugins-cloudedge-v0.3.16-hybrid.tgz --platform-address https://192.168.0.1 --platform-username <user> --platform-password <password>
参数 | 说明 |
---|
args[0] | 必填。violet push 命令后的第一个参数。指定要上传的软件包文件路径。若有多个软件包,放置在同一目录下并指定目录路径,工具会自动上传目录中所有软件包。 |
--platform-address | 必填。平台的访问地址。 |
--platform-username | 必填。具有 Platform Administrator role 的本地用户的用户名。 |
--platform-password | 必填。该用户名对应的密码。 |
--skip-push | 可选。仅需创建上传相关资源但不推送镜像时添加此参数。 |
--force | 可选。当包内镜像已存在于平台时,添加此参数可强制覆盖并更新相关资源。 |
--debug | 可选。需要打印调试日志信息时添加此参数。 |
提示: 上传 cluster plugins 不支持指定集群。如果您只想上传到 global
集群,需要配置 ModulePlugin。具体配置方法请联系技术支持。
上传 Helm Charts
violet push chartmuseum-v3.16.1.tgz --platform-address https://192.168.0.1 --platform-username <user> --platform-password <password>
参数 | 说明 |
---|
args[0] | 必填。violet push 命令后的第一个参数。指定要上传的软件包文件路径。若有多个软件包,放置在同一目录下并指定目录路径,工具会自动上传目录中所有软件包。 |
--platform-address | 必填。平台的访问地址。 |
--platform-username | 必填。具有 Platform Administrator role 的本地用户的用户名。 |
--platform-password | 必填。该用户名对应的密码。 |
--skip-push | 可选。仅需创建上传相关资源但不推送镜像时添加此参数。 |
--force | 可选。当包内镜像已存在于平台时,添加此参数可强制覆盖并更新相关资源。 |
--debug | 可选。需要打印调试日志信息时添加此参数。 |
提示: 上传过程不支持指定模板仓库,默认会上传到 public-charts
。