zoukankan      html  css  js  c++  java
  • jenkins实现以gitlab为代码仓库的构建

    • 简介

      前一篇随笔是安装jenkins的过程,比较简单,这一次说一下用jenkins配置以gitlab为代码管理仓库的maven项目的完整个构建过程,以及我碰到的一些问题。
      由于是maven项目,所以我们的linux系统还要安装maven,当然还有jdk
    • 软件安装

      1、jdk
        我安装的centos预安装了openjdk,这里我想用自己配置的jdk,在官网下了个1.8的,用Xftp工具把tar.gz文件拷贝到linux系统上,我是放在/usr/jdk下面,具体步骤如下
      #解压缩
      tar -zxvf jdk-8u201-linux-x64 .tar.gz  //后面的是具体的压缩包名,以实际为准
      #配置环境变量
      vi /etc/profile
      #在文件末尾添加一下内容
      export JAVA_HOME=/usr/jdk/jdk1.8.0_201  //路径以实际为准
      export JRE_HOME=${JAVA_HOME}/jre      //路径以实际为准
      export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
      export  PATH=${JAVA_HOME}/bin:$PATH

        安装完后运行java -version查看jdk版本,出现如下表示jdk配置成功



      2、安装maven
      官网下载maven3的压缩包,拷贝至linux解压缩,配置环境变量
      #解压缩
      tar -zxvf apache-maven-3.1.1-bin.tar.gz  //后面的是具体的压缩包名,以实际为准
      #配置环境变量
      vi /etc/profile
      #在文件末尾添加一下内容
      export M2_HOME=/usr/maven/apache-maven-3.1.1
      export  PATH=${JAVA_HOME}/bin:${M2_HOME}/bin:$PATH //path路径在原有jdk的基础上添加maven

        安装完之后运行mvn -version查看版本,如下表示maven配置成功


        修改maven配置

      //指定本地仓库地址
      <localRepository>/usr/repository</localRepository>
      
      //配置阿里云镜像,以防中央仓库下载缓慢
        <mirrors>
           <mirror>
           <id>alimaven</id>
           <name>aliyun maven</name>
           <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
           <mirrorOf>central</mirrorOf>
          </mirror>
        </mirrors>

      3、jenkins安装
        jenkins安装我在前一篇有安装讲解

    • 配置jenkins

      安装gitlab插件,登陆jenkins进入系统管理 -->插件管理,选择可选插件,搜索gitlab,选择安装Gitlab Hook Plugin、GitLab Plugin、Gitlab Authentication plugin,点击直接安装






      安装ssh插件,在插件管理搜索Publish Over SSH,点击直接安装


      工具配置,配置jdk和maven
      进入系统管理 -->全局工具配置







      配置全局路径

      进入系统管理 --> 系统设置,设置gitlab连接



        这里的token是gitlab用户的电子令牌,点击添加,选择token,ID自己定义一个

        

      gitlab生成电子令牌过程
        我这里是汉化版,点击设置(setting),弹出用户设置页面,选择左侧的访问令牌(access tokens),按下面填写,最后生成一个token







      配置publish over ssh这是用来jenkins构建项目之后通过ssh发送war包到实际的应用运行环境

      到这里就大致配置好了。


    • 新建项目进行构建

    • 新建任务





      选择之前配置的gitlab仓库连接

       

      配置项目地址







      添加构建
      选择执行shell脚本的方式构建项目






      编写shell脚本





      增加构建步骤,用来构建完成之后将编译好的文件通过ssh方式pulish到远程运行环境,我这里是本地的





      配置构建之后远程发布的配置

       保存操作,配置完成。

    • 构建  

      点击任务进入任务,点击立即构建,在下面的构建历史选择控制台输出,查看控制台信息





      编译成功。

    • 问题

       通过shell脚本编译的时候会报maven指令找不到,因为jenkins执行脚本是在/usr/bin下面找的,所以这里有两种方式。
      第一种

      在/usr/bin下面创建mvn命令的软链接

      //前面的是maven安装路径
      ln –s /usr/maven/apache-maven-3.1.1/bin/mvn   /usr/bin/mvn  

      第二种

      用我们前面配置的全局工具maven,配置任务的构建时,添加构建步骤选择invoke top-level maven targets,我这里显示的是“调用顶层maven目标”

       

  • 相关阅读:
    flink 使用processFunction函数的sideOutPut实现filter操作(java版)
    flink 状态编程之RichFlatMapFunction用法-java
    java flink之eventTime和window
    java spark sql 计算各个省份广告点击数的top3
    java spark 计算各个省份广告点击数的top3
    java streaming转换算子window,countByWindow
    java spark转换算子sortByKey
    java spark转换算子join、leftOuterJoin、rightOuterJoin、fullOuterjoin
    java spark转换算子groupByKey、reduceByKey、aggregateByKey
    java spark转换算子union、intersection、subtract
  • 原文地址:https://www.cnblogs.com/zhouyun-yx/p/10470124.html
Copyright © 2011-2022 走看看