Skip to main content

clldappconfig

Scripted deployment and management of clld web apps. This package provides the appconfig command line utility as well as fabric tasks which can be used in fabfiles for managing individual apps.

Tests PyPI

command line utility usage

To show a help message run

appconfig --help

The appconfig command needs a configuration directory containing the global configuration file (apps.ini) and the config scripts all managed apps. I.e. the config directory (here apps/) should have the following structure:

apps
├── apps.ini
├── README.md
├── abvd
│   ├── fabfile.py
│   ├── README.md
│   └── requirements.txt
├── acc
│   ├── fabfile.py
│   ├── README.md
│   └── requirements.txt
.
.
.

The config discovery is done in the following order:

  1. use argument of --config / -c
  2. use the APPCONFIG_DIR environment variable
  3. by default the current working directory (./) is assumed to be the config directory

So both of the following commands do the same thing:

appconfig --config ./path/to/appconfig/apps/ ls
env APPCONFIG_DIR=./path/to/appconfig/apps/ appconfig ls

using fabfiles

For every app should provide a subdirectory of the config directory, which contains a fabfile.py with the following minimal structure:

from clldappconfig.tasks import *

init()

Inside the directory containing the fabfile you can run fab -l to list all available tasks for deployment, managing databases etc.

Config discovery for the fabfiles works as follows:

  1. use the APPCONFIG_DIR environment variable
  2. by default the parent of the current working directory (../) is assumed to be the config directory

If you use the config directory structure as described above, you can rely on the default behavior and usually don't need to set the APPCONFIG_DIR environment variable.

TODO:

  • describe structure and options of apps.ini
  • describe some common workflows like deploying an app

Release files for clldappconfig 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for clldappconfig 1.2.0
File Size Uploaded
clldappconfig-1.2.0.tar.gz 30.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for clldappconfig 1.2.0
File Interpreter ABI Platform
clldappconfig-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 62.8 kB

Release files / clldappconfig-1.2.0.tar.gz

Download URL clldappconfig-1.2.0.tar.gz
Size 30.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2650c666d4df915944ec6f882b4466b368773577dc7f8ae649221c70c3ee18b9
BLAKE2b-256 checksum
How to use checksums
768c1ea9450014bd7f17b2c0ec007806d795c9f77137bd2eb834495663d500fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.10.3

Release files / clldappconfig-1.2.0-py3-none-any.whl

Download URL clldappconfig-1.2.0-py3-none-any.whl
Size 32.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c76533f4ed750343b6799248cfb168a63279a8f707bf743cf29fd4cc65eb97bf
BLAKE2b-256 checksum
How to use checksums
e9f0f3e9f5d9348d81a6dcf584e10ecc6541c7043f03f524cf84c5096c1ca1b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.10.3

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page