Add database management with SQLAlchemy
Add management of the pvcprov database with SQLAlchemy, to allow seamless management of the database. Add automatic tasks to the postinst of the API to execute these migrations.
This commit is contained in:
2
debian/control
vendored
2
debian/control
vendored
@ -17,7 +17,7 @@ Description: Parallel Virtual Cluster node daemon (Python 3)
|
||||
|
||||
Package: pvc-daemon-api
|
||||
Architecture: all
|
||||
Depends: systemd, pvc-daemon-common, python3-yaml, python3-flask, python3-flask-restful, python3-gevent, python3-celery, python-celery-common, python3-distutils, redis, python3-redis, python3-lxml
|
||||
Depends: systemd, pvc-daemon-common, python3-yaml, python3-flask, python3-flask-restful, python3-gevent, python3-celery, python-celery-common, python3-distutils, redis, python3-redis, python3-lxml, python3-flask-migrate, python3-flask-script
|
||||
Description: Parallel Virtual Cluster API daemon (Python 3)
|
||||
A KVM/Zookeeper/Ceph-based VM and private cloud manager
|
||||
.
|
||||
|
3
debian/pvc-daemon-api.install
vendored
3
debian/pvc-daemon-api.install
vendored
@ -1,4 +1,7 @@
|
||||
api-daemon/pvcapid.py usr/share/pvc
|
||||
api-daemon/pvcapid-manage.py usr/share/pvc
|
||||
api-daemon/pvc-api-db-init usr/share/pvc
|
||||
api-daemon/pvc-api-db-upgrade usr/share/pvc
|
||||
api-daemon/pvcapid.sample.yaml etc/pvc
|
||||
api-daemon/pvcapid usr/share/pvc
|
||||
api-daemon/pvcapid.service lib/systemd/system
|
||||
|
19
debian/pvc-daemon-api.postinst
vendored
19
debian/pvc-daemon-api.postinst
vendored
@ -1,20 +1,15 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Install client binary to /usr/bin via symlink
|
||||
ln -s /usr/share/pvc/api.py /usr/bin/pvcapid
|
||||
|
||||
# Reload systemd's view of the units
|
||||
systemctl daemon-reload
|
||||
|
||||
# Restart the main daemon (or warn on first install)
|
||||
# Restart the main daemon and apply database migrations (or warn on first install)
|
||||
if systemctl is-active --quiet pvcapid.service; then
|
||||
systemctl restart pvcapid.service
|
||||
systemctl stop pvcapid-worker.service
|
||||
systemctl stop pvcapid.service
|
||||
/usr/share/pvc/pvc-api-db-upgrade
|
||||
systemctl start pvcapid.service
|
||||
systemctl start pvcapid-worker.service
|
||||
else
|
||||
echo "NOTE: The PVC client API daemon (pvcapid.service) has not been started; create a config file at /etc/pvc/pvcapid.yaml then start it."
|
||||
fi
|
||||
# Restart the worker daemon (or warn on first install)
|
||||
if systemctl is-active --quiet pvcapid-worker.service; then
|
||||
systemctl restart pvcapid-worker.service
|
||||
else
|
||||
echo "NOTE: The PVC provisioner worker daemon (pvcapid-worker.service) has not been started; create a config file at /etc/pvc/pvcapid.yaml then start it."
|
||||
echo "NOTE: The PVC client API daemon (pvcapid.service) and the PVC provisioner worker daemon (pvcapid-worker.service) have not been started; create a config file at /etc/pvc/pvcapid.yaml, then run the database configuration (/usr/share/pvc/api-db-init) and start them manually."
|
||||
fi
|
||||
|
Reference in New Issue
Block a user