feat: add pkg extras for postgres, mysql; update install doc
no longer requires psycopg2 by default; use postgres extra
This commit is contained in:
parent
a14b97243c
commit
d8c834095b
|
@ -8,22 +8,34 @@ Prerequisites
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
You'll need Python >= 3.8, and a database. See also
|
You'll need Python >= 3.8, and a database. See also
|
||||||
:doc:`wuttjamaican:narr/install/prereqs` in the Wutta docs.
|
the Wutta docs:
|
||||||
|
|
||||||
|
* :doc:`wuttjamaican:narr/install/prereqs`
|
||||||
|
* :ref:`wuttjamaican:create-appdb`
|
||||||
|
|
||||||
|
But for convenience here is a cheat sheet:
|
||||||
|
|
||||||
|
*PostgreSQL*
|
||||||
|
|
||||||
.. code-block:: sh
|
.. code-block:: sh
|
||||||
|
|
||||||
sudo apt install build-essential python3-dev python3-venv postgresql libpq-dev
|
sudo apt install build-essential python3-dev python3-venv postgresql libpq-dev
|
||||||
|
|
||||||
As for the database, see also :ref:`wuttjamaican:create-appdb` but FYI
|
|
||||||
these docs will assume a PostgreSQL setup with ``sideshow`` as the DB
|
|
||||||
name (and PG username).
|
|
||||||
|
|
||||||
.. code-block:: sh
|
|
||||||
|
|
||||||
sudo -u postgres createuser sideshow
|
sudo -u postgres createuser sideshow
|
||||||
sudo -u postgres psql -c "ALTER USER sideshow PASSWORD 'mypassword'"
|
sudo -u postgres psql -c "ALTER USER sideshow PASSWORD 'mypassword'"
|
||||||
sudo -u postgres createdb -O sideshow sideshow
|
sudo -u postgres createdb -O sideshow sideshow
|
||||||
|
|
||||||
|
*MySQL*
|
||||||
|
|
||||||
|
.. code-block:: sh
|
||||||
|
|
||||||
|
sudo apt install build-essential python3-dev python3-venv default-mysql-server
|
||||||
|
|
||||||
|
sudo mysql -e "CREATE USER sideshow@localhost"
|
||||||
|
sudo mysql -e "ALTER USER sideshow@localhost IDENTIFIED BY 'mypassword'"
|
||||||
|
sudo mysqladmin create sideshow
|
||||||
|
sudo mysql -e "GRANT ALL ON sideshow.* TO sideshow@localhost"
|
||||||
|
|
||||||
|
|
||||||
Virtual Environment
|
Virtual Environment
|
||||||
-------------------
|
-------------------
|
||||||
|
@ -49,12 +61,16 @@ the folder ownership should be changed to whatever you need:
|
||||||
Install Sideshow
|
Install Sideshow
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
First install the Sideshow package to your virtual environment:
|
First install the Sideshow package to your virtual environment. Note
|
||||||
|
that you must specify which DB backend to use:
|
||||||
|
|
||||||
.. code-block:: sh
|
.. code-block:: sh
|
||||||
|
|
||||||
cd /srv/envs/sideshow
|
# postgres
|
||||||
bin/pip install Sideshow
|
bin/pip install Sideshow[postgres]
|
||||||
|
|
||||||
|
# mysql
|
||||||
|
bin/pip install Sideshow[mysql]
|
||||||
|
|
||||||
Then you can run the Sideshow installer:
|
Then you can run the Sideshow installer:
|
||||||
|
|
||||||
|
|
|
@ -32,11 +32,12 @@ classifiers = [
|
||||||
license = {text = "GNU General Public License v3+"}
|
license = {text = "GNU General Public License v3+"}
|
||||||
requires-python = ">= 3.8"
|
requires-python = ">= 3.8"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"psycopg2",
|
|
||||||
"WuttaWeb>=0.20.5",
|
"WuttaWeb>=0.20.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[project.optional-dependencies]
|
[project.optional-dependencies]
|
||||||
|
postgres = ["psycopg2"]
|
||||||
|
mysql = ["mysql-connector-python"]
|
||||||
docs = ["Sphinx", "furo", "sphinxcontrib-programoutput", "enum-tools[sphinx]"]
|
docs = ["Sphinx", "furo", "sphinxcontrib-programoutput", "enum-tools[sphinx]"]
|
||||||
tests = ["pytest-cov", "tox"]
|
tests = ["pytest-cov", "tox"]
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue