主机执行插件文档
表单参数说明
-
执行主机组:下拉选择需执行脚本的主机组,需提前在管理页面进行主机纳管。
-
脚本类型:下拉选择要执行的脚本语言类型,支持 Shell、Bat、Powershell(目前仅在阿里云导入的机器支持) 等常见类型。示例:选择“Shell”执行 Linux 命令脚本。
-
执行命令:输入在目标主机上运行的脚本内容,支持通过
{参数Key}引用流水线全局变量或自定义变量。示例:# 打印构建编号并检查磁盘空间
echo "当前构建编号:${GITEE_PIPELINE_BUILD_NUMBER}"
df -h -
是否克隆代码:开关选择是否自动克隆关联的 Gitee 代码仓库到执行主机。开启前需确保主机已配置 SSH Key(公钥需添加到 Gitee 仓库/个人密钥中),否则会因权限不足导致克隆失败。默认关闭。
使用技巧
-
主机组配置前提:使用前需在平台中完成主机组创建及 SSH 连接配置,否则无法选择执行目标。
-
变量引用规范:在“执行命令”中通过
${变量名}调用全局变量,例如${GITEE_PROJECT_NAME}获取项目名称、${BUILD_ID}获取构建ID。 -
脚本调试建议:复杂脚本建议先在目标主机手动执行验证逻辑,避免因语法错误或环境差异导致执行失败。
-
权限控制说明:执行脚本的权限取决于主机配置的 SSH 登录用户权限,如需操作敏感目录(如
/root),需确保登录用户有足够权限。
典型流程示例
常见场景示例:
-
远程部署:通过脚本将构建产物上传到主机并启动服务
# 复制打包文件到主机部署目录
scp ./target/app.jar admin@192.168.1.100:/opt/deploy/
# 远程执行启动命令
ssh admin@192.168.1.100 "cd /opt/deploy && java -jar app.jar &" -
前置检查:在部署前验证主机状态
# 检查内存使用率(超过80%则退出)
ssh admin@192.168.1.100 "free -h | awk '/Mem/ {if(\$3/\$2*100>80) exit 1}'"