Skip to content

Latest commit

 

History

History
91 lines (64 loc) · 1.48 KB

developing.md

File metadata and controls

91 lines (64 loc) · 1.48 KB

Developing

To set up a dev environment in a venv or conda env,

$ pip install -r requirements.txt
$ pip install -e .[dev]

To initialize an instance DB,

$ apsisctl create apsis.db

Create a config file, for example:

# Path to the state database.
database: apsis.db

# Path to the jobs directory.
job_dirs: jobs

# Lookback in secs for old runs.
# Currently, applied when loading runs from database at startup.
runs_lookback: 2592000  # 30 days

# Refuse to schedule runs older than this.
schedule_max_age: 86400  # 1 day

To run the back end,

$ apsisctl serve -c config.yaml

Web UI

This repo contains a copy of the prod front end, which you can use if you are not developing the front end itself.

The Vue front end was set up with the webpack vuejs template (an older version).

Developing

Currently requires node 14 (nvm use 14), until we update a bunch of stuff.

To run the front end in dev mode,

$ cd vue
$ npm install
$ npm run dev

To run js unit tests:

$ npm run unit

Front end e2e tests not set up.

Packaging

To produce a prod front end,

$ cd vue
$ npm run build

then

$ git add --all .
$ git commit -m "Rebuild front end."

The Python back end service will serve the prod front end.

Docs

Install the sphinx and sphinx-rtd-theme packages, then,

$ cd docs
$ make html

Tests

Apsis requires pytest and pytest-asyncio to run Python tests.