本文共 2058 字,大约阅读时间需要 6 分钟。
1.1在系统管理中的插件管理
1.2然后点击选插件,在右上角输入Git Parameter,找到Git Parameter后点击左下方的的直接安装
勾选"参数化构建过程",然后添加Git Parameter,配置如下
2.1在源码管理中添加(需要提前将公钥设置好)
2.2 参数化构建过程添加git参数 Git Parameter
填写name为release_version,下面使用ansible时需要
填写描述 版本号
2.3 参数化构建过程添加选择型参数 Choice Parameter
#!/bin/bashecho $moduleecho $release_versionBUILD_LOG=`git tag -n | grep $release_version | awk '{print $2$3}'` #获取tag注释信息version="{\"release_version\":\"$release_version\",\"group\":\"$module\"}"if test ! -z $release_versionthen cd /home/work/ansible_script/ && /bin/ansible-playbook -i host test_online.yml --extra-vars="$version"fi
5.1 Jenkins获取运行job的用户名
需要安装user build vars plugin 插件,然后就可以取到$BUILD_USER 变量。
user build vars plugin下载地址
:可以使用的用户变量:
Property | Default |
---|---|
BUILD_USER | Full name (first name + last name) |
BUILD_USER_FIRST_NAME | First name |
BUILD_USER_LAST_NAME | Last name |
BUILD_USER_ID | Jenkins user ID |
BUILD_USER_EMAIL | Email address |
在jenkins任务中使用构建变量:注意需要勾选 "Set jenkins user build variables."
构建环境添加if [ $? -ne 0 ];then cd /home/work/ansible_script && python wechat_alert.py @all $BUILD_USER "$module $release_version上线失败,请关注" $BUILD_URL $BUILD_LOG exit 1else cd /home/work/ansible_script && python wechat_alert.py @all $BUILD_USER "$module $release_version 已上线" $BUILD_URL $BUILD_LOGfi
../test_online.yml
---- hosts: '{ { group }}' remote_user: work become: True become_method: sudo vars: work_root_dir: /data/www module_name: test work_repo: git@gitlab_host/devops/test.git module_dir: ./ roles: - test_online
../roles/test_online
目录结构.├── defaults│ └── main.yml├── meta│ └── main.yml├── README.md├── tasks│ ├── deploy.yml # git相关操作│ ├── directory.yml # 创建目录│ ├── main.yml │ └── symlinks.yml # 需要软连的log 等其他目录└── vars └── main.yml
ansible-playbook内容可以查看
转载地址:http://pswno.baihongyu.com/