Lecture capture scheduling engine
This repository contains a tool to schedule lecture capture recordings. It has the following features:
- Ingest events to be scheduled from Google Sheets.
- Respect lecturer opt-in/out preferences. (TODO)
- Reconciles Opencast events with the schedule. (TODO)
- Sets appropriate role-based access policies on Opencast events. (TODO)
Further documentation
Usage and API documentation may be built using tox:
$ COMPOSE_ARGS="-v $PWD/build/:/tmp/tox-data/artefacts/" ./tox.sh -e doc
$ xdg-open build/doc/index.html # Linux
$ open build/doc/index.html # Mac
Quickstart
This quickstart is an abbreviated form of the getting started guide from the main documentation.
The ./scheduler_development.sh
script will build a containerised version of
the tool and run it with the repository directory mounted read-only under
/usr/src/app
inside the container. As such you can have development-local
configuration inside the repository.
When first running the tool, you will need to create some configuration. (See the "Configuration" section in the documentation for what is required.)
$ cd /path/to/this/repo
$ mkdir .scheduler
$ cp configuration-template.yaml .scheduler/configuration.yaml
# ... edit configuration, see below ...
Once configured, the scheduler can be run as follows:
$ ./scheduler_development.sh
The
scheduler_development.sh
script can be used to run the scheduler utility within a development Docker image. The repository directory is mounted read-only as/usr/src/app
so that local modifications take effect.
Running tests
The tests may be run using tox:
$ ./tox.sh