System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及软件开发,尤其涉及一种流水线全局变量使用方法、装置及介质。
技术介绍
1、ci(continuous integration,持续集成)/cd(continuousdelivery,持续交付/continuous deployment,持续部署)流水线实现服务自动构建、自动测试、自动部署及按需交付。当前主流的ci/cd流水线构建工具中对变量的支持限制在构建工具层级,需要在创建流水线中声明变量,必须要登录构建工具设置。常用的构建工具有jenkins,gitlab-ci。
2、jenkins是一个开源的、提供友好操作界面的持续集成(ci)工具,jenkins中全局变量使用需要在global properties选项中设置,在流水线脚本通过引用${变量名}的格式引用。
3、现有技术在使用流水线全局变量时仍有以下缺点:数据不安全,在日常使用流水线全局变量时,必须登录流水线环境才能设置并使用流水线全局变量,导致存在数据安全风险。
技术实现思路
1、本专利技术所要解决的技术问题是针对现有技术的上述不足,提供一种流水线全局变量使用方法、装置及介质,用以解决现有技术在日常使用流水线全局变量时,必须登录流水线环境才能设置并使用流水线全局变量,导致存在数据安全风险的问题。
2、第一方面,本专利技术提供一种流水线全局变量使用方法,包括:
3、接收用户基于前端页面选择预设的带有流水线全局变量的流水线环境后,发送的流水线创建指令;
4
5、接收用户编辑目标流水线时在所述目标流水线脚本中引入的目标流水线全局变量的名称;其中,所述目标流水线全局变量为所述流水线环境中的流水线全局变量之一;
6、将添加了目标流水线全局变量名称的所述脚本保存至所述流水线环境中;
7、在接收到用户的执行指令时,根据所述执行指令,将所述脚本中的所述名称替换为所述目标流水线全局变量的值,并执行所述目标流水线。
8、进一步地,所述接收用户基于前端页面选择预设的带有流水线全局变量的流水线环境后,发送的流水线创建指令之前,所述方法还包括:
9、配置所述流水线环境;
10、在所述流水线环境中添加至少一个所述流水线全局变量的名称和值并保存,得到所述带有流水线全局变量的流水线环境。
11、进一步地,所述根据所述流水线创建指令,创建目标流水线,具体包括:
12、根据所述创建指令,接收用户在所述流水线环境中选择的流水线全局变量的名称;
13、在组装所述目标流水线脚本时,将所述选择的流水线全局变量的名称导入所述目标流水线脚本,得到所述目标流水线。
14、进一步地,所述接收用户编辑目标流水线时在所述目标流水线脚本中引入的目标流水线全局变量的名称,具体包括:
15、接收用户编辑目标流水线时在所述目标流水线脚本中按照预设的引用形式引用的目标流水线全局变量的名称。
16、进一步地,所述根据所述执行指令,将所述脚本中的所述名称替换为所述目标流水线全局变量的值,并执行所述目标流水线之前,所述方法还包括:
17、获取所述目标流水线全局变量本次执行对应的所述值。
18、进一步地,所述带有流水线全局变量的流水线环境为多个,不同所述流水线环境可以存储在不同的流水线集群中,所述方法还包括:
19、根据预设的统一集成应用程序接口api,覆写多个所述流水线集群对应的流水线环境中的流水线全局变量,以使所述流水线全局变量可以跨集群使用。
20、第二方面,本专利技术提供一种流水线全局变量使用装置,包括:
21、第一接收模块,用于接收用户基于前端页面选择预设的带有流水线全局变量的流水线环境后,发送的流水线创建指令;
22、创建模块,与所述第一接收模块连接,用于根据所述流水线创建指令,创建目标流水线;
23、第二接收模块,与所述创建模块连接,用于接收用户编辑目标流水线时在所述目标流水线脚本中引入的目标流水线全局变量的名称;其中,所述目标流水线全局变量为所述流水线环境中的流水线全局变量之一;
24、保存模块,与所述第二接收模块连接,用于将添加了目标流水线全局变量名称的所述脚本保存至所述流水线环境中;
25、替换模块,与所述保存模块连接,用于在接收到用户的执行指令时,根据所述执行指令,将所述脚本中的所述名称替换为所述目标流水线全局变量的值,并执行所述目标流水线。
26、进一步地,所述装置还包括:
27、配置模块,用于配置所述流水线环境;
28、添加模块,用于在所述流水线环境中添加至少一个所述流水线全局变量的名称和值并保存,得到所述带有流水线全局变量的流水线环境。
29、第三方面,本专利技术提供一种流水线全局变量使用装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以实现上述第一方面所述的流水线全局变量使用方法。
30、第四方面,本专利技术提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的流水线全局变量使用方法。
31、本专利技术提供的流水线全局变量使用方法、装置及介质,首先接收用户基于前端页面选择预设的带有流水线全局变量的流水线环境后,发送的流水线创建指令;然后根据所述流水线创建指令,创建目标流水线;再接收用户编辑目标流水线时在所述目标流水线脚本中引入的目标流水线全局变量的名称;其中,所述目标流水线全局变量为所述流水线环境中的流水线全局变量之一;并将添加了目标流水线全局变量名称的所述脚本保存至所述流水线环境中;最后在接收到用户的执行指令时,根据所述执行指令,将所述脚本中的所述名称替换为所述目标流水线全局变量的值,并执行所述目标流水线。本专利技术通过在流水线中直接引用预设流水线环境中的流水线全局变量,不需要登录流水线环境,从而能够减少账号泄露风险,增加数据安全性,解决了现有技术在日常使用流水线全局变量时,必须登录流水线环境才能设置并使用流水线全局变量,导致存在数据安全风险的问题。
本文档来自技高网...【技术保护点】
1.一种流水线全局变量使用方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述接收用户基于前端页面选择预设的带有流水线全局变量的流水线环境后,发送的流水线创建指令之前,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述根据所述流水线创建指令,创建目标流水线,具体包括:
4.根据权利要求1所述的方法,其特征在于,所述接收用户编辑目标流水线时在所述目标流水线脚本中引入的目标流水线全局变量的名称,具体包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述执行指令,将所述脚本中的所述名称替换为所述目标流水线全局变量的值,并执行所述目标流水线之前,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述带有流水线全局变量的流水线环境为多个,不同所述流水线环境可以存储在不同的流水线集群中,所述方法还包括:
7.一种流水线全局变量使用装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
9.一种流水线全局变量使
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的流水线全局变量使用方法。
...【技术特征摘要】
1.一种流水线全局变量使用方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述接收用户基于前端页面选择预设的带有流水线全局变量的流水线环境后,发送的流水线创建指令之前,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述根据所述流水线创建指令,创建目标流水线,具体包括:
4.根据权利要求1所述的方法,其特征在于,所述接收用户编辑目标流水线时在所述目标流水线脚本中引入的目标流水线全局变量的名称,具体包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述执行指令,将所述脚本中的所述名称替换为所述目标流水线全局变量的值,并执行所述目标流水线之前,所述方法还包括:
...
【专利技术属性】
技术研发人员:莫宗军,李鑫,余晓杰,朱凯,张雯,喻晓磊,王家瑞,盛新鹏,
申请(专利权)人:中国联合网络通信集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。