美文网首页
jenkins配置

jenkins配置

作者: zxhnext | 来源:发表于2019-05-15 12:09 被阅读0次
    image.png

    一、jenkins安装

    1. 查看服务器版本
    cat /etc/redhat-release
    CentOS Linux release 7.2.1511 (Core)
    
    1. 安装java
    yum install java
    

    但对于centos有个问题,不可以安装成gcj(GNU Compiler for the Java Programing Language),导致jenkins不工作,如果查看java版本类似如下,需要卸载,安装其他版本

    java -version
    java version "1.5.0"
    gij (GNU libgcj) version 4.4.6 20110731 (Red Hat 4.4.6-3)
    

    这时我们卸掉重新安装

    yum remove java
    

    4.搜索openJDK版本

    yum search openjdk
    #java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
    #java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment
    #java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
    

    5.安装openJDK

    #安装`1.8.0`的
    yum install java-1.8.0-openjdk
    
    1. 安装jenkins
    # 拉取库的配置到本地对应文件
    sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
    
    # jenkins.repo内容是这样
    [jenkins]
    name=Jenkins-stable
    baseurl=http://pkg.jenkins.io/redhat-stable
    gpgcheck=1
    
    # 导入公钥
    sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
    
    # 安装jenkins
    #`-y`参数:回答全部问题为是
    sudo yum -y install jenkins
    
    # 更新jenkins
    yum update jenkins
    
    # 赋予Jenkins在网站根目录的读写权限,我这边网站的根目录为/usr/share/nginx/hxkj
    chown -R jenkins.jenkins /usr/share/nginx/hxkj
    
    ###
    cd /etc/yum.repos.d/
    wget http://pkg.jenkins.io/redhat/jenkins.repo
    rpm --import http://pkg.jenkins.io/redhat/jenkins.io.key
    yum install -y jenkins
    ###
    
    cat /etc/sysconfig/jenkins | more
    

    可以获得几个重要配置项目信息

    JENKINS_HOME="/var/lib/jenkins",存放jenkins 配置及工作文件
    JENKINS_PORT="8080",jenkins默认8080端口
    

    2.配置文件夹

    # 这个位置挺重要
    ls /var/lib/jenkins
    

    有jobs、logs、plugins等文件夹及文件若干。勿乱删
    这次主要看了看plugins文件夹,所有插件都在里面,如插件ssh-slaves,会有一个ssh-slaves文件夹及ssh-slaves.jpi。
    当某个插件未安装成功时,会有一个以.tmp结尾的文件

    3.日志
    logs相关两个位置:
    /var/lib/jenkins/logs有logs,暂时看来没记录啥,以后再追。
    /var/log/jenkins/jenkins.log,记录了插件安装等日志,失败信息原因等很清晰,重要

    三、启动&配置

    1.启动服务

    # service jenkins start
    systemctl start jenkins
    # 重启
    systemctl restart jenkins
    

    2.浏览器访问

    IP地址:8080
    

    3.获取管理员密码
    按提示,去/var/lib/jenkins/secrets/initialAdminPassword,复制贴进去,continue

    4.选择安装方式
    默认推荐吧,左边的。第二个自定义插件,如果知道需要什么插件,插件都是干嘛的,再选custom吧

    5.等待插件安装
    如果正常,没啥说的。如果像这样,一些插件失败了,刷新页面,下一步。失败的插件后来再装。


    image.png
    1. 卸载jenkins
      在某次自动安装插件时异常了一大片,刷新也没出现下一步,等待许久无果,删了重装
    rpm -e jenkins
    

    这时会有一些残留的文件分散在各地

    find / -iname jenkins | xargs -n 1000 rm -rf
    

    文章摘自:https://segmentfault.com/a/1190000007086764

    三、配置项目

    我们首先来配置Publish Over SSH
    该插件主要是通过SSH连接其他Linux机器,远程传输文件及执行Shell命令。
    公共配置
    Passphrase:密码(key的密码。如果有设置)
    Path to key:key文件(私钥)的路径
    Key:将私钥复制到这个框中
    Disable exec:禁止运行命令
    注意:一般来说,我们会采用同每一个SSH Server单独配置的方式,因此公共配置部分一般不进行设置

    私有配置
    SSH Server Name:标识的名字,可随便取
    HostName:需要连接ssh的主机名或IP地址
    Username:SSH连接所使用的用户名
    Remote Directory:用SSH连接后的远程根目录,这个目录是必须存在的,Jenkins不会自动创建目录。Jenkins会将文件远程复制到该目录。(注意:SSH连接的用户需要有权限才可以创建、删除、移动文件及文件夹)
    Use password authentication, or use a different key:使用密码认证或密钥认证

    私有配置的高级
    Port:SSH连接端口号(默认为22)
    Timeout (ms):连接超时的时间,单位以毫秒计算
    Disable exec:禁止exec执行命令
    Test Configuration:测试配置是否成功

    提交docs文档:


    image.png

    提交到服务器:


    image.png

    Transfer Set Source files:需要上传到应用服务器的文件(注意:相对于工作空间的路径,可填写多个,默认用逗号分隔)
    Remove prefix:去掉前缀(只能指定Transfer Set Source files中的目录)
    Remote directory:可选的目标文件夹。如果文件夹不存在,会创建文件夹。
    Exec command:在远程服务器将要执行的命令。在远程SSH传输执行后,才执行这里的脚本命令
    高级选项:
    Exclude files:排除的文件(在传输目录的时较有用,使用通配符,例如:/.log,/.tmp,*.txt/)
    Pattern separator:分隔符(配置Transfer Set Source files的分隔符)
    No default excludes:禁止默认的排除规则
    Make empty dirs:此选项会更改插件的默认行为。默认行为是匹配该文件是否存在,如果存在则创建目录存放。选中此选项会直接创建一个目录存放文件,即使是空目录。
    Flatten files:只上传文件,不创建目录(除了远程目录)
    Exec timeout (ms):运行脚本的超时时间(毫秒)
    Exec in pty:模拟一个终端执行脚本
    Add Transfer Set:增加一个传输配置

    四、向GitHub提交代码时触发Jenkins自动构建

    参考文档:https://blog.csdn.net/boling_cavalry/article/details/78943061

    五、测试用例

    注意我们编写的测试用例一定要有退出,否则会堵死
    jenkins process.exit(1); 表示错误退出
    process.exit(); 或 process.exit(0);代表正常退出

    相关文章

      网友评论

          本文标题:jenkins配置

          本文链接:https://www.haomeiwen.com/subject/kmcnvqtx.html