summaryrefslogtreecommitdiffstats
path: root/laas-fog/pharoslaas
diff options
context:
space:
mode:
authorParker Berberian <pberberian@iol.unh.edu>2017-12-20 12:48:17 -0500
committerParker Berberian <pberberian@iol.unh.edu>2017-12-20 12:53:44 -0500
commit30f389c70e8a0a8bd2ef27be09839eef243ab7f5 (patch)
tree5146c3393e67f5274cb312e85a28b9cef0dde036 /laas-fog/pharoslaas
parentac0ae9e3069e582fcaeaff35f28a5b45343bae84 (diff)
Initial Commit for new LaaS Software
JIRA: PHAROS-318 The old code I had in here was super beta and no good. I reworked the code to use Stackstorm instead of trying to roll my own automation services. This commit adds a README, install scripts, and the skeleton of a stackstorm pack Change-Id: Ia1c0c29e23316ad0e635c9c181c9a68fdacee664 Signed-off-by: Parker Berberian <pberberian@iol.unh.edu>
Diffstat (limited to 'laas-fog/pharoslaas')
-rw-r--r--laas-fog/pharoslaas/config.schema.yaml40
-rw-r--r--laas-fog/pharoslaas/hosts.json22
-rw-r--r--laas-fog/pharoslaas/pack.yaml28
-rw-r--r--laas-fog/pharoslaas/pharoslaas.yaml.example18
-rw-r--r--laas-fog/pharoslaas/requirements.txt3
5 files changed, 111 insertions, 0 deletions
diff --git a/laas-fog/pharoslaas/config.schema.yaml b/laas-fog/pharoslaas/config.schema.yaml
new file mode 100644
index 0000000..309afe8
--- /dev/null
+++ b/laas-fog/pharoslaas/config.schema.yaml
@@ -0,0 +1,40 @@
+---
+##############################################################################
+# Copyright 2017 Parker Berberian and Others #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you may not use this file except in compliance with the License. #
+# You may obtain a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+##############################################################################
+
+fog:
+ description: "FOG server configuration"
+ type: "object"
+ required: true
+ properties:
+ address:
+ type: "string"
+ description: "where to reach the fog server"
+ required: true
+ api_key:
+ type: "string"
+ description: "FOG api key"
+ required: true
+ secret: true
+ user_key:
+ type: "string"
+ description: "FOG api user key"
+ required: true
+ secret: true
+
+vpn:
+ type: object
+ required: false
diff --git a/laas-fog/pharoslaas/hosts.json b/laas-fog/pharoslaas/hosts.json
new file mode 100644
index 0000000..a39616c
--- /dev/null
+++ b/laas-fog/pharoslaas/hosts.json
@@ -0,0 +1,22 @@
+[
+ {
+ "name": "pod1",
+ "value": "{\"pharos_id\": 999, \"fog_name\": \"fog_host1\", \"hostname\": \"pod1\", \"ubuntu_image\": 1, \"centos_image\": 2, \"suse_image\": 3}"
+ },
+ {
+ "name": "pod2",
+ "value": "{\"pharos_id\": 998, \"fog_name\": \"fog_host2\", \"hostname\": \"pod2\", \"ubuntu_image\": 1, \"centos_image\": 2, \"suse_image\": 3}"
+ },
+ {
+ "name": "pod3",
+ "value": "{\"pharos_id\": 997, \"fog_name\": \"fog_name3\", \"hostname\": \"pod3\", \"ubuntu_image\": 1, \"centos_image\": 2, \"suse_image\": 3}"
+ },
+ {
+ "name": "hosts",
+ "value" : "[\"pod1\", \"pod2\", \"pod3\"]"
+ },
+ {
+ "name": "bookings",
+ "value": "[]"
+ }
+]
diff --git a/laas-fog/pharoslaas/pack.yaml b/laas-fog/pharoslaas/pack.yaml
new file mode 100644
index 0000000..7144a71
--- /dev/null
+++ b/laas-fog/pharoslaas/pack.yaml
@@ -0,0 +1,28 @@
+---
+##############################################################################
+# Copyright 2017 Parker Berberian and Others #
+# #
+# Licensed under the Apache License, Version 2.0 (the "License"); #
+# you may not use this file except in compliance with the License. #
+# You may obtain a copy of the License at #
+# #
+# http://www.apache.org/licenses/LICENSE-2.0 #
+# #
+# Unless required by applicable law or agreed to in writing, software #
+# distributed under the License is distributed on an "AS IS" BASIS, #
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
+# See the License for the specific language governing permissions and #
+# limitations under the License. #
+##############################################################################
+
+name: pharoslaas
+description: Provides all tools needed to host your own OPNFV lab
+keywords:
+ - OPNFV
+ - Lab-as-a-Service
+ - LaaS
+ - Linux
+ - Openstack
+version: 0.0.1
+author: pberberian
+email: pberberian@iol.unh.edu
diff --git a/laas-fog/pharoslaas/pharoslaas.yaml.example b/laas-fog/pharoslaas/pharoslaas.yaml.example
new file mode 100644
index 0000000..954e0d7
--- /dev/null
+++ b/laas-fog/pharoslaas/pharoslaas.yaml.example
@@ -0,0 +1,18 @@
+---
+fog:
+ address: "http://myfogserver.com/fog/"
+ api_key: "MySecretAPIKey"
+ user_key: "MySecretAPIUserKey"
+
+vpn:
+ server: "myvpn.ldap.server.org"
+ authentication:
+ pass: "password"
+ user: "cn=root,o=opnfv,dc=iol,dc=unh,dc=edu"
+ directory:
+ root: "o=opnfv,dc=iol,dc=unh,dc=edu"
+ user: "ou=People"
+ user:
+ objects:
+ - top
+ - inetOrgPerson
diff --git a/laas-fog/pharoslaas/requirements.txt b/laas-fog/pharoslaas/requirements.txt
new file mode 100644
index 0000000..697fe47
--- /dev/null
+++ b/laas-fog/pharoslaas/requirements.txt
@@ -0,0 +1,3 @@
+requests
+libvirt-python
+python-ldap