jenkins 安装插件:
系统管理 --》 插件管理 ----》 可选插件--》
安装 sshplugin,gitlab 插件:
1、jenkins 新建一个任务:
2、生成一个token , 为push 到gitlab 时,触发jenkins 任务。
4、配置 jenkins 任务:
5、构建触发器 : 将token 填入 (我这里因为第一次生成的 token , 没有复制 ,我又生成了另一个)
生成 secret token :
6、构建环境:
7、在jenkins 拿到代码时要先 进行测试
GIT LAB 篇:
如果是新 搭建的 gitlab : 没有 gitlab root 密码
下图 可以设置
root 用户登录
进入到 admin 区域
settings 下设置: 保存修改
添加 Webhook:
要 ssl , jenkins 没有 https
测试能不能触发 jenkins 的devops 任务:
jenkins 配置 Gitlab :::
git lab 先生成 api access Token:
测试 push events ,jenkins 会自动构建:
jenkins:
构建 成功:
jenkins 远程启动的脚本 :
/opt/devops/build.sh
root@77e495b7d467:/# cat /opt/devops/build.sh #!/bin/bash echo "Start build snake django project, please wait~" git pull python manage.py test python manage.py makemigrations python manage.py migrate supervisorctl restart devops
访问:
------------------------------------------------------------------------------------------------------------------------------
在开发机器 clone 代码 :
root@4782dc866b09:/opt# cd devops/ root@4782dc866b09:/opt/devops# git add web/views.py root@4782dc866b09:/opt/devops# git commit -m "web/views.py" [master 70a3f19] web/views.py 1 file changed, 1 insertion(+), 1 deletion(-) root@4782dc866b09:/opt/devops# git push Username for 'http://172.17.0.3': tony@nb.com Password for 'http://tony@nb.com@172.17.0.3': Counting objects: 4, done. Delta compression using up to 2 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (4/4), 361 bytes | 0 bytes/s, done. Total 4 (delta 3), reused 0 (delta 0)
自动构建:
页面: