一、devops:
dev开发 ops运维:将研发体系整个流程打通。其实就牵涉到持续地去完成研发体系中各个环节的任务。
最重要的技术点:持续集成(CI/CD) CI:持续集成,CD:持续部署,怎么样把各个环节联系到一起流畅完成。
目的:为了保障项目在任何时候都能有个比较稳定的版本使用。
场景:
1)版本上线的时候,能够多次用持续流程进行版本的发布,如果有多个分支版本,可以快速地完成分支版本的发布。
2)daily build 每日构建,保证每天都能有一个新的版本能够临时顶上。至少这个版本能够完成基本的冒烟验证(通过自动化测试完成)。
持续集成的环节:
开发:
1)写代码。代码管理
git,svn等等源码管理工具,用于完成各个开发代码的整合。
2)代码变成可执行程序 编译打包。
maven和gradle完成代码的编译打包。
打包成一个war包(web application archive)
测试:
1)测试环境部署。
2)执行测试。
3)单元测试、自动化测试的引入。
运维:
1)生产环境的部署和维护。
二、持续集成
集成:将流程整合到一起一次性完成
持续:在整个项目周期之内,持续不断地去完成这个流程的自动化执行。
持续集成的工具:jenkins
jenkins安装
1、创建一个构建任务。
2、源码管理,将开发写好的代码拉取下来。
从git仓库里面拉取代码。
git clone 下载仓库中开发编写的最新代码。
工作中一般找git管理员获取代码仓库的路径。有可能需要加权限。
下载到的位置是.jenkins的工作空间对应构建任务名文件里面。
开发在自己机器上写代码->提交到git仓库服务器->从git仓库服务器下载到jenkins服务器上。
3、编译打包。
将完整的项目代码,通过maven的clean和package操作完成打包。
构建操作中,增加invoke top-level maven targets,调用clean和package操作。
会在项目目录中生成一个target目录,里面就会有项目的war包。
4、环境部署。
通过ssh连接服务器,将war包部署到tomcat中,并且启动tomcat。
1)Jenkins中安装publish over ssh插件。
在jenkins顶层菜单manage jenkins中,找到manage plugins。
在可选插件中,搜索publish over ssh,进行安装。
2)通过publish over ssh插件完成和测试服务器的连接。
回到manage jenkins中,找到configure system。
找到publish over ssh插件配置
新增一个ssh server填写ip 用户名 密码 指定远程操作目录。
最后用test configuration 进行一下连接测试,出现success说明连接成功。
3)上传war到测试服务器,并且放到tomcat的webapps目录下。
Source files是上传文件,路径是相对于jenkins的工作目录即可。
5、自动化测试:
通过框架编写实现自动化测试,最终自动化测试通过打包出来的jar完成执行即可。
jenkins中执行自动化测试,通过cmd命令执行jar包运行就好。