当前位置: 首页 > news >正文

信息技术的网站建设是什么东莞住建局备案查询

信息技术的网站建设是什么,东莞住建局备案查询,专业seo服务商,成都有啥好玩的地方上一篇博客在Google Kubernetes集群创建分布式Jenkins(一)-CSDN博客我介绍了如何在GCP的K8S集群上部署一个分布式的Jenkins#xff0c;并实现了一个简单的Pipeline的运行。 在实际的开发中#xff0c;我们通常都会按照以下的CICD流程来设置Pipeline 在我司的实际实践中…上一篇博客在Google Kubernetes集群创建分布式Jenkins(一)-CSDN博客我介绍了如何在GCP的K8S集群上部署一个分布式的Jenkins并实现了一个简单的Pipeline的运行。 在实际的开发中我们通常都会按照以下的CICD流程来设置Pipeline 在我司的实际实践中通常包括如下的步骤 往Git仓库提交开发分支的代码创建Pull request来进行code reviewGit仓库配置hook当收到PR时触发jenkins任务拉取代码到Jenkins进行编译和UT检查Jenkins把UT检查结果回写到PR的comments如果UT检查通过自动Approve1当其他人对PR的code review完成Approve2自动合并代码到主分支。合并到主分支触发Jenkins的打包任务Jenkins拉取主分支代码运行打包任务打包任务完成后把打包的镜像推送到registry更新部署的manifest更新镜像的标签把应用部署到GKE 这里我将按照以上任务来设置相应的pipeline Jenkins安装插件 要完成以上的任务我们需要安装以下的一些插件 Generic webhook trigger plugin Github plugin Credential binding plugin Git仓库设置webhook 我选择GitHub作为示例在github上建立一个简单的Java Springboot项目实现一个rest接口完成一个简单的计算任务代码仓库在https://github.com/gzroy/webdemo.git。在这个repo的页面上点击Settings-webhooks然后选择添加webhook在Payload URL里面输入jenkins URL例如我的Jenkins URL是http://123.123.123.123/jenkins/generic-webhook-trigger/invoke?tokenabcContentType选择application/json然后点击“Let me select individual events”选择触发hook的事件。这里我选择Pull request。 设置CICD项目 因为我打算以后其他项目都统一用这个CICD的流程所以新建一个CICD的项目把所需要的Jenkins pipeline的代码都放到这个项目中。以后其他项目只需要引用这个项目的相关文件即可完成CICD的任务。代码仓库在https://github.com/gzroy/cicd.git 创建PR自动触发测试的Pipeline 我们要实现的功能是当开发者新建一个分支修改完代码commit提交并创建PR之后应该要自动触发CI的pipeline来进行UT测试并把测试结果写到PR的comments里面这样其他reviewer可以查看这个测试的结果。 在CICD项目里面我新建了一个ut_pipeline.groovy文件内容如下 pipeline {agent{kubernetes{yaml apiVersion: v1kind: Podspec:containers:- name: mavenimage: maven:3.8.3-openjdk-17tty: trueimagePullPolicy: IfNotPresentcommand:- cat}}triggers {GenericTrigger(genericVariables: [[key: action, value: $.action, expressionType: JSONPath],[key: clone_url, value: $.pull_request.base.repo.clone_url, expressionType: JSONPath],[key: ref, value: $.pull_request.head.ref, expressionType: JSONPath],[key: sha, value: $.pull_request.head.sha, expressionType: JSONPath],[key: number, value: $.number, expressionType: JSONPath],[key: comments_url, value: $.pull_request.comments_url, expressionType: JSONPath]],token: abc)}environment {CREDENTIAL credentials(${CREDENTIAL_ID})}stages{stage(git checkout) {when {expression {return actionopened || actionsynchronize}}steps {script {git(url: clone_url,credentialsId: CREDENTIAL_ID,branch: ref)}}}stage(test){when {expression {return actionopened || actionsynchronize}}steps{container(maven) {script{sh mvn test }}}post {failure {sh (curl -L -X POST \-H \Accept: application/vnd.githubjson\ \-H \Authorization: Bearer ${env.CREDENTIAL_PSW}\ \-H \X-GitHub-Api-Version: 2022-11-28\ \${comments_url} \-d \{\body\: \UT test failure for commit ${sha}\}\)}success {sh (curl -L -X POST \-H \Accept: application/vnd.githubjson\ \-H \Authorization: Bearer ${env.CREDENTIAL_PSW}\ \-H \X-GitHub-Api-Version: 2022-11-28\ \${comments_url} \-d \{\body\: \UT test success for commit ${sha}\}\)}}}} } 解释一下这个程序。在Agent模块里面定义了一个运行Jenkins Agent的Pod其中container除了默认的agent container之外还包括一个maven container在test这个stage里面将运行这个maven container的mvn test命令来执行UT测试。 在triggers模块中定义了GenericTrigger从webhook的回调API中获取body的数据把其中需要的数据赋值到变量给后续的stage使用。 在environment模块中定义了一个名为CREDENTIAL的全局变量通过credentials helper函数来获取Jenkins保存的凭证这里的CREDENTIAL_ID是在Jenkins System里面定义的全局变量。注意这里必须要加上双引号使得Groovy可以预先用Jenkins变量的值来替代这个变量如果用单引号则不行。 在Stages模块中定义了两个Stage这两个操作都是当PR新建或已有PR上发生新的commit时才执行。第一个Stage执行从Github仓库checkout的操作。第二个Stage是执行maven测试在Post里面定义了测试成功或失败需要给PR加上相应的comment。这里都使用了Github API来进行操作我们需要预先把Github用户的access token保存到Jenkins的credentials中。 PR review approve自动触发打包的pipeline 创建一个package_pipeline.groovy的文件当收到Webhook回调时判断如果是approve的事件那么将自动执行合并代码分支到主分支的操作然后拉取主分支的代码进行package并进行Docker构建然后把镜像推送到相应的registry。 待补充 部署镜像的pipeline 采用Gitops的方式来部署。 待补充 设置Pipeline 回到Jenkins的控制台新建一个webdemo_ut的Job选择Pipeline类型然后在Github项目里面填入https://github.com/gzroy/webdemo.git在构建触发器里面选择Generic Webhook TriggerToken也要填上这个Token需要和Github配置webhook的token一致。定义Pipeline里面选择Pipeline script from SCM填入CICD项目的地址和Script文件的路径Branch to build里面输入*/*然后保存即可。 之后我们在https://github.com/gzroy/webdemo.git这个项目上可以执行新建分支然后改动代码提交之后创建一个PR可以看到Jenkins将自动触发一个任务进行测试后把结果回写到PR的comments中。 新建一个webdemo_package的job配置和上面类似只是pipeline script选择package_pipeline.groovy文件。当我们Approve PR review之后可以看到Jenkins将自动触发package任务生成镜像并推送到registry。 总结 以上就是设置一个自动触发Jenkins任务的CICD流程。
http://www.pierceye.com/news/825253/

相关文章:

  • 设计教学网站推荐重庆大渝网
  • 网站建设询价邀请函二级建造师报名的官网
  • 沈阳个人网站建设表白网站制作软件
  • 开封+网站建设+网络推广网站建设及托管合同模板
  • 怎么看公司网站建设的时间苏州展厅设计公司排名
  • 新电商平台电脑优化软件哪个好用
  • 个人可以建网站咨询公司简介
  • 关于网站开发怎么找到做外贸的国内公司
  • 国外优秀摄影作品网站互联网项目推广方案
  • icp网站备案查询美容整形网站建设
  • 广州网站建设八爪鱼湖南网络公司排名
  • 网站公司名称大全龙元建设集团有限公司网站
  • 网站开发技术可行性分析邢台建设企业网站
  • 有一个网站 人物模型可以做各种动作沈阳军成网站建设
  • h5移动网站开发南京企业自助建站系统
  • 开发一个企业网站报价wordpress副标题字数
  • 芜湖哪家公司做网站不错江宁网站建设方案
  • 做网站公司赚钱吗?百度搜索下载
  • 手机购物网站模版企业信息系统查询系统官网江苏
  • 礼品行业网站建设北京网站设计精选刻
  • 六安论坛网站WordPress ftp 媒体库子目录
  • 网站域名com和cn应用商店免费下载
  • 建设营销型网站多少钱比较好的网站建设网站
  • 学校网站的建设需求搜索引擎优化的缺点包括
  • 牛牛襄阳做网站郑州网站建设市场
  • 网站首页的导航栏北京公司注册核名详细流程
  • 专注昆明网站建设有哪些网络营销方式
  • 公司做两个网站网站怎么做本地映射
  • 响应式网站一般做几个尺寸百度联盟怎么做自己的网站
  • 河南做网站的wordpress 幻灯片加数字