zoukankan      html  css  js  c++  java
  • maven+git+jenkins实现自动化构建、部署与持续集成

    =================================================================================

    JAVA微服务应用   jenkins配置 

    =================================================================================

     

    Exec command:

    #!/bin/bash
    cd /home
    p=`ps -ef | grep ftas-1.0 | grep -v grep | awk '{print $2}'`
    echo ${p}
    kill -9 ${p}
    sleep 2
    nohup /usr/java/jdk1.8.0_151/bin/java -jar ftas-1.0.jar >/dev/null 2>&1 &

    =================================================================================

     ftasFont (vue.JS+nodeJS)jenkins配置

    =================================================================================

      构建---执行shell--命令:

    echo $PATH
    node -v
    npm -v
    npm install
    npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver
    npm install
    npm run build
    cd dist
    rm -rf ftasFont.tar.gz
    tar -zcvf ftasFont.tar.gz *
    cd ../

     

    构建后操作:

    cd /home/html/ftasFont

    rm -rf ftasFont
    mkdir ftasFont

    tar -zxvf ftasFont.tar.gz -C ./
    rm -rf ftasFont.tar.gz

    =================================================================================

     错误解决:

    1. Error: EACCES: permission denied, mkdir '/var/jenkins_home/workspace/ftas-armor-ui/node_modules/node-sass/vendor'

    at Object.mkdirSync (fs.js:752:3)

    解决方案:  npm install --unsafe-perm 替代 npm install 

    echo $PATH
    node -v
    npm -v
    npm install --unsafe-perm
    npm install --unsafe-perm chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver
    npm install --unsafe-perm
    npm run build:prod
    cd dist
    rm -rf armor-ui.tar.gz
    tar -zcvf armor-ui.tar.gz *
    cd ../

    2.    npm ERR! missing script: build

     解决方案: npm run build:prod替代npm run build ,其实是指定要构建的环境,是开发还是预发布还是生产环境

    ===============================================

    其它参考

    ===============================================

    -注意linux下面的命令行,要将PATH声明出来

    export PATH=/apps/svr/maven/bin:/apps/svr/jdk7/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/apps/svr/phantomjs/bin:/root/bin:/srv/tools:/root/bin
    export INPUTRC=/etc/inputrc
    export PWD=/apps/dat/yourProjectName
    export JAVA_HOME=/apps/svr/jdk7
    export LANG=zh_CN.UTF-8
    export SHLVL=1
    export CLASSPATH=:/apps/svr/jdk7/lib/tools.jar:/apps/svr/jdk7/lib/dt.jar
    mvn -version
    cd /apps/dat/yourProjectName/
    git pull
    mvn clean
    mvn install
    cd /apps/svr/tomcat7/webapps/
    cp /apps/svr/tomcat7/webapps/yourProjectName.war /apps/tomcat_bak/yourProjectName$(date +%Y%m%d-%H%M%S).war
    rm -rf yourProjectName yourProjectName.war
    scp /apps/dat/yourProjectName/target/yourProjectName.war .

  • 相关阅读:
    给linux用户分配docker权限
    alpine安装docker
    linux开机自启动配置
    virtualbox vdi硬盘扩容
    树莓派更新软件源的脚本
    原生js选中下拉框中指定值
    linux环境tomcat开启远程调试
    Vue2 和 Yii2 进行前后端分离开发学习
    httpd.conf文件中找不到Deny from all这句,怎么配置多站点
    yii2.0 advanced 学习教程
  • 原文地址:https://www.cnblogs.com/sea520/p/4589124.html
Copyright © 2011-2022 走看看