首页
学习
活动
专区
圈层
工具
发布

Jenkins API+Pipeline深度实践之input的自动化

本文分享的小Tips是在我前面的文章DevOps建设之基于钉钉OA审批流的自动化上线中提到的,当通过API自动触发Jenkins Pipeline流水线执行时,如果原来的流水线中定义了在构建正式开始后还需要接收用户...throw(exc) } } } } } 到这里问题就产生了,input的过程是在流水线运行过程中动态出现的,如果是想要在钉钉...,是不可取的 通过查找发现这方面的资料很少,最终有用的资料如下 input官方说明 input语法中可选字段包含id,每个input步骤都有一个唯一的ID。...作为参考起到了一定帮助 为了完成整个自动化input的过程,具体的演进流程如下 3.1 通过Crumb安全操作Jenkins Crumb指的是Jenkins的CSRF token,Jenkins服务器为了阻止不安全的跨域请求...,默认开启了CSRF保护,参考Jenkins远程API访问 Jenkins的CSRF配置可以在「系统管理」——> 「全局安全配置」——> 「CSRF Protection」相关配置中关闭此保护,跨站请求伪造这是一个很常见的安全问题

2.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    python接口自动化(十五)--参数关联接口(详解)

    2、用fiddler抓包,抓到删除新建任务的请求,从抓包结果可以看出,传的data参数是Jenkins-Crumb ? 3.这个Jenkins-Crumb哪里来的呢?可以看上个请求的body ?...4、也就是说在新建任务的时候,系统随机生成一个Jenkins-Crumb参数的值,body里面带有Jenkins-Crumb这个参数。...那接下来我们提取出来就可以了 二、提取参数 1、我们需要的参数Jenkins-Crumb是在新建任务是body里Jenkins-Crumb的值,这时候从body里提出对应的参数值就行了(注意:每次保存需要修改内容...('utf-8')) 53 #删除成功重定向到主界面(由于抓包没有看到response的结果,只知道重定向主界面) 54 print(r3.url) 五、小结 1、细心地、认真的小伙伴一定会发现我代码请求的...(2)查看jenkins主界面,没有新建任务 ? (3)点击右上方的昆虫图标 ? (4)进入debug模式,代码运行到断点处停止运行 ?

    1.6K40

    实现自动化构建与集成:Jenkins与SVN整合的指南

    前言(非必须):配置Jenkins的CSRF 在使用Jenkins的时候总是保存很慢,前端报错,错误关键词:Found invalid crumb 。...->系统设置->全局安全设置->跨站请求伪造保护,把下拉选项改成Strict Crumb Issue,点开右下高级设置,去除掉Check the session ID选项选中,当然我这样设置了貌似没有生效.../tomcat-restart.log # 在项目目录及其子目录中查找所有以 .war 为后缀的文件。...SVN 服务器给 Jenkins 项目特定的 URL 地址发送请求,但必须以请求参数的形式携带一个特定值,这个特定值就是这里的“身份验证令牌”。...=true 运行脚本 Linux下通过curl 命令用来发送 HTTP 请求 这样我们就可以在SVN服务器上面通过执行curl命令,来达到第五步的通过浏览器访问然后执行构建的功能了。

    2.3K40

    React Plugin Template,让你可以使用 React 来编写 Jenkins 插件

    | 使用 Webpack | Webpack 可以减少最终包的体积,同时避免 js 库对全部命名空间的影响 | 为每个请求附加 Jenkins Crumb| Jenkins Crumb 是 Jenkins...npm run start 运行插件 mvn hpi:run -Dskip.npm -f pom.xml 发送HTTP请求 由于 Jenkins Crumb 策略默认是开启的,每个请求都被要求包含一个...Jenkins Crumb, 所以请使用已经设置好了 Jenkins Crumb 的 axiosInstance,可以在 src/main/react/app/api.js 中找到。...Jenkins Crumb 添加到你每个请求的 header中,这个 header 的 key 和 content 都可以使用 src/main/react/app/utils/urlConfig.js...Jenkins 使用了一个叫做 Stapler的框架来处理请求。你可以使用一个继承了 Action 的类来创建一个子 url ,同时可以使用一个 StaplerProxy 来转发或者直接处理请求。

    84620

    服务器使用宝塔面板出现“您的请求在web服务器中没有找到对应的站点!”的解决办法

    服务器使用宝塔面板出现“您的请求在web服务器中没有找到对应的站点!”的解决办法 服务器使用宝塔面板出现“您的请求在web服务器中没有找到对应的站点!”...的解决办法 近期经常看到有站长朋友反应服务器出现以下报错: QQ图片20180720152852.png 这个提示是说您访问的域名,在这台服务器上没有找到对应的站点,其实就是配置文件没有正确读取才出现的...如果第一种方法无效的话,采用第二条方式 2.连接进入linux服务器SSH终端,输入以下命令: /etc/init.d/httpd stop pkill -9 httpd /etc/init.d/httpd...start 这三条命令在SSH中逐个输入,每输入一条就回车执行一次。...然后重启服务器,再查看效果。

    10.6K50

    python接口自动化(十四)--session关联接口(详解)

    简介   上一篇cookie绕过验证码模拟登录博客园,但这只是第一步,一般登录后,还会有其它的操作,如发帖,评论等等,这时候如何保持会话呢?这里我以jenkins平台为例,给小伙伴们在沙场演练一下。...session简介 1、通过help方法查看帮助文档,截图一部分,后面省略了,有兴趣的自己可以敲一下看看 ?...2、参考代码 1 # coding:utf-8 2 import requests 3 help(requests.session()) 使用session登录 1、使用session登录只需在登录的基础上稍做修改...":"51a97fc7fbf3792823230d9bdd7ec906" 7 8 } 9 } 3、用上面登录保存的session继续发送post请求,来新建任务 ?...4、执行后,查看所有任务就多了一条新增的了 ? 5、运行结果部分截图: ? 6、粘贴到记事本修改后缀查看: ?

    1.9K41

    Jenkins集成GitLab的正确姿势,实现Git代码提交触发CICD

    安装GitLab Plguin Gitlab Plugin- 这个插件允许GitLab在提交代码或打开/更新合并请求时触发Jenkins中的构建。它还可以将构建状态发送回GitLab。...构建触发器选择 “Build when a change is pushed to GitLab” (记住后面的GitLab webhook URL 后面要填在gitlab的webhooks中),按照下面勾选...新版jenkins可能遇到的坑 在“Generate” 生成 token时候,如果使用的是高版本的 jenkins ,会出现403错误 HTTP ERROR 403 No valid crumb was...= true 如果出现下图所示的情况,就表示命令成功了 image.png 上面的方法对于在容器里运行的jenkins而言,需要进入容器修改配置,永久生效 修改/usr/local/bin/jenkins.sh...在链接那里输入之前jenkins上提供的webhook url 以及“Secret token“,编辑完后保存 点击测试,如果返回200,那就成功了,去jenkins看看有没有自动构建的记录 配置Jenkins

    7.9K31

    通过jenkins API去build一个job

    背景 查看jenkins的api 直接访问 JENKINS_URL/job/JOB_NAME/api/ 就可以查看jenkins的api build一个job的话,是POST请求 JENKINS_URL...这是jenkins的安全策略导致的,需要传递一个crumb  解决方法 有两个方案, 第一种方案: 1....先去掉jenkins的安全策略设置,如图,去掉勾选 在jenkins全局安全设置中 取消勾选 “防止跨站点请求伪造(Prevent Cross Site Request Forgery exploits...token=TOKEN_NAME 触发这个job了 第二种方案: 安全这块不用去掉防止跨站点请求伪造,通过传递crumb来实现;但允许anonymous 访问还是要设置的  POST请求的时候带上这个Jenkins-Crumb...访问 JENKINS_URL/crumbIssuer/api/json 就可以获取到你的crumb,当然不同的客户端去访问得到的不一样 ?

    2.4K60

    Jenkins 安全修复 SECURITY-626 的紧急通知

    普通用户 检查你的 Jenkins 版本,界面上是否有 SECURITY-626 相关的安全漏洞提醒。如果有的话,建议准备升级。尤其是对于 Jenkins 运行在公有云环境中的用户。...默认情况下,Jenkins 中的 CSRF Token 只对认证信息以及 IP 地址进行校验。...这就导致了一个潜在的安全漏洞,攻击者可以利用另外一个用户的 CSRF Token 进行攻击,而且只要受害者的 IP 地址保持不变,就可以一直有效。...解决方案 安装插件 Strict Crumb Issuer Plugin 后,自定义 Crumb 校验规则 禁用新特性,设置系统属性 hudson.security.csrf.DefaultCrumbIssuer.EXCLUDE_SESSION_ID...案例与参考资料 KubeSphere 对于开源平台 KubeSphere 的用户来说,已经不用担心这个问题,社区已经在 ks-jenkins 这个项目中修复了这个问题。

    88610

    Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程)

    2、用fiddler抓包,抓到删除新建任务的请求,从抓包结果可以看出,传的data参数是Jenkins-Crumb。如下图所示: ? 3.这个Jenkins-Crumb哪里来的呢?...cookie的添加一个值,这个也可以在抓包登陆请求中header查看到,这里宏哥就不细说了。...2.3JMeter运行查看运行结果 2.3.1不需要登录 1、点击绿色的按钮,运行Jmeter,如下图所示: ? 2、查看JMeter运行结果,一个请求的监听结果都是绿色的,说明请求成功。...4、查看Jenkins的新建任务,没有看到“北京-宏哥”,说明删除成功了,如下图所示: ? 3.制定高级Web测试计划 在本小节中,红儿将介绍一下如何创建高级 测试计划来测试网站。...如果选中,则将保存最后找到的会话ID,如果先前的HTTP示例不包含会话ID,则将使用该ID。 URL重写示例 下载此示例。在图1中显示了使用URL重写的测试计划。

    4K30

    IntelliJ Idea 插件推荐

    解释下Blocker/Critical/Major三个等级 在 Snoar 中对代码规则有五个级别,这是前三个:崩溃/严重/重要 ,也就是说前两级别是必须要处理掉的。...注意:如果你用的是 jenkins 2, 并且启用了 CSRF(防止跨站点请求伪造),需要填 Crumb Data, 这个可以通过以下url获取:http://jenkinsserver:port/crumbIssuer...tree=crumb#,其中jenkinsserver:port即为本机的Jenkins访问地址 不建议:如果不启用 CSRF的话(默认启用),到 系统管理 -> Configure Global Security...image 说明:如果不启用 CSRF的话,第二张图idea设置的Crumb Data则不用填 IntelliJ IDEA 官方对中文支持 1....在弹出的 Plugins 窗口里,切换至 Marketplace Tab,以 Chinese 关键字搜索,第一个出现的就是 Chinese (Simplified) Language Pack EAP,

    59320

    Jenkins的一些笔记

    一、在全局安全配置中 1.1 启用安全 如果勾选不对,那么Jenkins有可能崩溃掉,亲身经历,之前一直没有勾选安全域,然后授权策略为登录用户可以做任何事,之后权限这一块就彻底崩溃了,重装了又重装,才知道... 1.2 跨域 同时开启跨站请求伪造保护,Jenkins的一些API需要用到的。 ?... 三、获取Jenkins-Crumb 在远程API调用的时候,Jenkins对于某些接口的要求不仅限于Authorization,还必须要有Jenkins-Crumb,这个东西之前在进行获取的时候...的时候,没有开启启用安全,再或者是有没有勾选上使用碎片算法。... 4.3 构建的队列 在点击立即构建的时候,Jenkins是没有返回任何信息,但是在Jenkins的内部,它是通过放到队列里等待的,如果有空闲,就开始构建,否则等待,这个队列是可以获取得到的

    1.3K20

    flask项目实现自动化部署

    本地运行不需要安装其他的软件,只需要python基本的环境(一般来说:本地测试直接运行即可)。如需要在服务器上运行,以支撑起整个项目,则需要配置uwsgi+nginx。...服务器上配置: uwsgi+nginx配置,如果不使用Nginx也是可以实现项目的运行支撑的,但是Nginx可以保证负载均衡(如果有多个运行项目的话)以及安全性。...一般配置nginx作为前端代理,uwsgi作为后端代理,其实这样称呼并不准确,但只是相对的。nginx用来处理静态请求,若是动态请求由nginx转发至uwsgi进行处理。...但在开发过程中,我们每次修改代码或者新增功能并且在本地测试好了之后,想要通过公网访问我们的修改的或者新增的功能,就得把当前改变上传到服务器上,并且重新启动uwsgi服务器。...jenkins持续集成: jenkins安装配置: 注意jenkins是基于java的,所以需要jdk环境并且在jenkins配置文件中设置。

    2.9K20

    HTTP触发Jenkins参数化构建

    Webhook触发Jenkins job,同步构建完毕后发邮件出来 但由于前端环境的特殊性(测试用例要在浏览器环境跑),而测试结果也在JS手里,于是就有了异步跑完用例后怎么通知Jenkins的问题 用Selenium...服务器 smtp.163.com 使用SMTP认证 用户名 xxx 密码 ***Jenkins Location --- 系统管理员邮件地址...默认有跨站请求头伪造保护和跨域限制,而且要求登录(但支持Basic Auth) 如果经服务中转,这些都不是问题,拿到crumb通过CSRF,无脑跨域,header验证。.../Configure Global Security”里不勾选防止跨站点请求伪造 这样就不用取crumb验证了,测试环境,风险不大 开启CORS白名单 有一个CORS插件,专门干这个事情:CORS support...字段,身份证有效期为3600s(1小时) P.S.关于CORS的更多信息,请查看跨域资源共享 CORS 详解 XHR登录 new Image()最方便,但没办法进行Basic Auth。

    2.5K40

    我的生产力工具推荐-IDE插件篇

    借助于其完备的插件库,甚至可以完美的将日常工作 “全部” 集成到IDE中 本文要推荐的两款插件,是我日常工作中经常会使用到的 在我的环境中,由于开发的应用是部署在k8s集群环境中,而应用部署到k8s的CI...,如果检查没有权限或其他报错,建议密码使用用户的token,可以通过「用户」——> 「设置」——> 「API Token」——> 「添加新Token」来获得一个api token。...当然也可以通过Crumb操作连接Jenkins,关于Crumb在我前面的文章 Jenkins API+Pipeline深度实践之input的自动化中有提及 其他配置看字面意思即可,这里不再赘述 2.3...插件使用 配置完成后,就可以在IDE工具的右侧工具栏看到一个Jenkins图标,点击展开,就可以看到所有的Jenkins Job列表,也可以选择按Jenkins上的视图进行分类 找到需要操作的Job并右键...,包括历史日志及正在运行的Job构建日志,这样在触发构建后,就可以很方便的在IDE中查看到CI流程的每个步骤详细输出,和在Jenkins的控制台上看是一样的 3、Kubernetes插件 3.1 插件安装

    1.1K20
    领券