使用Siri shortcuts语音控制Jenkins任务

Posted nicephil

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用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:[email protected]<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 - [email protected]



以上是关于使用Siri shortcuts语音控制Jenkins任务的主要内容,如果未能解决你的问题,请参考以下文章

使用 NSUserActivity 时如何将值返回给 Siri Shortcut?

如何将 Clockify API 与 Siri Shortcuts 一起使用

carplay语音控制高德地图没有反应

Siri Shortcuts App 总是在地理定位中抛出 kCLErrordomain 错误 2

Siri ShortCuts - NSUserActivity,不显示给定的缩略图

Siri Shortcuts 的 Intent Extension 在 Sample App 中有效,不在现有项目中