diff --git a/client-api/api_lib/libvirt_schema.py b/api-daemon/api_lib/libvirt_schema.py similarity index 100% rename from client-api/api_lib/libvirt_schema.py rename to api-daemon/api_lib/libvirt_schema.py diff --git a/client-api/api_lib/pvcapi_helper.py b/api-daemon/api_lib/pvcapi_helper.py similarity index 99% rename from client-api/api_lib/pvcapi_helper.py rename to api-daemon/api_lib/pvcapi_helper.py index 715432db..95478c2d 100755 --- a/client-api/api_lib/pvcapi_helper.py +++ b/api-daemon/api_lib/pvcapi_helper.py @@ -26,12 +26,12 @@ import lxml.etree as etree from distutils.util import strtobool -import client_lib.common as pvc_common -import client_lib.cluster as pvc_cluster -import client_lib.node as pvc_node -import client_lib.vm as pvc_vm -import client_lib.network as pvc_network -import client_lib.ceph as pvc_ceph +import daemon_lib.common as pvc_common +import daemon_lib.cluster as pvc_cluster +import daemon_lib.node as pvc_node +import daemon_lib.vm as pvc_vm +import daemon_lib.network as pvc_network +import daemon_lib.ceph as pvc_ceph # # Initialization function diff --git a/client-api/api_lib/pvcapi_provisioner.py b/api-daemon/api_lib/pvcapi_provisioner.py similarity index 99% rename from client-api/api_lib/pvcapi_provisioner.py rename to api-daemon/api_lib/pvcapi_provisioner.py index bb4bcc57..94edd7ce 100755 --- a/client-api/api_lib/pvcapi_provisioner.py +++ b/api-daemon/api_lib/pvcapi_provisioner.py @@ -30,11 +30,11 @@ import time import shlex import subprocess -import client_lib.common as pvc_common -import client_lib.node as pvc_node -import client_lib.vm as pvc_vm -import client_lib.network as pvc_network -import client_lib.ceph as pvc_ceph +import daemon_lib.common as pvc_common +import daemon_lib.node as pvc_node +import daemon_lib.vm as pvc_vm +import daemon_lib.network as pvc_network +import daemon_lib.ceph as pvc_ceph import api_lib.libvirt_schema as libvirt_schema diff --git a/api-daemon/daemon_lib b/api-daemon/daemon_lib new file mode 120000 index 00000000..9df2c591 --- /dev/null +++ b/api-daemon/daemon_lib @@ -0,0 +1 @@ +../daemon-common \ No newline at end of file diff --git a/client-api/provisioner/examples/debootstrap_script.py b/api-daemon/provisioner/examples/debootstrap_script.py similarity index 100% rename from client-api/provisioner/examples/debootstrap_script.py rename to api-daemon/provisioner/examples/debootstrap_script.py diff --git a/client-api/provisioner/examples/dummy_script.py b/api-daemon/provisioner/examples/dummy_script.py similarity index 100% rename from client-api/provisioner/examples/dummy_script.py rename to api-daemon/provisioner/examples/dummy_script.py diff --git a/client-api/provisioner/examples/multipart-userdata.yaml b/api-daemon/provisioner/examples/multipart-userdata.yaml similarity index 100% rename from client-api/provisioner/examples/multipart-userdata.yaml rename to api-daemon/provisioner/examples/multipart-userdata.yaml diff --git a/client-api/provisioner/examples/userdata.yaml b/api-daemon/provisioner/examples/userdata.yaml similarity index 100% rename from client-api/provisioner/examples/userdata.yaml rename to api-daemon/provisioner/examples/userdata.yaml diff --git a/client-api/provisioner/schema.sql b/api-daemon/provisioner/schema.sql similarity index 100% rename from client-api/provisioner/schema.sql rename to api-daemon/provisioner/schema.sql diff --git a/client-api/pvc-api.py b/api-daemon/pvc-api.py similarity index 100% rename from client-api/pvc-api.py rename to api-daemon/pvc-api.py diff --git a/client-api/pvc-api.sample.yaml b/api-daemon/pvc-api.sample.yaml similarity index 100% rename from client-api/pvc-api.sample.yaml rename to api-daemon/pvc-api.sample.yaml diff --git a/client-api/pvc-api.service b/api-daemon/pvc-api.service similarity index 100% rename from client-api/pvc-api.service rename to api-daemon/pvc-api.service diff --git a/client-api/pvc-provisioner-worker.service b/api-daemon/pvc-provisioner-worker.service similarity index 100% rename from client-api/pvc-provisioner-worker.service rename to api-daemon/pvc-provisioner-worker.service diff --git a/client-api/swagger.html b/api-daemon/swagger.html similarity index 100% rename from client-api/swagger.html rename to api-daemon/swagger.html diff --git a/client-api/swagger.json b/api-daemon/swagger.json similarity index 100% rename from client-api/swagger.json rename to api-daemon/swagger.json diff --git a/build-and-deploy.sh b/build-and-deploy.sh index 4bb64f42..e627600a 100755 --- a/build-and-deploy.sh +++ b/build-and-deploy.sh @@ -16,7 +16,7 @@ HOSTS=( ${@} ) echo "${HOSTS[@]}" # Build the packages -$SUDO ./build-deb.sh +./build-deb.sh # Install the client(s) locally $SUDO dpkg -i ../pvc-client*.deb diff --git a/client-api/client_lib b/client-api/client_lib deleted file mode 120000 index 37daac79..00000000 --- a/client-api/client_lib +++ /dev/null @@ -1 +0,0 @@ -../client-common \ No newline at end of file diff --git a/client-cli/cli_lib/zkhandler.py b/client-cli/cli_lib/zkhandler.py index ad8a30c2..21fc194d 100644 --- a/client-cli/cli_lib/zkhandler.py +++ b/client-cli/cli_lib/zkhandler.py @@ -23,7 +23,7 @@ import kazoo.client import uuid -import client_lib.ansiprint as ansiprint +import daemon_lib.ansiprint as ansiprint # Exists function def exists(zk_conn, key): diff --git a/client-common/ansiprint.py b/daemon-common/ansiprint.py similarity index 100% rename from client-common/ansiprint.py rename to daemon-common/ansiprint.py diff --git a/client-common/ceph.py b/daemon-common/ceph.py similarity index 99% rename from client-common/ceph.py rename to daemon-common/ceph.py index ff24f944..fd442f2d 100644 --- a/client-common/ceph.py +++ b/daemon-common/ceph.py @@ -26,9 +26,9 @@ import json import time import math -import client_lib.ansiprint as ansiprint -import client_lib.zkhandler as zkhandler -import client_lib.common as common +import daemon_lib.ansiprint as ansiprint +import daemon_lib.zkhandler as zkhandler +import daemon_lib.common as common # # Supplemental functions diff --git a/client-common/cluster.py b/daemon-common/cluster.py similarity index 96% rename from client-common/cluster.py rename to daemon-common/cluster.py index bb2477f0..df7154ed 100644 --- a/client-common/cluster.py +++ b/daemon-common/cluster.py @@ -24,13 +24,13 @@ import json from distutils.util import strtobool -import client_lib.ansiprint as ansiprint -import client_lib.zkhandler as zkhandler -import client_lib.common as common -import client_lib.vm as pvc_vm -import client_lib.node as pvc_node -import client_lib.network as pvc_network -import client_lib.ceph as pvc_ceph +import daemon_lib.ansiprint as ansiprint +import daemon_lib.zkhandler as zkhandler +import daemon_lib.common as common +import daemon_lib.vm as pvc_vm +import daemon_lib.node as pvc_node +import daemon_lib.network as pvc_network +import daemon_lib.ceph as pvc_ceph def set_maintenance(zk_conn, maint_state): try: diff --git a/client-common/common.py b/daemon-common/common.py similarity index 99% rename from client-common/common.py rename to daemon-common/common.py index 7b83cdc5..f914e026 100644 --- a/client-common/common.py +++ b/daemon-common/common.py @@ -27,7 +27,7 @@ import kazoo.client from distutils.util import strtobool -import client_lib.zkhandler as zkhandler +import daemon_lib.zkhandler as zkhandler ############################################################################### # Supplemental functions diff --git a/client-common/network.py b/daemon-common/network.py similarity index 99% rename from client-common/network.py rename to daemon-common/network.py index d27ea37f..80d9800a 100644 --- a/client-common/network.py +++ b/daemon-common/network.py @@ -34,9 +34,9 @@ import lxml.objectify import configparser import kazoo.client -import client_lib.ansiprint as ansiprint -import client_lib.zkhandler as zkhandler -import client_lib.common as common +import daemon_lib.ansiprint as ansiprint +import daemon_lib.zkhandler as zkhandler +import daemon_lib.common as common # # Cluster search functions diff --git a/client-common/node.py b/daemon-common/node.py similarity index 99% rename from client-common/node.py rename to daemon-common/node.py index 2d90adb2..8dc96b01 100644 --- a/client-common/node.py +++ b/daemon-common/node.py @@ -34,10 +34,10 @@ import lxml.objectify import configparser import kazoo.client -import client_lib.ansiprint as ansiprint -import client_lib.zkhandler as zkhandler -import client_lib.common as common -import client_lib.vm as pvc_vm +import daemon_lib.ansiprint as ansiprint +import daemon_lib.zkhandler as zkhandler +import daemon_lib.common as common +import daemon_lib.vm as pvc_vm def getNodeInformation(zk_conn, node_name): """ diff --git a/client-common/vm.py b/daemon-common/vm.py similarity index 99% rename from client-common/vm.py rename to daemon-common/vm.py index 08b639ed..f1342b64 100644 --- a/client-common/vm.py +++ b/daemon-common/vm.py @@ -35,11 +35,11 @@ import kazoo.client from collections import deque -import client_lib.ansiprint as ansiprint -import client_lib.zkhandler as zkhandler -import client_lib.common as common +import daemon_lib.ansiprint as ansiprint +import daemon_lib.zkhandler as zkhandler +import daemon_lib.common as common -import client_lib.ceph as ceph +import daemon_lib.ceph as ceph # # Cluster search functions diff --git a/client-common/zkhandler.py b/daemon-common/zkhandler.py similarity index 98% rename from client-common/zkhandler.py rename to daemon-common/zkhandler.py index ad8a30c2..21fc194d 100644 --- a/client-common/zkhandler.py +++ b/daemon-common/zkhandler.py @@ -23,7 +23,7 @@ import kazoo.client import uuid -import client_lib.ansiprint as ansiprint +import daemon_lib.ansiprint as ansiprint # Exists function def exists(zk_conn, key): diff --git a/debian/control b/debian/control index 3e4bb7c3..73f02d72 100644 --- a/debian/control +++ b/debian/control @@ -8,28 +8,28 @@ X-Python3-Version: >= 3.2 Package: pvc-daemon Architecture: all -Depends: systemd, pvc-client-common, python3-kazoo, python3-psutil, python3-apscheduler, python3-libvirt, python3-psycopg2, python3-dnspython, python3-yaml, python3-distutils, ipmitool, libvirt-daemon-system, arping, vlan, bridge-utils, dnsmasq, nftables, pdns-server, pdns-backend-pgsql +Depends: systemd, pvc-daemon-common, python3-kazoo, python3-psutil, python3-apscheduler, python3-libvirt, python3-psycopg2, python3-dnspython, python3-yaml, python3-distutils, ipmitool, libvirt-daemon-system, arping, vlan, bridge-utils, dnsmasq, nftables, pdns-server, pdns-backend-pgsql Suggests: pvc-client-api, pvc-client-cli Description: Parallel Virtual Cluster virtualization daemon (Python 3) A KVM/Zookeeper/Ceph-based VM and private cloud manager . This package installs the PVC node daemon -Package: pvc-client-common +Package: pvc-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 +Description: Parallel Virtual Cluster API (Python 3) + A KVM/Zookeeper/Ceph-based VM and private cloud manager + . + This package installs the PVC API daemon + +Package: pvc-daemon-common Architecture: all Depends: python3-kazoo, python3-psutil, python3-click, python3-lxml -Description: Parallel Virtual Cluster common client libraries (Python 3) +Description: Parallel Virtual Cluster common libraries (Python 3) A KVM/Zookeeper/Ceph-based VM and private cloud manager . - This package installs the common client libraries - -Package: pvc-client-api -Architecture: all -Depends: systemd, pvc-client-common, python3-yaml, python3-flask, python3-flask-restful, python3-gevent, python3-celery, python-celery-common, python3-distutils, redis, python3-redis -Description: Parallel Virtual Cluster API client (Python 3) - A KVM/Zookeeper/Ceph-based VM and private cloud manager - . - This package installs the PVC API client daemon + This package installs the common libraries for the daemon and API Package: pvc-client-cli Architecture: all diff --git a/debian/pvc-api.install b/debian/pvc-api.install new file mode 100644 index 00000000..3a48d839 --- /dev/null +++ b/debian/pvc-api.install @@ -0,0 +1,6 @@ +api-daemon/pvc-api.py usr/share/pvc +api-daemon/pvc-api.sample.yaml etc/pvc +api-daemon/api_lib usr/share/pvc +api-daemon/pvc-api.service lib/systemd/system +api-daemon/pvc-provisioner-worker.service lib/systemd/system +api-daemon/provisioner usr/share/pvc diff --git a/debian/pvc-client-api.postinst b/debian/pvc-api.postinst similarity index 100% rename from debian/pvc-client-api.postinst rename to debian/pvc-api.postinst diff --git a/debian/pvc-client-api.prerm b/debian/pvc-api.prerm similarity index 100% rename from debian/pvc-client-api.prerm rename to debian/pvc-api.prerm diff --git a/debian/pvc-client-api.install b/debian/pvc-client-api.install deleted file mode 100644 index 97f5f4eb..00000000 --- a/debian/pvc-client-api.install +++ /dev/null @@ -1,6 +0,0 @@ -client-api/pvc-api.py usr/share/pvc -client-api/pvc-api.sample.yaml etc/pvc -client-api/api_lib usr/share/pvc -client-api/pvc-api.service lib/systemd/system -client-api/pvc-provisioner-worker.service lib/systemd/system -client-api/provisioner usr/share/pvc diff --git a/debian/pvc-client-common.install b/debian/pvc-client-common.install deleted file mode 100644 index 290683b2..00000000 --- a/debian/pvc-client-common.install +++ /dev/null @@ -1 +0,0 @@ -client-common/* usr/share/pvc/client_lib diff --git a/debian/pvc-daemon-common.install b/debian/pvc-daemon-common.install new file mode 100644 index 00000000..50b76504 --- /dev/null +++ b/debian/pvc-daemon-common.install @@ -0,0 +1 @@ +daemon-common/* usr/share/pvc/daemon_lib diff --git a/gen-api-doc.py b/gen-api-doc.py index 7ece4461..2bc1b1fb 100755 --- a/gen-api-doc.py +++ b/gen-api-doc.py @@ -8,9 +8,9 @@ import os import sys import json -os.environ['PVC_CONFIG_FILE'] = "./client-api/pvc-api.sample.yaml" +os.environ['PVC_CONFIG_FILE'] = "./api-daemon/pvc-api.sample.yaml" -sys.path.append('client-api') +sys.path.append('api-daemon') pvc_api = __import__('pvc-api') diff --git a/node-daemon/pvcd/MetadataAPIInstance.py b/node-daemon/pvcd/MetadataAPIInstance.py index 9e91605a..c51c0be8 100644 --- a/node-daemon/pvcd/MetadataAPIInstance.py +++ b/node-daemon/pvcd/MetadataAPIInstance.py @@ -29,8 +29,8 @@ import psycopg2 from psycopg2.extras import RealDictCursor # The metadata server requires client libraries -import client_lib.vm as pvc_vm -import client_lib.network as pvc_network +import daemon_lib.vm as pvc_vm +import daemon_lib.network as pvc_network class MetadataAPIInstance(object): mdapi = flask.Flask(__name__)