Skip to content
Astronomical Observation Web Portal and Backend
Branch: master
Clone or download
eheinrich Merge pull request #53 from LCOGT/delete_old_observations
added task for deleting old observations
Latest commit 429ae87 Jul 19, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs Switched out celery with dramatiq. Use django-dramatiq to run works w… Mar 22, 2019
observation_portal Merge pull request #53 from LCOGT/delete_old_observations Jul 19, 2019
static update broken links Jul 12, 2019
templates Merge pull request #40 from LCOGT/frontend-tweaks Jun 24, 2019
.browserslistrc Setup vue project Apr 11, 2019
.coveragerc hopefully ignore the stuff we don't want test coverage off Jun 5, 2019
.dockerignore Initial commt Mar 19, 2019
.gitignore Setup vue project Apr 11, 2019
.travis.yml try to get coveralls working Jun 5, 2019
Jenkinsfile Initial commit Jun 28, 2019
LICENSE Initial commit Jan 8, 2019
cypress.json Setup vue project Apr 11, 2019 basic project structure Jan 8, 2019
package-lock.json Add package lock file back in May 1, 2019
postcss.config.js Setup vue project Apr 11, 2019
requirements.txt Set python lib versions Jun 23, 2019 first wave of codify fixes Jun 10, 2019
vue.config.js switch to using contenthash to fix different hashes among deployment … Jun 13, 2019

Observation Portal

Build Status Coverage Status Codacy Badge

An Astronomical Observation Web Portal and Backend

The portal manages observation requests and observations in the context of a larger system. Other parts of this system include:

  • an information store containing the configuration of resources in the system
  • an information store containing resource availability information
  • an information store containing periods of maintenance or other downtimes for resources in the system
  • a scheduler responsible for scheduling observations on resources and a mechanism by which to report back observation states


The portal can be run as a standalone application with reduced functionality. The basic requirements are:

  • Python >= 3.6
  • PostgreSQL 11

Set up a virtual environment

From the base of this project:

python -m venv ~/observation_portal_env
source ~/observation_portal_env/bin/activate
pip install numpy && pip install -r requirements.txt

Set up the database

This example uses Docker to create a database with the default database settings in observation_portal/

docker run --name observation-portal-postgres -e POSTGRES_PASSWORD=postgres -v/var/lib/postgresql/data -p5432:5432 -d postgres:11.1
docker exec -it observation-portal-postgres /bin/bash
createdb -U postgres -W observation_portal

After creating the database, the migrations must be run to set up the tables.

python migrate

Run the tests

python test --settings=test_settings

Run the portal

python runserver

The observation portal is now accessible from!

You can’t perform that action at this time.