使用ansible-playbook实现自动打包上线

- hosts: ceshi

remote_user: root

tasks:

- name: "192.168.55.14主机打包cms线上环境的war包"

script: /data/script/build_xianshang_cms.sh

- name: "从192.168.55.14拷贝war包到jenkins上"

fetch:

src=/buildwar/xianshang/cms/cms.war

dest=/var/www/html/deploy/packages/cms/

- hosts: xianshang_01:xianshang_02

remote_user: root

tasks:

- name: "从jenkins上传输到(xianshang_01),(xianshang_02)"

copy:

src=/var/www/html/deploy/packages/cms/192.168.55.14/buildwar/xianshang/cms/cms.war

dest=/data/cms/war/cms.war

- name: "得到cms进程号"

shell: APP_PID=$(ps -ef|grep cms|grep ‘java‘|awk ‘{print $2}‘)

- name: "杀掉cms进程"

shell: kill $APP_PID

- name: "进入cms的bak目录"

shell: cd /data/cms/bak

- name: "移动cms文件夹到/tmp目录下"

shell: mv cms /tmp/

- name: "进入cms的webapps目录"

shell: cd /data/cms/webapps/

- name: "移动cms文件夹到/data/cms/bak备份"

shell: mv cms /data/cms/bak/

- name: "移动cms.war包到/tmp目录下"

shell: mv cms.war /tmp/

- name: "进入/data/cms/war 线上包目录"

shell: cd /data/cms/war/

- name: "将cms.war包移动到/data/cms/wepapps"

shell: mv cms.war /data/cms/webapps/

- name: "进入/data/cms/bin"

shell: cd /data/cms/bin

- name: "启动cms工程"

shell: bash startup.sh

时间: 2024-10-12 17:45:38

使用ansible-playbook实现自动打包上线的相关文章

运维自动化之ansible playbook一键化解决大量主机bash更新问题

今天发现有bash漏洞,但我这里近1000台服务器,为了方便.省时间,觉得使用ansible安装bash更新包,下面分享一下我的安装方法. 1.安装的playbook的内容 19:00:03 # cd /etc/ansible [email protected]:/etc/ansible 19:00:06 # cat update_bash.yml  --- - hosts: "{{ host }}"   remote_user: "{{ user }}"   ga

自动化运维工具ansible playbook和roles的使用

ansible的结构: Inventory 用来定义被控制端 Modules 定义被控制端可用的操作 Ad Hoc Commands 定义被控制端可以执行命令的 Playbook 批量运行的方式 Tasks: 任务:由各模块所支持执行的特定操作:可以通过ansible-doc module_name来查看帮助文档,非常详细 -m  user -a 'name= password=' Variables: 变量 Templates: 模板:(如执行httpd服务时,各节点上httpd的配置文件内容

iOS自动打包[转载]

敲一下enter键,完成iOS的打包工作[转载] http://ios.jobbole.com/84677/ 作为开发人员,免不了要为测试人员打包,让其测试.而打包这个行为是非常无聊的,特别是在每个新版本上线前一两天,总会出现一些莫名其妙的bug,然后这两天打包活动也是特别频繁.一天要重复好几次同样的动作,作为一个程序员,去做这样的事情,是完全无法容忍的.自动化打包,好在有你.所以今天就来谈一谈iOS应用自动化打包,但是本篇文章主要谈的是打单一的测试包,并不是在讲持续集成. xcodebuild

Ansible PlayBook语法(4)

title: Ansible PlayBook语法(4) date: 2018-12-02 10:53:24 tags: Ansible categories: Ansible copyright: true --- Ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.cfengine.chef.func.fabric)的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能,ansible是基于模块工作的,本身没有批量部署的能力,真正具有批量部署

VB.NET 自动打包程序

因为每次将编译好的程序提交时都要花费很多时间用来打包,因此我需要有一个让程序自动完成这些琐碎的工作. 首先说一下我的目标.我的C#程序(在本文中暂时称作Example.exe)编译后暂时存放在Debug目录中,该程序有两种形态:平台端和客户端,它们分别给不同的用户使用,这两个客户端的不同之处仅在与App.config(可以被看做一个XML文件)中的配置不同.打包时需要先使用NSIS脚本对Debug目录下的内容制作成安装包,再使用WinRAR将安装包进行压缩.除了两个安装包外,还需要提供一些文件放

在Mac和Window上配置android自动打包

配置自动打包脚本,首先就是要配置gradle命令,这里你假设已经有了android开发环境. Window上配置gradle: 选中计算机=>右键属性=>高级系统设置=>高级=>环境变量=>系统环境变量:找到path:在最后跟添加你的gradle的bin路径: 我这里gradle的路径: C:\Users\Administrator\.gradle\wrapper\dists\gradle-3.3-all\55gk2rcmfc6p2dg9u9ohc3hw9\gradle-3.

Ant自动打包

Ant使用 在ant的官网http://ant.apache.org进行下载后apache-ant-1.8.2包 解压(存放的路径不要有中文字符) 把ant里的lib设置到环境变量:E:\Android\apache-ant-1.8.2\lib 这样在命令行里就可以直接使用ant 学习资料:1.  ant使用指南.rar 2. 文档:apache-ant-1.8.2/docs/manual/index.html下的Ant Tasks à List of Tasks Ant的For循环 在ant的

iOS开发进阶 - 使用shell脚本自动打包上传到fir.im上-b

用fir.im测试已经好长时间了,感觉每次打包上传都很麻烦,想着是不是可以用脚本自动打包,在网上搜了一下确实有,下面总结一下如何使用脚本自动打包上传到fir.im,以及打包过程中遇到的问题和解决办法 相关资料和下载 首先是打包脚本的下载地址,这个是我找到的比较全的一个,里面有很多不同功能的shell脚本,亲测好用,传送门:https://github.com/heyuan110/BashShell?spm=5176.100239.blogcont5028.4.kFcLtR 还有关于fir指令的一

[原] Jenkins Android 自动打包配置(转)

一.Jenkins自动打包配置 目标:1. 自动打包:2. 自动上传:3. 友好下载 1. Jenkins简介 Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作. 减少重复劳动,减少人工成本. 持续.自动地构建/测试软件项目: 监控一些定时执行的任务: 2. Jenkins配置 添加git plugin和 role插件 设置人员权限,根据角色授权 启动访问http://ip/8080即可,见下3.1 开机自启脚本 添加git项目,配置脚本,见下3.2 项目打包脚本和3.