Skip to content
Snippets Groups Projects
Commit 34f1fa46 authored by Henrik tom Woerden's avatar Henrik tom Woerden
Browse files

Start Server with a different user than root

parent 2c3f1122
No related branches found
No related tags found
No related merge requests found
...@@ -8,6 +8,7 @@ services: ...@@ -8,6 +8,7 @@ services:
- caosnet - caosnet
caosdb-server: caosdb-server:
image: "$CI_REGISTRY/caosdb:$CAOSDB_TAG" image: "$CI_REGISTRY/caosdb:$CAOSDB_TAG"
user: 999:999
depends_on: depends_on:
- sqldb - sqldb
networks: networks:
......
#!/usr/bin/env bash #!/usr/bin/env bash
# TODO add proper license # License:
# from githu: # From https://github.com/vishnubob/wait-for-it
# Use this script to test if a given TCP host/port are available # The MIT License (MIT)
# Use this script to test if a given TCP host/port are available
WAITFORIT_cmdname=${0##*/} WAITFORIT_cmdname=${0##*/}
......
...@@ -72,10 +72,11 @@ test: ...@@ -72,10 +72,11 @@ test:
#image: $CI_REGISTRY_IMAGE:latest #image: $CI_REGISTRY_IMAGE:latest
script: script:
- if [[ "$CAOSDB_TAG" == "" ]]; then - if [[ "$CAOSDB_TAG" == "" ]]; then
CAOSDB_TAG=latest; CAOSDB_TAG=dev-latest;
fi fi
- echo $CAOSDB_TAG - echo $CAOSDB_TAG
- docker login -u testuser -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker login -u testuser -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker pull $CI_REGISTRY_IMAGE:latest
- cd .docker - cd .docker
- DIR=`pwd` - DIR=`pwd`
- CERTPATH=$DIR"/cert" CAOSDB_TAG=$CAOSDB_TAG docker-compose up -d - CERTPATH=$DIR"/cert" CAOSDB_TAG=$CAOSDB_TAG docker-compose up -d
...@@ -83,7 +84,6 @@ test: ...@@ -83,7 +84,6 @@ test:
- rc=$? - rc=$?
- docker-compose down - docker-compose down
- exit $rc - exit $rc
- cd ..
build-testenv: build-testenv:
tags: [docker] tags: [docker]
......
...@@ -36,7 +36,7 @@ def test_https_support(): ...@@ -36,7 +36,7 @@ def test_https_support():
from sys import hexversion from sys import hexversion
if hexversion < 0x02070900: if hexversion < 0x02070900:
raise Exception("version " + str(hex(hexversion))) raise Exception("version " + str(hex(hexversion)))
elif 0x02999999 <hexversion < 0x03020000: elif 0x02999999 < hexversion < 0x03020000:
raise Exception("version " + str(hex(hexversion))) raise Exception("version " + str(hex(hexversion)))
try: try:
# python2 # python2
...@@ -72,5 +72,3 @@ def test_login_via_post_form_data_failure(): ...@@ -72,5 +72,3 @@ def test_login_via_post_form_data_failure():
"username": h.get_config().get("Connection", "username"), "username": h.get_config().get("Connection", "username"),
"password": "wrongpassphrase" "password": "wrongpassphrase"
}) })
...@@ -130,8 +130,10 @@ def test_record(): ...@@ -130,8 +130,10 @@ def test_record():
assert_false(rec3.is_valid()) assert_false(rec3.is_valid())
assert_equals( assert_equals(
rec3.get_property("SimpleBooleanProperty").get_errors()[0].description, rec3.get_property(
"Cannot parse value to boolean (either 'true' or 'false, ignoring case).") "SimpleBooleanProperty").get_errors()[0].description,
"Cannot parse value to boolean (either 'true' or 'false, "
"ignoring case).")
finally: finally:
try: try:
......
...@@ -60,7 +60,7 @@ def setup(): ...@@ -60,7 +60,7 @@ def setup():
def teardown(): def teardown():
try: try:
execute_query("FIND ENTITY WHICH HAS AN ID > 100").delete() execute_query("FIND ENTITY WHICH HAS AN ID >= 100").delete()
except Exception as e: except Exception as e:
print(e) print(e)
try: try:
......
...@@ -321,25 +321,27 @@ def test_query_select_from_with_wildcard(): ...@@ -321,25 +321,27 @@ def test_query_select_from_with_wildcard():
assert_equals(len(r.get_entity_by_name("TestRecord").get_properties()), 1) assert_equals(len(r.get_entity_by_name("TestRecord").get_properties()), 1)
assert_equals(len(r.get_entity_by_name("TestAnimal").get_properties()), 0) assert_equals(len(r.get_entity_by_name("TestAnimal").get_properties()), 0)
@with_setup(setup, teardown) @with_setup(setup, teardown)
def test_query_without_permission(): def test_query_without_permission():
query_def = "FIND TestExperiment WHICH HAS A TestAnimal = Pig" query_def = "FIND TestExperiment WHICH HAS A TestAnimal = Pig"
qt = db.QueryTemplate(name="TestPigExperiment",query=query_def).insert() qt = db.QueryTemplate(name="TestPigExperiment", query=query_def).insert()
db.administration._insert_user(name="test_user", password="secret_1q!Q", status="ACTIVE", email=None, entity=None) db.administration._insert_user(
name="test_user", password="secret_1q!Q", status="ACTIVE", email=None, entity=None)
db.configure_connection(username="test_user", password="secret_1q!Q") db.configure_connection(username="test_user", password="secret_1q!Q")
r = db.execute_query(query_def, unique=True) r = db.execute_query(query_def, unique=True)
assert_equals(r.name,"TestRecord") assert_equals(r.name, "TestRecord")
r = db.execute_query("FIND TestPigExperiment", unique=True) r = db.execute_query("FIND TestPigExperiment", unique=True)
assert_equals(r.name,"TestRecord") assert_equals(r.name, "TestRecord")
db.get_connection()._logout() db.get_connection()._logout()
db.configure_connection() db.configure_connection()
db.get_connection()._login() db.get_connection()._login()
e = db.Entity(id = qt.id) e = db.Entity(id=qt.id)
e.retrieve_acl() e.retrieve_acl()
assert_is_not_none(e.acl) assert_is_not_none(e.acl)
e.deny(username="test_user", permission="RETRIEVE:ENTITY") e.deny(username="test_user", permission="RETRIEVE:ENTITY")
...@@ -348,9 +350,9 @@ def test_query_without_permission(): ...@@ -348,9 +350,9 @@ def test_query_without_permission():
db.configure_connection(username="test_user", password="secret_1q!Q") db.configure_connection(username="test_user", password="secret_1q!Q")
r = db.execute_query(query_def, unique=True) r = db.execute_query(query_def, unique=True)
assert_equals(r.name,"TestRecord") assert_equals(r.name, "TestRecord")
r = db.execute_query("FIND TestPigExperiment") r = db.execute_query("FIND TestPigExperiment")
assert_equals(len(r),0) assert_equals(len(r), 0)
@with_setup(setup, teardown) @with_setup(setup, teardown)
......
...@@ -25,6 +25,9 @@ ...@@ -25,6 +25,9 @@
@author: fitschen @author: fitschen
""" """
from nose.tools import assert_equals, assert_is_not_none, assert_true # @UnresolvedImport
import caosdb as h
import os
from caosdb.exceptions import CaosDBException from caosdb.exceptions import CaosDBException
...@@ -49,11 +52,6 @@ Datensätzen ...@@ -49,11 +52,6 @@ Datensätzen
Description oder einer Zahl''' Description oder einer Zahl'''
import os
import caosdb as h
from nose.tools import assert_equals, assert_is_not_none, assert_true # @UnresolvedImport
def setup_module(): def setup_module():
try: try:
h.execute_query("FIND Complex*").delete() h.execute_query("FIND Complex*").delete()
......
[tox] [tox]
envlist= py27, py34, py35, py36, py37 envlist= py37
skip_missing_interpreters = true skip_missing_interpreters = true
[testenv] [testenv]
sitepackages=true sitepackages=true
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment