acmeproxy
acmeproxy copied to clipboard
Changes to move account functionality from settings.py to the database
Introduction
Currently acmeproxy has its user configuration defined in a Python dictionary in the settings.py file. To run multiple instances of acmeproxy, you now have two components to synchronise; settings.py and the database. A better option is to move all global configuration to the database and use a multi-active technology, such as CockroachDB.
Details
The v2.0 branch has been created which implements the changes mentioned above.
For people that are using the existing code base, the v0.1 branch has been created from the most recent master commit. This branch is considered deprecated and will almost certainly not receive any updates.
v2.0 is considered the active development branch and will receive all future commits. The timeline of when this branch will receive updates and when it will be stable is unknown, but is best effort at this stage.
Changes to be aware of
There are a small number of changes which have implications to be aware of when using v2.0:
- Existing
v0.1installations cannot be automatically upgraded tov2.0due to theaccountfield in theAuthorisationtable changing type, and limitations in the django-cockroachdb module - The functionality to use acmeproxy without authorisation has been removed
- Referential integrity has been added to the Account table. While this isn't a limitation, it's something to be aware of. If you remove an
Account, all relatedAuthorisationswill be removed - The development features, tests, docker support, and CI related items have not been updated in
v2.0and have been removed, but are still available inv0.1