测试是代码生命周期的一个很重要的部分,对于开源软件一份测试报告可以提高使用者对此代码的信任度。 测试覆盖率能体现出测试中所覆盖的代码范围,也能体现测试用例的设计是否合理。 话虽如此,但是自从懂事以来就没有给自己的代码写过测试类。JUnit也是拿来当Jshell用(这么方便的@Test哪里去找) 测试环境 这次配合自己写的一个开源库,所以配置了一套完整的测试步骤。 travis-ci(因为这个项目直接托管在github上所以用travis会比较方便) maven(自动打包和测试) jacoco(导出测试报告) coveralls(第三方测试统计平台) 测试流程就...
Jenkins作为一个CI工具在各种插件的加持下可以变成一个十分强大的工具,可以实现对各个平台代码的持续集成和部署。 甚至可以通过一些方法对多个节点进行同步更新代码等操作。 例如if.uy 多节点ping服务,目前ping节点服务器使用python3编写。虽然代码只有短短几百行但是如果每次更新都得手动上服务器对代码进行更新的话无疑是一件浪费时间精力的实情。所以为了防止因更新太频繁而放弃更新的情况出现,需要使用一种方法一次更新多节点自动同步的方案。 提出方案 所以根据需求可以设计出以下几种方案: flask debug 模式热更新代码 Z...
大部分人拿来当作docker私有仓库的机器可能不止运行Harbor一个程序,因此很有可能80和443端口会被自己安装的Http程序所占用。而如果修改了Harbor的端口的话长长的镜像名字还得带上端口,看起来有点难受。 所以在此情况可以安装Nginx作为端口转发的工具,由他来控制80和443端口的访问。 设置Harbor 因为接下来设置nginx之后可以通过域名来区分入口,不需要依靠端口。就需要把Harbor的hostname修改。 修改harbor.cfg 不需要加入端口 hostname = docker.domain.com 修改`docker-co...
介绍 Harbor harbor是vmware提供的一个开源的企业级docker仓库方案,可以提供跨数据中心的景象同步备份 有很多地方提供免费的docker私有仓库,然而最合理的方式还是保存在自己私有仓库中。 Docker官方的hub也提供免费的私有仓库,但是只提供1个私有仓库。Gitlab也为没给项目提供免费的私有仓库,但是不清楚有什么限制。(Gitlab真有钱,无限免费仓库,2kMin的ci,还有这个貌似无限制的docker私有仓库) 安装registry 如果不需要网页管理什么的直接部署官方的registry容器就行了 dock...
最近无意间发现浙江移动4G已经能分配到IPv6并且能够正常的使用了。今年又不想再办宽带,学生卡无限流量套餐+ipv6开热点简直爽到,而且能够直接给小鸡分配v6就够了,不需要再额外购买v4的ip,还能剩下不少钱。 而且全国很多的地区都已经分配了ipv6,为自己的小鸡弄一个v6也是十分必要的。然而大部分的vps主机商都只包含v4,阿里云竟然也不提供v6.像国外这种体量的云主机提供商都支持v6了。 所以我们只能使用HE.NET的v6隧道来使用。 接下来我们需要进行以下操作。 申请隧道 首先打开[https://tunnelbroker.net/](https:/...
Hexo官方在文档中提到的部署文件方法只有同步到Gitpage、Heroku、OpenShift或者通过rsync、ftp同步到自己的服务器。 然而Windows下并没有rsync,之前为了用rsync同步文件只好使用Bash on Windows来用rsync。 如果只是为了用rsync就装了BOW实在是太浪费了,所以需要另一种方式来同步Hexo。 Hexo提供Git提交方式的插件。原本这个插件是用来同步到Git page的,但是我们也可以用Git方式push public文件夹内容到git仓库然后设置webhook向自己的服务器发送事件,服务器再pull下来就行了(虽然跟那插件没啥关...
QT 5.X以上的版本集成了多种数据库的驱动 QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7 大部分情况只需要QT继承的库就可以完成数据库操作。 小坑 然而在使用Qt createor mingw时会出现无法载入驱动QSqlDatabase: QMYSQL driver not loaded的提示,出现这种情况的原因是Mingw的版本与驱动libmysql.dll不兼容。所以使用VS的情况下能够与Mysql成功连接。 默认安装的mingw都是...
之前使用了Jenkins作为自动构建工具,然而还是需要自己一台VPS去安装Jenkins软件。 然而Gitlab提供CI/CD服务(Continuous Integration & Deployment)每月有2k Mins的免费额度,如果需要更多的事件可以购买Ultimate或者自己搭建Runner。 同时Gitlab也提供免费的registry,不知道有没有额度限制,直接一条龙服务都提供了(Gitlab 大法好)。除了上次删库的情况也没出现过啥问题,没有私有库数量的限制,拿来专做自己的私有库还是不错滴。 自动化脚本gitlab-ci.yml 创建gitlab-ci.yml保存在...
之前使用过jenkins+maven的方法自动构建项目并推送到tomcat的方法-->传送门 由于spring boot/cloud等的微服务的流行,人们更喜欢即开即用的方式。docker作为一个免费开源的容器,越来越多的应用也都会存在一个docker版本(比如jenkins、gitlab)。不过spring boot只需要一句命令就能启动也可以不需要创建一个docker版本。 安装 必须的系统环境: Jdk(推荐还是用Oracle JDK,Jenkins执行编译的过程还是需要Oracle JDK的...
自从开始写博客以来使用过免费收费的虚拟空间、vps,也用过wordpress、typecho、ghost、hexo。虽然之前也听过GitHub page的大名,但是总是觉得不如自己搭建来的方便。 然而在这几年下来因为主机商跑路,手贱把数据删了或者免费的服务实在是太慢等等的各种原因博客叶丢了好几次文章。幸好谷歌收录挺勤快慢慢的从快照复制黏贴最终还是补回来了。但也有几次全战都丢了,因此到现在更新博客的频率也越来越低。 在这几年的折腾经验中“自己的总是最不稳定的”这句话算是真理。因此现在看来把html的静态博客托管到GitHub page算是一个明智的选择。 hexo提供部署到github...