Deploy-Helper是针对软件开发人员的工件部署的小工具。
我写了Deploy-Helper,以帮助我在工作时将工件部署到测试网络中。我可能会为此使用我的IDE,但这并不有趣!
没有部署助手的步骤:
带有部署助手的步骤:
默认配置文件deploy-helper.json需要在您的工作目录中。
示例配置:
{
// Required
"destinations" : [
{
// Name of the destination
"name" : "service1" ,
// Normally you would set a real address or a ip here,
// but you could also use aliases from your ssh config (like I did here)
"address" : "test-network" ,
// The path for our destination (used for the ssh session)
"path" : "/home/user/services/service1/data/" ,
// SSH_COMMANDS (ssh first, then commands) or
// COMMANDS_SSH (commands first, then ssh)
"order" : "SSH_COMMANDS"
} ,
{
"name" : "service2" ,
"address" : "test-network" ,
"path" : "/home/user/services/service1/data/" ,
"order" : "SSH_COMMANDS"
}
] ,
// Required
"artifact" : {
// Directory that contains the artifact
"directory" : "./target" ,
// Name regex that matches the artifact
"name" : "my-software-[\d.A-Za-z-]+\.jar" ,
// Sorting operation for possible artifacts
// LAST_MODIFIED_ASC (oldest file first) or
// LAST_MODIFIED_DESC (newest file first)
"sort" : "LAST_MODIFIED_DESC"
} ,
// Optional
"commands" : [
// Can be either a string or an array of strings
"scp {ARTIFACT_PATH} {SSH_USER}@{DEST_ADDRESS}:{DEST_PATH}{ARTIFACT_NAME}"
] ,
// Optional
"ssh" : {
// If port is > 0, the ssh command will be USER@HOST:PORT
// If the port is <= 0, the ssh command will be USER@HOST
"port" : 0 ,
// How long to wait for the connection to establish
"sleep" : "2000" ,
// The ssh user
"user" : "user" ,
// Plaintext password auth requires 'sshpass'
// "password": "foobar",
"commands" : [
// Commands have to be a string
"rm my-software-*.jar"
]
}
}此示例配置执行以下操作:
rm命令删除旧工件scp命令将新的工件复制到服务器您还应该将deploy-helper.json添加到.gitignore文件中。
注意:只能有一个人工制品。
{DEST_ADDRESS} :目标地址{DEST_NAME} :目标名称{DEST_PATH} :目标路径{SSH_USER} :ssh用户{SSH_PORT} :SSH端口{ARTIFACT_PATH} :伪影路径{ARTIFACT_NAME} :伪像名称
| 长的 | 短的 | 描述 |
|---|---|---|
| -Config | -c | 覆盖配置位置 |
| - verbose | -v | 如果启用,则过程输出将被重定向到stdout&stderr |
| - 目的地 | -d | 覆盖目的地(逗号分开) |
安装Deploy-Helper与从最新版本(理论上)下载JAR一样容易。但是,您可能应该将罐子放在某种中心位置。
这就是我使用ZSH在Linux机上“安装”部署助手的方式:
sudo mkdir /opt/deploy-helpersudo chown max:max /opt/deploy-helpermv ~/Downloads/deploy-helper-*.jar /opt/deploy-helperecho "alias deploy='java --enable-preview -jar /opt/deploy-helper/deploy-helper-VERSION.jar'" >> ~/.zshrc然后,只需重新打开您的终端(或source ~/.zshrc ),就完成了!
基本命令:
java --enable-preview -jar deploy-helper-VERSION.jar OPTIONS
将命令绑定到别名:
alias deploy='java --enable-preview -jar /opt/deploy-helper/deploy-helper-VERSION.jar'
使用另一个配置运行部署助手:
deploy -c ~/my-deploy-config.json
使用指定目的地运行部署助手:
deploy -d service1,service4,service5
先决条件:
步骤:
git clone https://github.com/cerus/deploy-helper.gitcd deploy-helpermvn clean package请遵循贡献指南