小编cj *_*ero的帖子

作为Gitlab CI作业运行tox时权限被拒绝

我对Gitlab和Gitlab CI比较陌生(实际上是整个CI的事情),我已经在同一台机器上成功设置了我的Gitlab服务器和Gitlab CI服务器(很好,因为缺少备用服务器,而且几乎是因为我们的团队是在整个CI事情上还处于"beta"阶段).

我们现在有两个项目,一个角度项目(作为Web客户端)和一个烧瓶项目(作为Web服务).我已经在Gitlab和Gitlab CI中成功设置了我们的角度项目(效果很好,它运行我们的测试并完全构建脚本).

但是现在我也想设置我们的烧瓶项目,所以我们也可以应用持续集成,并且用于tox运行我们的测试脚本等(gulp用于我们的角度项目).

这是我们非常基本的tox.ini:

[tox]
skipsdist = True
envlist = py27

[flake8]
max-line-length = 79
exclude = venv, .tox
max-complexity = 10

[testenv]
deps=-rrequirements/testing.txt
changedir=tests
commands=py.test
Run Code Online (Sandbox Code Playgroud)

在我们的Gitlab CI Jobs中,我只是放在tox那里,因为我在我的开发服务器上执行的所有操作(这个设置在我的开发机器上工作正常,tox即使我不在运行中也只是运行),但我继续这样做运行此命令时,我的Gitlab CI上的权限被拒绝错误(见下文)

gitlab-ci-multi-runner 0.3.3 (dbaf96f)
Using Shell executor...
Running on hikari...
Fetching changes...
Removing .tox/
Checkouting 8325a2a2 as master...

tox
py27 create: /home/gitlab_ci_multi_runner/tmp/builds/runner-b0fcd933-    project-5-concurrent-0/gitlab.amici.com.ph/hris/xi-flask-starter-kit/.tox/py27
py27 installdeps: -rrequirements/testing.txt
ERROR: invocation failed (errno 13), args: [local('/home /gitlab_ci_multi_runner/tmp/builds/runner-b0fcd933-project-5-concurrent- 0/gitlab.amici.com.ph/hris/xi-flask-starter-kit/.tox/py27/bin/pip'),  'install', '-rrequirements/testing.txt'], cwd: /home/gitlab_ci_multi_runner /tmp/builds/runner-b0fcd933-project-5-concurrent-0/gitlab.amici.com.ph …
Run Code Online (Sandbox Code Playgroud)

gitlab tox gitlab-ci gitlab-ci-runner

5
推荐指数
0
解决办法
1314
查看次数

如何返回多个模型/表flask-sqlalchemy?

我想从多个表中获取数据,所以我用 sqlalchemy 做到了这一点:

from flask.ext.sqlalchemy import SQLAlchemy
db = SQLAlchemy()


a = db.aliased(Employee, name='Employee')
b = db.aliased(Person, name='Person')
c = db.aliased(PositionFulfillment, name='PositionFulfillment')
d = db.aliased(Position, name='Position')
e = db.aliased(PositionType, name='PositionType')
f = db.aliased(Party, name='Party')

data = db.session.query(a, b, e, f) \
    .join(b, a.entity_id == b.entity_id) \
    .join(c, a.entity_id == c.party_id) \
    .join(d, c.position_id == d.id) \
    .join(e, d.position_type_id == e.id) \
    .join(f, d.party_id == f.id) \
    .all()
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用这样的分页时:

page = request.args.get('page', 1, type=int)
count = request.args.get('count', 10, type=int)

a = …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask flask-sqlalchemy

3
推荐指数
1
解决办法
2967
查看次数