比尔加登前端
brew-view的Python项目详细描述
brew view是啤酒花园应用程序的前端。它使用tornado为一些rest端点和angularjs应用程序提供服务,并通过节俭与啤酒花园后端(酒保)进行通信。
开始
以下步骤是从源代码启动和运行brew视图的最简单方法。
先决条件
- Python(2.7.9+或3.4+)
- node.js(稳定,6+),全局安装纱线
- 连接到MongoDB服务器
- 与RabbitMQ服务器的连接
启动并运行
rabbitmq和mongo的完整安装指南不在本文档的范围内。下面是一个小片段,如果您安装了docker,则可以启动并运行它。
$ docker run -d -p 27017:27017 --name bg-mongo mongo $ docker run -d -p 5672:5672 -p 15672:15672 --name bg-rmq rabbitmq:3-management-alpine
要在本地进行开发,需要注意的是,brew view是由tornado和angularjs应用程序支持的python api的组合。所以我们要启动他们两个!
$ git clone https://github.com/beer-garden/brew-view.git $cd brew-view $ make deps # just a simple way to do pip install -r requirements.txt and yarn install
启动javascript应用程序:
$cd brew_view/static $ yarn serve
现在启动python api:
$cd /path/to/brew-view $ python -m brew_view -c ./dev_conf/config.yml
太好了!现在一切都应该准备就绪了。在浏览器中访问http://localhost:8080/以签出它。按ctrl-c停止web服务器。
注意:值得注意的是,javascript应用程序在8080上运行,而python应用程序在2337上运行。
配置
安装时会附带一个conf/config.yml文件。它带有合理的默认值,但如果您愿意,可以随意更改它们。您需要在进行任何更改后重新启动Web服务器。
休息服务
brew view最明显的任务是为前端应用程序提供服务,但它也提供rest api。前端(和插件)使用这个api与啤酒花园的其他部分交互。如果您愿意的话,我们非常欢迎您直接使用rest api-您可以通过导航到about页面并单击检查来查找夸张的文档!按钮。
测试和代码覆盖率
你可以自己做测试。
Python
$ make test
这将运行python应用程序的测试。您可以使用tox对多个python版本运行:
$ make test-all
生成覆盖范围:
$ make coverage
我们使用flake8来起绒:
$ make lint
javascript
javascript应用程序有自己的Makefile,因此要运行这些命令,您需要在brew_view/static目录中。
自从切换到webpack以来,我们目前缺乏良好的javascript测试。我们希望在不久的将来能解决这个问题。您应该能够运行测试:
$ make test
运行eslint:
make lint
分布
创建brew视图发行版很简单。只需转到git根目录并运行以下命令:
$ make dist