devpi-postgresql: a PostgreSQL storage backend for devpi-server
Project description
devpi-postgresql: a PostgreSQL storage backend for devpi-server
This plugin adds a PostgreSQL storage backend for devpi-server.
Installation
devpi-postgresql needs to be installed alongside devpi-server.
You can install it with:
pip install devpi-postgresql
Requirements
At least PostgreSQL 9.5 is required for ON CONFLICT support.
Usage
When using the PostgreSQL storage, devpi-server expects an empty database. You have to create one like this: createdb devpi Depending on your PostgreSQL setup you have to create a user and grant it permissions on the new database like this:
CREATE ROLE devpi WITH LOGIN; GRANT CREATE, CONNECT ON DATABASE devpi TO devpi;
Upon first initialization of devpi-server use --storage pg8000 to select the PostgreSQL backend.
By default it’ll use the devpi database on localhost port 5432. To change that, use storage pg8000:host=example.com,port=5433,database=devpi_prod. The possible settings are: database, host, port, unix_sock, user, password, ssl_cert_reqs, ssl_ca_certs, ssl_certfile and ssl_keyfile. Each settings starting with “ssl” corresponds to the similarly-named key (remove the initial ssl_) in the ssl parameter passed to pg8000.connect(). ssl_cert_reqs should be either “cert_optional” or “cert_required” and the other three settings are file names.
All user/index files and metadata of devpi-server are stored in the database. A few things and settings are still stored as files in the directory specified by --serverdir.
Plugins like devpi-web don’t or can’t use the storage backend. They still handle their own storage.
Support
If you find a bug, use the issue tracker at Github.
For general questions use the #devpi IRC channel on freenode.net or the devpi-dev@python.org mailing list.
For support contracts and paid help contact merlinux.eu.
Changelog
1.1.0 (2020-01-31)
Features
fix #738: add ssl_cert_reqs, ssl_ca_certs, ssl_certfile and ssl_keyfile settings to the –storage=pg8000 option. Each setting corresponds to the similarly-named key (remove the initial ssl_) in the ssl parameter passed to pg8000.connect(). ssl_cert_reqs should be either “cert_optional” or “cert_required” and the other three settings are file names.
1.0.0 (2019-04-26)
Deprecations and Removals
Requires at least PostgreSQL 9.5 for ON CONFLICT support.
Dropped support for Python 2.x and PyPy2.
0.3.0 (2018-09-08)
Bug Fixes
Fixes required for bug fixes devpi-server 4.7.0.
0.2.0 (2018-01-17)
Bug Fixes
Use advisory locks to serialize writes.
0.1.1 (2017-12-12)
Add unix_sock, user and password to possible connection options. Thanks to Szabolcs Rumi for the patch.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for devpi_postgresql-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5483b71e8dd9ebd6ace55ade6c0170a6550703c86ea25f512d5f0efbc763c725 |
|
MD5 | c1f71acd35c3bc8c9a7630276901eb13 |
|
BLAKE2b-256 | 77d83dd6d99b29a8197f8c5f82c4e7a32be1fccf735086606058c1ce5848226a |