在做项目的时候,我们希望我们的应用智能点。我们希望他能自动伸缩,重启等等。 下面先简单写点自动构建与质量管控的。
自动构建
这里项目的自动构建,自动部署我们可以用Jenkins去做。然后写点自动测试的代码,在这时候,就可以自动测试了。在自动测试这块,可以自己写测试用例,如果是UI的自动化测试,可以用selenium去做。
image.png image.png
关注安装这里就不写了,网上一大堆。机器能访问外网就很好装,离线安装可以费劲一点,另外汉化的可以直接在线安装他的插件
在安装好后,就是配置一些项目地址,项目构建,项目备份,部署,启动,发邮件等等一些操作。下面贴一些启动命令(这里没有备份,如果有需要的自己补充) 注意加上 BUILD_ID
#!/bin/sh
BUILD_ID=12345678
#------------------变量设置--------------------------# #项目jar PROJECT_NAME="hello-springboot-1.5.8.RELEASE.jar" #启动log START_APPEND_LOG="${WORKSPACE}/target/start_out.log" #owncharge.jar路径 PROJECT_JAR_PATH="${WORKSPACE}/target/${PROJECT_NAME}"
#------------------启动--------------------------# #------------ -判断文件是否存在------------------# echo "please waiting ...." #stop server关闭进程 PIDS=(ps -ef|grep ${PROJECT_NAME}|grep -v grep|awk {'print $2'}
) if [[ ${PIDS} ]] ;then for s in ${PIDS[@]} do kill -9 $s done fi
#启动项目 nohup java -jar ${PROJECT_JAR_PATH} > ${START_APPEND_LOG} 2>&1 &
#等待server启动时间 sleep 20
echo " server's process:" echo ps -ef | grep ${PROJECT_NAME} |grep -v grep
if [ $? -ne 0 ] ;then echo " server start fail....." exit 3 else echo " server start success....." fi
代码质量管控
在代码质量管控这块我们可以采用sonar去做
image.png image.png
这块没啥,安装好后,如果是meaven项目,直接运行mvn命令(ip,令牌什么的自行替换)
mvn sonar:sonar -Dsonar.host.url=http://x.x.x.x:9000 -Dsonar.login=xxxxxxxxxxxxxxxxxxxxxx
安装的话,不能以root启动,汉化也是直接安装插件
安全审计
在安全这块,工具还是挺多的。既然是做安全,那可能就是多个工具一起使用,尽可能的规避安全风险。例如Burp Suite,ZAP等(其他工具有点小贵,就不提了)
zap大概长这个样子,左边有了网站后就可以渗透测试了
注意:渗透测试的时候一定先获取授权,不然被当黑客抓了就不好了
image.png
zap不仅是我们手动点击触发测试,他还可以比较方便的集成到我们的环境中,自动测试。bdd-security项目就已经做了这件事,我们可以下载他帮助我们自动测试。
除了渗透测试之外,我们还可以依赖安全检查。如果是java maven项目,可以直接在pom中加如下配置,然后运行mvn dependency-check:check来做检查
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<version>4.0.2</version>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
在环境安全中,我们可以在网上找相应环境的checklist,挨个检查是否符合相关情况。
这个检查可以自己检查确认,或者在zabbix中配置相应的模版,以后把需要检查的机器配置该模版
链接:https://www.jianshu.com/p/d68285227ea2
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。