建木小故事

本文讲述了团队在项目协作中遇到的用例更新难、信息同步滞后问题,通过引入建木CI,利用webhook触发SSH与企业微信通知,实现了文档实时更新通知,简化开发获取流程。

在这里插入图片描述

在此发表一篇文章,想和大家分享一下团队在平时工作中获取信息遇到的问题以及如何通过建木CI来解决问题的经历。

不知道大家有没有遇到过这样的问题,需求那边的伙伴修改了用例、原型,然后同步信息给开发,开发再去获取信息,由于用例、原型的文档是下载到了本地,所以有时候也会忘记通过git pull去更新,这对于开发来说增加了获取信息的门槛,造成了信息流程障碍。对于这种情况,我就在想,为什么不把这些东西放到服务器上呢?需求那边更新完成之后,简单的打个tag,然后触发流程,最后把需要的信息直接发送给我们,这样会不会更加简单呐!

在这里插入图片描述

下面给大家分享一下我是如何运用建木CI去简单地实现这个想法的。

1、建木Hub上查看使用到的节点官方文档

ssh执行命令节点:通过ssh连接到指定主机执行对应的命令。

节点文档:https://jianmuhub.com/_/ssh_cmd

在这里插入图片描述

企业微信通知节点:通过企业微信机器人发送消息通知,当前支持的消息类型包括test,markdown,image,news。

节点文档:https://jianmuhub.com/_/qywx_notice

在这里插入图片描述

2、业务流程

我在这里通过接收git的tag事件来触发流程,类型为webhook,之后再通过JSONPath语法来解析事件消息,获取需要的信息来判断tag状态(主要是为了避免删除tag时也去触发业务流程)。

DSL示例如下:


trigger:
  type: webhook
  param:
    - name: tag
      type: STRING
      exp: $.body.json.ref
    - name: object_kind
      type: STRING
      exp: $.body.json.object_kind
    - name: before
      type: STRING
      exp: $.body.json.before
    - name: username
      type: STRING
      exp: $.body.json.user_name
    - name: url
      type: STRING
      exp: $.body.json.project.git_http_url
  only: (${trigger.object_kind} == "tag_push" && ${trigger.before}== "0000000000000000000000000000000000000000")

pipeline:
  # ssh节点
  ssh_cmd:
    type: "ssh_cmd:1.0.1"
    param:
      ssh_port: "22"
      ssh_cmd: "cd /root/Prototype/release; git pull"
      ssh_ip: "xxx.xx.xx.xx"
      ssh_private_key: "((ssh.private))"
      ssh_user: "root"
  # 企业微信通知节点
  qywx_notice:
    type: "qywx_notice:1.2.1"
    param:
      mentioned_mobile_list: "[\"@all\"]"
      bot_webhook_url: "((chatbot.webhook))"
      text_content: "需求原型发版\\n版本:${trigger.tag} \\n app原型地址:http://xxxx.xx.xx.xx:xxxx \\n 平台原型地址:http://xxxx.xx.xx.xx:xxxx \\n 需求用例git地址:${trigger.url} \\n 更新人:${trigger.username}"
      msgtype: "text"

3、触发流程、展示结果

执行成功,健康的颜色~

在这里插入图片描述

企业微信收到通知消息

image-20220222230728484.png

哈哈,我想要什么信息就加什么,把饭喂到自己的嘴边-,方便又快捷啊兄弟们!

在这里插入图片描述

本文为建木博主「魏哇哇」的原创投稿文章,转载请联系授权。

项⽬官⽹:https://jianmu.dev

项⽬托管:https://gitee.com/jianmu-dev

项⽬文档:https://docs.jianmu.dev

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值