Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
feudal
feudalBackend
Commits
9a387256
Commit
9a387256
authored
Feb 21, 2020
by
Lukas Burgey
Committed by
lukas.burgey
Mar 31, 2020
Browse files
Add ci
parent
7ddca5dd
Changes
3
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
0 → 100644
View file @
9a387256
image
:
localhost:5000/feudalbackend
services
:
-
mysql:5.7
stages
:
-
test
-
deploy
variables
:
MYSQL_USER
:
dev
MYSQL_PASSWORD
:
dev
MYSQL_ROOT_PASSWORD
:
dev
test
:
stage
:
test
script
:
-
cd $CI_PROJECT_DIR
-
pytest --ds=feudal.docker_settings
Dockerfile
0 → 100644
View file @
9a387256
FROM
python:3.6
ENV
DJANGO_SETTINGS_MODULE feudal.docker_settings
RUN
apt-get update
&&
apt-get
install
-y
--force-yes
mc nano htop python python-pip netcat gettext
&&
rm
-rf
/var/lib/apt/lists/
*
RUN
mkdir
/code
WORKDIR
/code
COPY
requirements.txt /code/
RUN
pip
install
--upgrade
pip
RUN
pip
install
-r
requirements.txt
CMD
["bash"]
feudal/docker_settings.py
0 → 100644
View file @
9a387256
import
os
import
sys
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR
=
os
.
path
.
dirname
(
os
.
path
.
dirname
(
os
.
path
.
abspath
(
__file__
)))
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG
=
True
DEBUG_AUTH
=
False
DEBUG_PUBLISHING
=
False
DEBUG_CREDENTIALS
=
False
ALLOWED_HOSTS
=
[
'feudal-dev.scc.kit.edu'
,
]
AUTH_USER_MODEL
=
'backend.User'
# cookie settings
SESSION_COOKIE_AGE
=
3600
SESSION_COOKIE_SECURE
=
True
SESSION_COOKIE_HTTPONLY
=
False
APPEND_SLASH
=
False
WSGI_APPLICATION
=
'feudal.wsgi.application'
TEST_RUNNER
=
'django_nose.NoseTestSuiteRunner'
CSRF_HEADER_NAME
=
'HTTP_X_CSRFTOKEN'
# http parameter for the idp hint redirect
HTTP_PARAM_IDPHINT
=
'idp'
CORS_ORIGIN_ALLOW_ALL
=
True
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.11/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY
=
'9!t5e8b284qqyg4yv$-h&x1&2g&%2r%7srn=sx+3@%vyq7@1rd'
# Application definition
ROOT_URLCONF
=
'feudal.backend.urls'
OIDC_REDIRECT_URI
=
'https://feudal-dev.scc.kit.edu/auth/callback'
STATIC_URL
=
'/static/'
STATIC_ROOT
=
'/var/www/feudal/django-static'
INSTALLED_APPS
=
[
'django.contrib.admin'
,
'django.contrib.auth'
,
'polymorphic'
,
'django.contrib.contenttypes'
,
'django.contrib.sessions'
,
'django.contrib.messages'
,
'django.contrib.staticfiles'
,
'rest_framework'
,
'feudal.backend'
,
'corsheaders'
,
'django_mysql'
,
'django_nose'
,
]
MIDDLEWARE
=
[
'django.middleware.security.SecurityMiddleware'
,
'django.contrib.sessions.middleware.SessionMiddleware'
,
'corsheaders.middleware.CorsMiddleware'
,
'django.middleware.common.CommonMiddleware'
,
'django.middleware.csrf.CsrfViewMiddleware'
,
'django.contrib.auth.middleware.AuthenticationMiddleware'
,
'django.contrib.messages.middleware.MessageMiddleware'
,
'django.middleware.clickjacking.XFrameOptionsMiddleware'
,
]
TEMPLATES
=
[
{
'BACKEND'
:
'django.template.backends.django.DjangoTemplates'
,
'DIRS'
:
[],
'APP_DIRS'
:
True
,
'OPTIONS'
:
{
'context_processors'
:
[
'django.template.context_processors.debug'
,
'django.template.context_processors.request'
,
'django.contrib.auth.context_processors.auth'
,
'django.contrib.messages.context_processors.messages'
,
],
},
},
]
DATABASES
=
{
'default'
:
{
'ENGINE'
:
'django.db.backends.mysql'
,
'NAME'
:
'feudal'
,
'USER'
:
'root'
,
'PASSWORD'
:
'dev'
,
'HOST'
:
'mysql'
,
}
}
# AUTHENTICATION AND AUTHORIZATION
AUTHENTICATION_BACKENDS
=
[
'feudal.backend.auth.OIDCTokenAuthBackend'
,
'django.contrib.auth.backends.ModelBackend'
,
]
REST_FRAMEWORK
=
{
'DEFAULT_AUTHENTICATION_CLASSES'
:
[
'rest_framework.authentication.SessionAuthentication'
,
'feudal.backend.auth.OIDCTokenAuthHTTPBackend'
,
],
'DEFAULT_PERMISSION_CLASSES'
:
[
'rest_framework.permissions.IsAuthenticated'
,
],
}
# Password validation
AUTH_PASSWORD_VALIDATORS
=
[
{
'NAME'
:
'django.contrib.auth.password_validation.UserAttributeSimilarityValidator'
,
},
{
'NAME'
:
'django.contrib.auth.password_validation.MinimumLengthValidator'
,
},
{
'NAME'
:
'django.contrib.auth.password_validation.CommonPasswordValidator'
,
},
{
'NAME'
:
'django.contrib.auth.password_validation.NumericPasswordValidator'
,
},
]
# Internationalization
LANGUAGE_CODE
=
'en-us'
TIME_ZONE
=
'Europe/Berlin'
USE_TZ
=
True
USE_I18N
=
True
USE_L10N
=
True
# LOGGING
AUDIT_LOG_LEVEL
=
25
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment