shell maven 构建 ansible发布项目

maven构建脚本

package_maven.sh

 使用例子:

./package_maven.sh project_name(项目名称) git@addr.git(项目git地址) install(构建命令 package/install)

  

#!/bin/bash
## 通过秘钥的方式
#拉取git
## 项目名
project_name=$1
##git 地址
project_addr=$2
##打包方式
mvn_type=$3
#指定git目录
git_dir=git
mkdir ${git_dir}
cd ${git_dir}
gitpath=`pwd`
project_full_path=${gitpath}/${project_name}
echo "project_full_path$project_full_path"



if [ -d $project_full_path ];then 
        echo "pull git"
        cd ${project_full_path}
        git pull $project_addr
  else
        echo "[git clone code]"
        git clone $project_addr
fi

cd $project_full_path
echo "start mvn $mvn_type"
mvn clean $mvn_type -Dmaven.test.skip=true

 

ansible 发布项目

ansible-playbook

- hosts: all
  tasks:
    - 
    - name: updata jar file
      synchronize: 
        src: '{{item.src}}'
        dest: '{{item.dest}}'
        owner: no
        checksum: yes
      with_items: 
        - { src: './jarname.jar',dest: '/home/webapp/jar',mode: 0600 }
        - { src: './conf/start.sh',dest: '/home/webapp/jar',mode: 0700 }
   
    - name: change mode
      shell: chown -R webapp.webapp  /home/webapp;chmod +x /home/webapp/jar/start.sh

    - name: restart
      become: yes
      become_method: su
      become_user: webapp 
      shell:
        cmd: /bin/bash start.sh
        chdir: /home/webapp/jar/
        executable: /bin/bash

 

posted @ 2022-03-11 15:12  cqzaier  阅读(62)  评论(0)    收藏  举报