有条件地执行 after_success 个操作?
Perform after_success actions conditionally?
我正在开发一个部署到 Travis 当前不支持的提供商的项目,因此我在 after_success
块中编写了我的部署步骤。但是,我想将 Travis 配置为仅部署在新标签上。我知道这在使用 deploy:
块时是可能的,通过添加
deploy:
# ...
on:
tags: true
到deploy:
块。
after_success
也可以吗?如果没有,如果我在新标签上,是否有另一种方法可以仅在 after_success
中执行某些操作?
如果 Travis 不支持这个,我可以只写一个 shell 脚本到 运行 在所有成功之后,检查是否在新标签上,然后有条件地进行部署,但是我更希望能够让 Travis 自动完成。
谢谢!
是的!我需要完全相同的东西并通过以下方式解决它:
after_success:
if ([ "$TRAVIS_BRANCH" == "master" ] || [ ! -z "$TRAVIS_TAG" ]) &&
[ "$TRAVIS_PULL_REQUEST" == "false" ]; then
echo "This will deploy!"
else
echo "This will not deploy!"
fi
我希望他们为 after_success 事件引入 on: tags: 功能,这将使事情变得更容易并使构建脚本更清晰。
我正在开发一个部署到 Travis 当前不支持的提供商的项目,因此我在 after_success
块中编写了我的部署步骤。但是,我想将 Travis 配置为仅部署在新标签上。我知道这在使用 deploy:
块时是可能的,通过添加
deploy:
# ...
on:
tags: true
到deploy:
块。
after_success
也可以吗?如果没有,如果我在新标签上,是否有另一种方法可以仅在 after_success
中执行某些操作?
如果 Travis 不支持这个,我可以只写一个 shell 脚本到 运行 在所有成功之后,检查是否在新标签上,然后有条件地进行部署,但是我更希望能够让 Travis 自动完成。
谢谢!
是的!我需要完全相同的东西并通过以下方式解决它:
after_success:
if ([ "$TRAVIS_BRANCH" == "master" ] || [ ! -z "$TRAVIS_TAG" ]) &&
[ "$TRAVIS_PULL_REQUEST" == "false" ]; then
echo "This will deploy!"
else
echo "This will not deploy!"
fi
我希望他们为 after_success 事件引入 on: tags: 功能,这将使事情变得更容易并使构建脚本更清晰。