使用Siri shortcuts语音控制Jenkins任务

使用Siri shortcuts语音控制Jenkins任务

Siri shortcuts

新版的iOS12里隐藏着一个重要的功能,通过捷径(shortcuts)这个应用让Siri得到极大扩展,用户通过shortcuts很容易构建自己的自动化流。
我们公司在每个下午demo前都要启动Jenkins将今天一天的code提交构建出固件来,每次要打开网页再点击很烦,于是就想能不能给Siri下发个语音命令,
后台让Jeninks自动执行构建。

前提

这里我们使用到了Siri shortcuts的web api,远程调用Jenkins的web接口来完成。

首先Jenkins配置

  1. 为了让Jenkins能通过API远程调用,需要给每个任务打开远程调用的接口。你先登陆到jenkins上然后点击选中的任务进入任务项目页面,左边选择"配置"进入任务配置界面,在"构建触发器"下勾选"触发远程构建",然后输入"身份验证令牌",比如1234。然后保存配置。
  2. 为了可以通过跨站访问Jenkins需要关闭Jenkins的跨站访问检查,可以先到Jenkins首页,选择"系统管理", 再选择"Configure Global Security", 去掉选中"防止跨站点请求伪造".
  3. 然后回到Jenkins首页,点击右上角当前用户名进入用户界面,选择"配置", 查看“API Token", 比如User ID: aaa API Token:e55e602720442a31fa1dccf3bbb4dbee
  4. 可以通过curl或浏览器访问http://<USER_ID>:<API_TOKEN>@<JENKINS_URL>/job/<JOB_NAME>/build?token=<JOB_TOKEN>测试下是否能触发构建,按照我们上面的配置访问例子如下
  1. curl -X POST http://aaa:e55e602720442a31fa1dccf3bbb4dbee@<JENKINS_URL>/job/<JOB_NAME>/build?token=1234 

Siri shortcuts的配置

首先先搜索捷径在APP Store中,并安装它。捷径shortcuts通过提供的一些操作ction来自动化很多东西,比如获取字典,访问网页等,并能通过询问Siri来执行这些动作。我们这里主要使用了自动访问web api的操作action。

流程如下

参考

Jenkins API Integration : Trigger Job Remotely via Jenkins API
Error 403 No valid crumb was included in the request解决方案
Shortcuts User Guide


2018-9-30 - nicephil@gmail.com

posted on 2018-09-30 17:12  nicephil  阅读(359)  评论(0编辑  收藏  举报

导航