zoukankan      html  css  js  c++  java
  • [Jenkins]详细说说 Jenkins 配置那些事

    对于 Jenkins 的操作来说,搭建什么的我觉得没啥难度(如果觉得有难度,我觉得应该是没看我这篇文章:[Jenkins]CentOS7下Jenkins搭建),困难在于配置文件怎么写.这篇文章详细来说说.
    先说一下,这些配置只是起参考价值,具体还是需要根据自己的情况来.
    对于后端来说,配置文件主要在构建之后需要执行的操作( # 后面为注释内容)

    #!/bin/sh
    tomcat_path=/usr/local/tomcats/tomcat-test      	 #定义 tomcat 的位置
    project_web=$tomcat_path/test.war					 #定义项目打包位置
    if [ -f $project_web ] ;then 
    	echo -- stop tomcat
    	#kill tomcat pid
    	pidlist=`ps -ef | grep tomcat-test | grep -v grep | awk '{print $2}'`			#查看是否有进程正在运行
    	if [ "$pidlist" = "" ]								#没有进程在运行,则提示
    		then
    		 echo "no tomcat pid alive!"
    	else													#有进程在运行,杀掉
    	   echo "tomcat Id list :$pidlist"
    	   kill -9 $pidlist
    	   echo "KILL $pidlist:"
    	   echo "tomcat stop success"
    	fi 
    	
        echo -- 正在部署$project_web									#将进程杀掉之后,重新进行部署
        if [ -f $tomcat_path/webapps/test.war ] ;then			#查看 /webapps 目录下是否有以前的 war 包,如果有,删掉
            rm -f $tomcat_path/webapps/test.war
            rm -rf $tomcat_path/webapps/test
            echo -- 正在删除$project_web
        fi 
            cp $project_web $tomcat_path/webapps/test.war	#将新生成的 war 包复制到 /webapps 目录下
        # start tomcat
        echo $tomcat_path
        #sleep 5
        export JAVA_HOME=/usr/java/latest
        #$tomcat_path/bin/startup.sh
        ${tomcat_path}/bin/startup.sh 
    else 
    echo $BUILD_ID - 未找到$project_web
    fi
    

    对于前端来说,主要就是需要注意一下前端特有的打包方式:

    npm install --unsafe-perm
    ng build --prod --env=test --output-path=typing-dev --base-href ./
    

    对于 k8s 来说,需要在构建时创建事件:

    #!/bin/sh -l 
    
    examimage_path=reg.zll.com/library/test:1.0.0				#定义镜像在 harbor 上的位置
    
    cp test-web/target/test-web.war test-web/src/profiles/k8s_prod/test-web.war		#将 war 复制到目标目录下
    cd test-web/src/profiles/k8s_prod			#进入目标目录
    docker build -t $examimage_path .			#开始创建新的镜像,注意后面还有一个".",要不然命令是不会生效的
    docker push $examimage_path				#将构建好的镜像推到 harbor 上面去
    echo '推送镜像到harbor'
    
    #删除本地镜像
    docker rmi -f $examimage_path			#推送成功之后,将本地镜像删除
    
    #k8s部署
    echo '开始部署'
    kubectl delete -f $WORKSPACE/test-web/src/profiles/k8s_prod/.			#将本地的都删除
    
    
    echo $WORKSPACE
    kubectl create -f $WORKSPACE/test-web/src/profiles/k8s_prod/.		#部署最新的
    

    以上就是我接触到的配置文件常用方法,希望能够帮助到你~
    感谢您的阅读

  • 相关阅读:
    将"089,0760,009"变为 89,760,9
    单向循环链表
    双链表复习
    【C语言】scanf()输入浮点型数据
    【C语言】一元二次方程(求实根和虚根)
    输入一个三位正整数,输出百位数,十位数,个位数
    输入身份证号,输出出生日期
    比较四个数的大小
    比较三个数的大小
    比较两个数的大小
  • 原文地址:https://www.cnblogs.com/zll-0405/p/12534111.html
Copyright © 2011-2022 走看看