• 如何创建一个项目,让gitlab自动触发jenkins进行构建


     前进是:你已经配置好jenkins+gitlab自动化布置了,这里只是常规构建新的项目时,需要做的配置,记录下来,以免忘了又着急

     参考这篇博客:

    https://www.jianshu.com/p/eeb15a408d88

    写的非常棒~谢谢前辈

    Jenkins 和 GitLab 上创建测试工程。在 Jenkins Dashboard 主页点击 新建任务,进入新建任务页面:

    在工程配置页面的 源码管理部分,输入 GitLab repo 的 URL,如下图:

    找到 构建触发器 的部分,勾选 Build when a change is pushed to GitLab 那一行:

    创建一个新的或选择一个已有的 GitLab 工程。然后选择 Settings -> Integrations,在 URL 一栏中输入前面保存的 GitLab CI Service URL,在 Secret Token 一栏中输入前面保存的 Secret token,然后选择需要 trigger Jenkins 工程执行构建的事件

    如果要测试jenkins和gitlab有没有连接成功

    点击 Test 下拉框中的 Push events

     

    点开特定调用的 View details,还可以看到这次调用的详细情况,如下图:

    这就测试jenkins和gitlab连接成功了

    接下来,如何使jenkins自动布署gitlab已经存在的项目呢

    首先,把gitlab上的项目克隆到服务器本地

    先创建一个文件夹存放git项目

    执行git命令:

    [root@67 gitProject]# git clone git@git.5i5j.com:kaifa/reponselogiccheck.git

    然后验证项目可以在服务器本地跑通

    先看看项目里的都有什么文件

    [root@67 gitProject]# cd reponselogiccheck/
    [root@67 gitProject]# ls

    我们测试jenkins构建a.py文件(构建成功,控制台会输出Hello World)

     [root@67 reponselogiccheck]# cat a.py
    print("Hello World")

    先来确定python3可执行文件所有的目录(配置jenkins构建job时要用)

    [root@67 reponselogiccheck]# whereis python3
    python3: /usr/bin/python3 /usr/local/python3

    再打印出a.py的绝对路径(第1个是我存放a.py文件的位置,第2个是什么意思,现在我还说不上来,这是jenkins构建时,产生的目录吧?)

    (配置jenkins构建job时要用)

    [root@67 reponselogiccheck]# find / -name a.py
    /home/wangju/gitProject/reponselogiccheck/a.py
    /root/.jenkins/workspace/testJenkins_gitlab/a.py

     我先确定脚本在shell命令下是可以执行的

    [root@67 local]# /usr/bin/python3 /home/wangju/gitProject/reponselogiccheck/a.py
    Hello World

    最后通过shell命令配置jenkins构建项目的地址

    选择已经配置好gitlab push代码自动触发jenkins构建的job

     

     

    我们试一下,修改a.py的内容,并将其push到gitlab上之后,jenkins是不是构建了最新的代码的呢?

    修改内容如下:

    保存文件

    将其push到gitlab上

    先cd /home/wangju/gitProject/reponselogiccheck到本地仓库目录

    执行

    git add .

    git status 查看是不是检测到了更新

    git commit -m "update a.py"

    git status

    将修改后的a.py推到gitlab

    git push

    push 成功了

    接下来就是验证jenkins有没有输出这句话了,好紧张,我现在不确定我这样的操作是不是对的

    jenkins自动构建代码了

    输出这句话了,yeah yeah yeah,good job well done~

  • 相关阅读:
    JavaScript观察者模式
    JavaScript装饰者模式
    使用uni-app开发小程序,关于小程序更新后与用户本地不会及时更新解决办法
    6.3 基于二分搜索树、链表的实现的集合Set复杂度分析
    解决uni-app props 传递数组修改后不能使用问题
    6.2 集合和映射--集合Set->底层基于链表实现
    6.1 集合和映射--集合Set->底层基于二叉搜索树实现
    【刷题记录
    【codeforces
    【loj
  • 原文地址:https://www.cnblogs.com/kaerxifa/p/10956136.html
Copyright © 2020-2023  润新知