diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | .gitlab-ci.yml | 26 | ||||
-rw-r--r-- | testing/tox.ini | 5 |
3 files changed, 32 insertions, 2 deletions
@@ -9,6 +9,7 @@ MANIFEST *.swp *.swo *.pyc +*.pyo *.log *.*~ *.csv @@ -21,4 +22,4 @@ scripts/profiling/sync/profiles testing/htmlcov testing/.coverage -testing/test-env
\ No newline at end of file +testing/test-env diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ee57c51c..6cafdf54 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,12 +1,16 @@ stages: - code-check - tests + - benchmark # Cache tox envs between builds cache: paths: - testing/.tox/ +before_script: + - echo "Running on ${HOST_HOSTNAME:=$(hostname)}" + code-check: stage: code-check image: leapcode/soledad:latest @@ -22,3 +26,25 @@ tests: script: - cd testing - tox -- --couch-url http://couchdb:5984 + +benchmark: + stage: benchmark + image: leapcode/soledad:latest + tags: + - benchmark + services: + - couchdb + allow_failure: true + script: + - cd testing + - curl -s couchdb:5984 + # You can provide a $NETRC variable containing the creds for your + # elasticsearch instance so it's protected from being leaked in the + # CI console + # We can't get it working inside docker for unknown reasons. + #- echo "$NETRC" > /root/.netrc && chmod 600 /root/.netrc + # + # Add $PYTEST_OPTS to pytest.ini to allow posting benchmark tests + # to an elasticsearch instance + - echo "addopts=$PYTEST_OPTS" >> pytest.ini && chmod 600 pytest.ini + - tox --recreate -e benchmark -- --couch-url http://couchdb:5984 diff --git a/testing/tox.ini b/testing/tox.ini index d959db0a..d800d988 100644 --- a/testing/tox.ini +++ b/testing/tox.ini @@ -62,7 +62,10 @@ install_command = pip3 install {opts} {packages} [testenv:benchmark] deps = {[testenv]deps} - pytest-benchmark + #pytest-benchmark>=3.1.0a2 + git+https://github.com/drebs/pytest-benchmark.git@use-netrc-file + elasticsearch + certifi commands = py.test --benchmark-only {posargs} [testenv:code-check] |