#15 Add Openstack as cloud provider (#211)

* [Openstack] Add resources + set the provider (#15)

* [Openstack] autogen + Fixes

* [Openstacj] Fix names (#15)

* [Openstack] Fix comment
pull/212/head
gabriel-tessier 5 years ago committed by GitHub
parent 37129f46b9
commit dac39a861e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -19,6 +19,7 @@
![firebase provider](https://img.shields.io/badge/provider-Firebase-orange?logo=firebase&color=FFCA28)
![elastic provider](https://img.shields.io/badge/provider-Elastic-orange?logo=elastic&color=005571)
![saas provider](https://img.shields.io/badge/provider-SaaS-orange?color=5f87bf)
![openstack provider](https://img.shields.io/badge/provider-OpenStack-orange?logo=openstack&color=da1a32)
<a href="https://www.buymeacoffee.com/mingrammer" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a>

@ -4,7 +4,7 @@ set -e
app_root_dir="diagrams"
# NOTE: azure icon set is not latest version
providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic" "generic")
providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic" "generic" "openstack")
if ! [ -x "$(command -v round)" ]; then
echo 'round is not installed'

@ -13,7 +13,7 @@ DIR_TEMPLATE = "templates"
PROVIDERS = (
"base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic",
"generic")
"generic", "openstack")
#########################
# Resource Processing #
@ -39,6 +39,7 @@ FILE_PREFIXES = {
"saas": (),
"elastic": (),
"generic": (),
"openstack": (),
}
#########################
@ -65,6 +66,7 @@ UPPER_WORDS = {
"oci": ("oci",),
"elastic": ("apm", "siem", "ece", "eck"),
"generic": ("vpn", "ios", "xen"),
"openstack": ("rpm", "loci", "nfv", "ec2api"),
}
TITLE_WORDS = {
@ -76,7 +78,10 @@ TITLE_WORDS = {
},
"aws": {
"cloudfront": "CloudFront"
}
},
"openstack": {
"openstack": "OpenStack"
},
}
# TODO: check if the classname exists
@ -381,4 +386,16 @@ ALIASES = {
}
},
"generic": {},
"openstack": {
"user": {
"Openstackclient": "OpenStackClient",
},
"billing": {
"Cloudkitty": "CloudKitty",
},
"deployment": {
"Kolla": "KollaAnsible",
"Tripleo": "TripleO",
}
},
}

@ -0,0 +1,12 @@
"""
Openstack provides a set of general OpenStack services.
"""
from diagrams import Node
class _OpenStack(Node):
_provider = "openstack"
_icon_dir = "resources/openstack"
fontcolor = "#ffffff"

@ -0,0 +1,11 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Adjacentenablers(_OpenStack):
_type = "adjacentenablers"
_icon_dir = "resources/openstack/adjacentenablers"
# Aliases

@ -0,0 +1,15 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Apiproxies(_OpenStack):
_type = "apiproxies"
_icon_dir = "resources/openstack/apiproxies"
class EC2API(_Apiproxies):
_icon = "ec2api.png"
# Aliases

@ -0,0 +1,27 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Applicationlifecycle(_OpenStack):
_type = "applicationlifecycle"
_icon_dir = "resources/openstack/applicationlifecycle"
class Freezer(_Applicationlifecycle):
_icon = "freezer.png"
class Masakari(_Applicationlifecycle):
_icon = "masakari.png"
class Murano(_Applicationlifecycle):
_icon = "murano.png"
class Solum(_Applicationlifecycle):
_icon = "solum.png"
# Aliases

@ -0,0 +1,19 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Baremetal(_OpenStack):
_type = "baremetal"
_icon_dir = "resources/openstack/baremetal"
class Cyborg(_Baremetal):
_icon = "cyborg.png"
class Ironic(_Baremetal):
_icon = "ironic.png"
# Aliases

@ -0,0 +1,17 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Billing(_OpenStack):
_type = "billing"
_icon_dir = "resources/openstack/billing"
class Cloudkitty(_Billing):
_icon = "cloudkitty.png"
# Aliases
CloudKitty = Cloudkitty

@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Compute(_OpenStack):
_type = "compute"
_icon_dir = "resources/openstack/compute"
class Nova(_Compute):
_icon = "nova.png"
class Qinling(_Compute):
_icon = "qinling.png"
class Zun(_Compute):
_icon = "zun.png"
# Aliases

@ -0,0 +1,15 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Containerservices(_OpenStack):
_type = "containerservices"
_icon_dir = "resources/openstack/containerservices"
class Kuryr(_Containerservices):
_icon = "kuryr.png"
# Aliases

@ -0,0 +1,38 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Deployment(_OpenStack):
_type = "deployment"
_icon_dir = "resources/openstack/deployment"
class Ansible(_Deployment):
_icon = "ansible.png"
class Charms(_Deployment):
_icon = "charms.png"
class Chef(_Deployment):
_icon = "chef.png"
class Helm(_Deployment):
_icon = "helm.png"
class Kolla(_Deployment):
_icon = "kolla.png"
class Tripleo(_Deployment):
_icon = "tripleo.png"
# Aliases
KollaAnsible = Kolla
TripleO = Tripleo

@ -0,0 +1,15 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Frontend(_OpenStack):
_type = "frontend"
_icon_dir = "resources/openstack/frontend"
class Horizon(_Frontend):
_icon = "horizon.png"
# Aliases

@ -0,0 +1,11 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Lifecyclemanagement(_OpenStack):
_type = "lifecyclemanagement"
_icon_dir = "resources/openstack/lifecyclemanagement"
# Aliases

@ -0,0 +1,19 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Monitoring(_OpenStack):
_type = "monitoring"
_icon_dir = "resources/openstack/monitoring"
class Monasca(_Monitoring):
_icon = "monasca.png"
class Telemetry(_Monitoring):
_icon = "telemetry.png"
# Aliases

@ -0,0 +1,15 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Multiregion(_OpenStack):
_type = "multiregion"
_icon_dir = "resources/openstack/multiregion"
class Tricircle(_Multiregion):
_icon = "tricircle.png"
# Aliases

@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Networking(_OpenStack):
_type = "networking"
_icon_dir = "resources/openstack/networking"
class Designate(_Networking):
_icon = "designate.png"
class Neutron(_Networking):
_icon = "neutron.png"
class Octavia(_Networking):
_icon = "octavia.png"
# Aliases

@ -0,0 +1,15 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _NFV(_OpenStack):
_type = "nfv"
_icon_dir = "resources/openstack/nfv"
class Tacker(_NFV):
_icon = "tacker.png"
# Aliases

@ -0,0 +1,11 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Operations(_OpenStack):
_type = "operations"
_icon_dir = "resources/openstack/operations"
# Aliases

@ -0,0 +1,27 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Optimization(_OpenStack):
_type = "optimization"
_icon_dir = "resources/openstack/optimization"
class Congress(_Optimization):
_icon = "congress.png"
class Rally(_Optimization):
_icon = "rally.png"
class Vitrage(_Optimization):
_icon = "vitrage.png"
class Watcher(_Optimization):
_icon = "watcher.png"
# Aliases

@ -0,0 +1,31 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Orchestration(_OpenStack):
_type = "orchestration"
_icon_dir = "resources/openstack/orchestration"
class Blazar(_Orchestration):
_icon = "blazar.png"
class Heat(_Orchestration):
_icon = "heat.png"
class Mistral(_Orchestration):
_icon = "mistral.png"
class Senlin(_Orchestration):
_icon = "senlin.png"
class Zaqar(_Orchestration):
_icon = "zaqar.png"
# Aliases

@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Packaging(_OpenStack):
_type = "packaging"
_icon_dir = "resources/openstack/packaging"
class LOCI(_Packaging):
_icon = "loci.png"
class Puppet(_Packaging):
_icon = "puppet.png"
class RPM(_Packaging):
_icon = "rpm.png"
# Aliases

@ -0,0 +1,31 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Sharedservices(_OpenStack):
_type = "sharedservices"
_icon_dir = "resources/openstack/sharedservices"
class Barbican(_Sharedservices):
_icon = "barbican.png"
class Glance(_Sharedservices):
_icon = "glance.png"
class Karbor(_Sharedservices):
_icon = "karbor.png"
class Keystone(_Sharedservices):
_icon = "keystone.png"
class Searchlight(_Sharedservices):
_icon = "searchlight.png"
# Aliases

@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Storage(_OpenStack):
_type = "storage"
_icon_dir = "resources/openstack/storage"
class Cinder(_Storage):
_icon = "cinder.png"
class Manila(_Storage):
_icon = "manila.png"
class Swift(_Storage):
_icon = "swift.png"
# Aliases

@ -0,0 +1,17 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _User(_OpenStack):
_type = "user"
_icon_dir = "resources/openstack/user"
class Openstackclient(_User):
_icon = "openstackclient.png"
# Aliases
OpenStackClient = Openstackclient

@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _OpenStack
class _Workloadprovisioning(_OpenStack):
_type = "workloadprovisioning"
_icon_dir = "resources/openstack/workloadprovisioning"
class Magnum(_Workloadprovisioning):
_icon = "magnum.png"
class Sahara(_Workloadprovisioning):
_icon = "sahara.png"
class Trove(_Workloadprovisioning):
_icon = "trove.png"
# Aliases

@ -0,0 +1,122 @@
---
id: openstack
title: OpenStack
---
Node classes list of openstack provider.
## openstack.adjacentenablers
## openstack.apiproxies
- **diagrams.openstack.apiproxies.EC2API**
## openstack.applicationlifecycle
- **diagrams.openstack.applicationlifecycle.Freezer**
- **diagrams.openstack.applicationlifecycle.Masakari**
- **diagrams.openstack.applicationlifecycle.Murano**
- **diagrams.openstack.applicationlifecycle.Solum**
## openstack.baremetal
- **diagrams.openstack.baremetal.Cyborg**
- **diagrams.openstack.baremetal.Ironic**
## openstack.billing
- **diagrams.openstack.billing.Cloudkitty**, **CloudKitty** (alias)
## openstack.compute
- **diagrams.openstack.compute.Nova**
- **diagrams.openstack.compute.Qinling**
- **diagrams.openstack.compute.Zun**
## openstack.containerservices
- **diagrams.openstack.containerservices.Kuryr**
## openstack.deployment
- **diagrams.openstack.deployment.Ansible**
- **diagrams.openstack.deployment.Charms**
- **diagrams.openstack.deployment.Chef**
- **diagrams.openstack.deployment.Helm**
- **diagrams.openstack.deployment.Kolla**, **KollaAnsible** (alias)
- **diagrams.openstack.deployment.Tripleo**, **TripleO** (alias)
## openstack.frontend
- **diagrams.openstack.frontend.Horizon**
## openstack.lifecyclemanagement
## openstack.monitoring
- **diagrams.openstack.monitoring.Monasca**
- **diagrams.openstack.monitoring.Telemetry**
## openstack.multiregion
- **diagrams.openstack.multiregion.Tricircle**
## openstack.networking
- **diagrams.openstack.networking.Designate**
- **diagrams.openstack.networking.Neutron**
- **diagrams.openstack.networking.Octavia**
## openstack.nfv
- **diagrams.openstack.nfv.Tacker**
## openstack.operations
## openstack.optimization
- **diagrams.openstack.optimization.Congress**
- **diagrams.openstack.optimization.Rally**
- **diagrams.openstack.optimization.Vitrage**
- **diagrams.openstack.optimization.Watcher**
## openstack.orchestration
- **diagrams.openstack.orchestration.Blazar**
- **diagrams.openstack.orchestration.Heat**
- **diagrams.openstack.orchestration.Mistral**
- **diagrams.openstack.orchestration.Senlin**
- **diagrams.openstack.orchestration.Zaqar**
## openstack.packaging
- **diagrams.openstack.packaging.LOCI**
- **diagrams.openstack.packaging.Puppet**
- **diagrams.openstack.packaging.RPM**
## openstack.sharedservices
- **diagrams.openstack.sharedservices.Barbican**
- **diagrams.openstack.sharedservices.Glance**
- **diagrams.openstack.sharedservices.Karbor**
- **diagrams.openstack.sharedservices.Keystone**
- **diagrams.openstack.sharedservices.Searchlight**
## openstack.storage
- **diagrams.openstack.storage.Cinder**
- **diagrams.openstack.storage.Manila**
- **diagrams.openstack.storage.Swift**
## openstack.user
- **diagrams.openstack.user.Openstackclient**, **OpenStackClient** (alias)
## openstack.workloadprovisioning
- **diagrams.openstack.workloadprovisioning.Magnum**
- **diagrams.openstack.workloadprovisioning.Sahara**
- **diagrams.openstack.workloadprovisioning.Trove**

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

@ -109,6 +109,10 @@ def cleaner_elastic(f):
return f.lower()
def cleaner_openstack(f):
return f.lower()
cleaners = {
"onprem": cleaner_onprem,
"aws": cleaner_aws,
@ -122,6 +126,7 @@ cleaners = {
"saas": cleaner_saas,
"elastic": cleaner_elastic,
"generic": cleaner_generic,
"openstack": cleaner_openstack,
}

Loading…
Cancel
Save