在 Coding 中使用 webhook 部署应用(Jenkins)

准备工作

  1. 在 Coding 中创建个人项目
  2. 在服务器中部署Docker、Jenkins等相关服务

一步一步搭建

  1. 安装相应Jenkins插件 coding-webhook

通过单一流水线的方式, 可设定Coding触发条件

  1. 在项目中配置 Jenkinsfile
pipeline {
    agent { docker 'kkarczmarczyk/node-yarn:latest' }
    stages {
        stage('build') {
            steps {
                sh 'yarn --version'
                sh 'yarn'
                sh 'yarn build'
                sh 'ls'
                sh 'pwd'
            }
        }
    }
}
  1. 配置Jenkins

创建一个单分支流水线

配置触发器

记住 Coding WebHook 地址

在Coding中配置部署公钥

配置管道

  1. 配置Coding
  1. 测试

本地修改代码后, 提交到 Coding, 打开 Jenkins 管理页面, 可以看到构建成功:

通过Coding发起合并请求时构建

选择 "收到 Merge/Pull Request 事件时触发构建", 点击右边的问号, 看到提示:

收到 merge/pull request 事件时触发构建。
注意: 这个选项需要一些额外的配置才能工作:
1. 打开任务的 配置 页面
2. 进入 源码管理
3. 选择 Git, 进入 高级, 设置 Name 为 origin, 然后:
如果是私有项目, 设置 refspec 为 +refs/heads/*:refs/remotes/origin/* +refs/merge/*/MERGE:refs/remotes/origin/merge/*
如果是公开项目, 设置 refspec to +refs/heads/*:refs/remotes/origin/* +refs/pull/*/MERGE:refs/remotes/origin/pull/*
4. 点击 应用
  • 在 动作 (action) 中输入 merge
  • 在 按名称过滤可以触发此任务的分支 中输入 master

在 Pipeline > Repositories > Refspec 中配置:

name: origin Refspec: +refs/heads/:refs/remotes/origin/ +refs/merge//MERGE:refs/remotes/origin/merge/

参考资料

MIT Licensed | Copyright © 2018-present 滇ICP备16006294号

Design by Quanzaiyu | Power by VuePress