我写了一个bash脚本,它处理一些数据并放入一个文件中。我的意图是在该文件中包含内容的情况下发出松弛警报,如果没有,则不应发出警报。有办法吗?在大厅里
答案 0 :(得分:0)
您应该利用Concourse社区的开源资源类型。有一个列表here。该页面上列出了一个备用资源,但我在这里使用了一个备用资源(由于作者尚未添加,因此未包含在上面的列表中)https://github.com/cloudfoundry-community/slack-notification-resource。
这将使您能够在工作计划中添加put
步骤来发送闲置资源。至于您最初询问的逻辑,可以使用try
和on_success
。您的任务可能看起来像这样:
- try:
task: do-a-thing
config:
platform: linux
image_resource:
type: registry-image
source:
repository: YOUR_TASK_IMAGE
tag: latest
inputs:
- name: some-input
params:
FILE: some-file
run:
path: /bin/sh
args:
- -ec
- |
[ ! -z `cat some-input/${FILE}` ]
on_success:
put: slack
params:
<your slack resource put params go here>
如果任务的on_success
部分中定义的代码返回0,则run
部分将运行。此处列出的脚本仅检查文件中是否有超过零个字节。由于该任务包含在try
步骤中,因此无论该任务是否成功完成(并因此向您发送消息),该步骤都会成功,并移至计划的下一步。