Skip to content

Info-ag/labplaner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Labplaner

Build Status

Labplaner is a web application specifically build for the Life-Science Lab Heidelberg.
It combines multiple polls into one to avoid conflicts and provides you with an optimal date for the next meeting.

Requirements and Setup

  • Python >= 3.6
  • PostgreSQL or SQLite
  • redis

You might want to use virtualenv to set up a local development enviroment:

# install virtualenv
pip3 install virtualenv
# .. or pip or python -m pip or python3 -m pip

# create a virtual enviroment
virtualenv venv

. venv/bin/activate

Install dependencies:

pip install -r requirements.txt

Configuration

Inside the config folder, you need the following files:

  • base.cfg for your base configuration, that is shared across dev, test and prod
  • dev.cfg for your development specific configuration
  • test.cfg for your test specific configuration
  • prod.cfg for your production specific configuration
  • secret.cfg (optional) for secrets NEVER INCLUDE THIS IN YOU COMMIT

You can use the secret-template.cfg to create your own secret.cfg configuration.

You can change the default location of those config files using the following enviroment variables:

  • BASE_CONFIG (default: config/base.cfg)
  • CONFIG (default: config/dev.cfg)
  • TEST_CONFIG (default: config/test.cfg)
  • SECRET (default: config/secret.cfg)

Additional enviroment variables:

  • ENV (default: development, can be either development, test, production)

Run

Make sure to run redis-server and your database implementation, then run huey and the app:

# tasks:
huey_consumer run_huey.huey
# main application:
python run.py

Test

We use unittest for testing the application.

Contribute

Pull requests are alyways welcome! Feel free to fork the project and improve it.

License

Copyright 2018-2019 Life-Science Lab [email protected]

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http:https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.