当Git分支被更新时,自动部署您的项目。

deployserver的Python项目详细描述


通过github或bitbucket webhooks更新git分支时自动部署项目。

用法

从pip安装deployserver。

$ pip3 install deployserver

要启动第一个autodeploy守护进程,需要在项目中创建deploy.py脚本文件。

importdeployserverdeployserver.init({'server_address':'http://mydomain.com','port':1234,'deploy':'cd /var/www/myProject;' \
              'git pull;'})

使用多个分支启动自动部署

importdeployserverdeployserver.init({'server_address':'http://mydomain.com','port':1234,'branches':[{'name':'master','script':'/var/www/myProject/master-deploy.sh'},{'name':'deploy/test','script':'/var/www/myProject/test-deploy.sh',},{'regexp':r'feature/.*','script':'/var/www/myProject/feature-deploy.sh'}]})

然后你需要运行这个脚本。

$ python3 deploy.py

如果要在后台运行autodeploy后台程序,请使用screen。

$ screen -dmS deployserver_myProject python3 deploy.py

屏幕文档:https://www.gnu.org/software/screen/manual/screen.html

初始参数

要启动DeployServer,需要params dict。

服务器地址:字符串

使用http协议输入此服务器的域名。

'server_address':'http://mydomain.com'
'server_address':'http://8.8.8.8'
'server_address':'http://0a1b2c3d.ngrok.io'

端口:整数

部署服务器将侦听此本地端口。

'port':2345

展开:字符串

应在分支更新时启动的bash命令序列。

'deploy':'cd /var/www/myProject;' \
          'git pull;'
'deploy':'/var/www/myProject/deploy.sh'

(可选)分支:字符串

哪个分支推送事件应该启动部署功能。

# default'branch':'master'
'branch':'current-sprint'
'branch':'ver2'

(可选)uri:string

回调uri。

# default'uri':'/callback'
'uri':'/'

(可选)secret_token:string

秘密令牌。检查是否已设置。

# default'secret_token':None
'secret_token':'a96529a4af7864e7f6e11035d10b7db5'

要求

  • python>;=3.5
  • aiohttp
  • 异步

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么程序显示空结果?   java应用程序在测试设备上调试时工作正常,但在发布版apk中没有,它没有获得post。来自firebase的类变量   java Android:从主活动按钮确定在listview中选中哪个复选框   在Spring中添加@OneToOne注释时启动ApplicationContext时发生java错误   用JAVA Android实现矩阵计算的最快方法   SpringJava语义有没有更好的编写方法?   java从hashmap中减去两个值后返回最小差值的键?   Java中的静态初始化顺序:Netty 4.0.7的例外   java如何检查用户输入是否为字符串   循环Java计数单词索引   java如何使用以下代码将视频流传输到Android异步Http服务器?   java如何在jtable的所有行中循环   java如何使用maven将unicode插入mysql   java使用安卓加速远程数据检索   java试图模拟麦克风(javax.sound.sampled)   swing SwingWorker从不归还任何东西?(爪哇)   首次在Android Studio上未加载java LibGDX文件   java如何在多个Mysql服务器上设置限制和偏移?   如何防止从java连接到mongodb时登录控制台?