Webhooks
在校生需要鼓励,奖励小弟一个 star 可以去 https://github.com/xjtushilei/Webhooks
刚学 springboot 的也可以参考该工程。哈哈。
java 执行预设命令,通过 http 调用,兼容 linux 和 windows。
该小工具的问世,主要是有目的而来的。我通过该项目进行博客,和别人在我服务器上的另一个项目的部署更新,只需要提交到 git,自动触发 webhooks,来 post 访问我的 api,则网站自动更新,不失为一种高效的自动化部署方案。
使用方法
前期准备
- 准备数据库 mysql 5.x 以上,创建一个数据库
commond
- 数据库配置文件位置
src/main/resources/application-prod.properties
根据情况修改
spring.datasource.url=jdbc:mysql://localhost:3306/command?useUnicode=true&characterEncoding=utf-8
spring.datasource.username=command
spring.datasource.password=command
编译安装
- 服务器安装 mvn3.x,java1.8 ,tomcat8.5 以上
mvn package
执行编译打包,将 target 目录下的 war 包放入 tomcat 启动,注意 logs 是否报错
使用
- 在之前的数据库里,看到一张表,然后打开它,创建 指令 name 和 指令 command,如 name:“mvn” command:“mvn -v”
- 远程调用:
- linux 下 post 访问:
http://ip:port/execLinux/{name}
会自动触发该指令。 见下面例子。 - windows 下 post 访问:
http://ip:port/execWin/{name}
会自动触发该指令。 见下面例子。
举例
远程调用:
http://ip:port/execLinux/mvn
且数据库里存了“mvn”命令对应的是“mvn -v”,则执行得到的结果是:
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /home/ubuntu/apache-maven-3.3.9
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /home/ubuntu/jdk1.8.0_131/jre
Default locale: en_US, platform encoding: ANSI_X3.4-1968
OS name: "linux", version: "4.4.0-53-generic", arch: "amd64", family: "unix"
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于