diff --git a/autogen.sh b/autogen.sh index f5e065b..062d75c 100755 --- a/autogen.sh +++ b/autogen.sh @@ -20,6 +20,7 @@ providers=( "generic" "openstack" "outscale" + "hashicorp" ) if ! [ -x "$(command -v round)" ]; then diff --git a/config.py b/config.py index 86a5834..43c3b17 100644 --- a/config.py +++ b/config.py @@ -29,6 +29,7 @@ PROVIDERS = ( "generic", "openstack", "outscale", + "hashicorp", ) ######################### @@ -47,6 +48,7 @@ FILE_PREFIXES = { "aws": ("Amazon-", "AWS-"), "azure": ("Azure-",), "digitalocean": (), + "hashicorp": (), "gcp": ("Cloud-",), "firebase": ("Cloud-",), "ibm": (), @@ -104,6 +106,9 @@ TITLE_WORDS = { "digitalocean": { "digitalocean": "DigitalOcean" }, + "hashicorp": { + "hashicorp": "HashiCorp" + }, "openstack": { "openstack": "OpenStack" }, @@ -411,6 +416,7 @@ ALIASES = { } }, "digitalocean": {}, + "hashicorp": {}, "oci": { "compute": { "VM": "VirtualMachine", diff --git a/diagrams/hashicorp/__init__.py b/diagrams/hashicorp/__init__.py new file mode 100644 index 0000000..6030ebc --- /dev/null +++ b/diagrams/hashicorp/__init__.py @@ -0,0 +1,12 @@ +""" +HashiCorp provides a set of services for HashiCorp provider. +""" + +from diagrams import Node + + +class _HashiCorp(Node): + _provider = "hashicorp" + _icon_dir = "resources/hashicorp" + + fontcolor = "#ffffff" diff --git a/diagrams/hashicorp/applications.py b/diagrams/hashicorp/applications.py new file mode 100644 index 0000000..11eefac --- /dev/null +++ b/diagrams/hashicorp/applications.py @@ -0,0 +1,23 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _HashiCorp + + +class _Applications(_HashiCorp): + _type = "applications" + _icon_dir = "resources/hashicorp/applications" + + +class Nomad(_Applications): + _icon = "nomad.png" + + +class Vagrant(_Applications): + _icon = "vagrant.png" + + +class Waypoint(_Applications): + _icon = "waypoint.png" + + +# Aliases diff --git a/diagrams/hashicorp/infrastructure.py b/diagrams/hashicorp/infrastructure.py new file mode 100644 index 0000000..4aa6d3f --- /dev/null +++ b/diagrams/hashicorp/infrastructure.py @@ -0,0 +1,19 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _HashiCorp + + +class _Infrastructure(_HashiCorp): + _type = "infrastructure" + _icon_dir = "resources/hashicorp/infrastructure" + + +class Packer(_Infrastructure): + _icon = "packer.png" + + +class Terraform(_Infrastructure): + _icon = "terraform.png" + + +# Aliases diff --git a/diagrams/hashicorp/networking.py b/diagrams/hashicorp/networking.py new file mode 100644 index 0000000..5fa68d8 --- /dev/null +++ b/diagrams/hashicorp/networking.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _HashiCorp + + +class _Networking(_HashiCorp): + _type = "networking" + _icon_dir = "resources/hashicorp/networking" + + +class Consul(_Networking): + _icon = "consul.png" + + +# Aliases diff --git a/diagrams/hashicorp/security.py b/diagrams/hashicorp/security.py new file mode 100644 index 0000000..d4359fb --- /dev/null +++ b/diagrams/hashicorp/security.py @@ -0,0 +1,19 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _HashiCorp + + +class _Security(_HashiCorp): + _type = "security" + _icon_dir = "resources/hashicorp/security" + + +class Boundary(_Security): + _icon = "boundary.png" + + +class Vault(_Security): + _icon = "vault.png" + + +# Aliases diff --git a/diagrams/onprem/ci.py b/diagrams/onprem/ci.py index cdb2533..c305593 100644 --- a/diagrams/onprem/ci.py +++ b/diagrams/onprem/ci.py @@ -40,6 +40,10 @@ class Travisci(_Ci): _icon = "travisci.png" +class Waypoint(_Ci): + _icon = "waypoint.png" + + class Zuulci(_Ci): _icon = "zuulci.png" diff --git a/diagrams/onprem/iac.py b/diagrams/onprem/iac.py index 33d8ea7..10c93de 100644 --- a/diagrams/onprem/iac.py +++ b/diagrams/onprem/iac.py @@ -20,6 +20,10 @@ class Awx(_Iac): _icon = "awx.png" +class Packer(_Iac): + _icon = "packer.png" + + class Puppet(_Iac): _icon = "puppet.png" @@ -28,4 +32,8 @@ class Terraform(_Iac): _icon = "terraform.png" +class Vagrant(_Iac): + _icon = "vagrant.png" + + # Aliases diff --git a/diagrams/onprem/security.py b/diagrams/onprem/security.py index d044742..4f7ef2f 100644 --- a/diagrams/onprem/security.py +++ b/diagrams/onprem/security.py @@ -12,6 +12,10 @@ class Bitwarden(_Security): _icon = "bitwarden.png" +class Boundary(_Security): + _icon = "boundary.png" + + class Trivy(_Security): _icon = "trivy.png" diff --git a/docs/nodes/hashicorp.md b/docs/nodes/hashicorp.md new file mode 100644 index 0000000..6c4cd8b --- /dev/null +++ b/docs/nodes/hashicorp.md @@ -0,0 +1,26 @@ +--- +id: hashicorp +title: HashiCorp +--- + +Node classes list of hashicorp provider. + +## hashicorp.applications + +- **diagrams.hashicorp.applications.Nomad** +- **diagrams.hashicorp.applications.Vagrant** +- **diagrams.hashicorp.applications.Waypoint** + +## hashicorp.infrastructure + +- **diagrams.hashicorp.infrastructure.Packer** +- **diagrams.hashicorp.infrastructure.Terraform** + +## hashicorp.networking + +- **diagrams.hashicorp.networking.Consul** + +## hashicorp.security + +- **diagrams.hashicorp.security.Boundary** +- **diagrams.hashicorp.security.Vault** diff --git a/resources/hashicorp/applications/nomad.png b/resources/hashicorp/applications/nomad.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/applications/vagrant.png b/resources/hashicorp/applications/vagrant.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/applications/waypoint.png b/resources/hashicorp/applications/waypoint.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/infrastructure/packer.png b/resources/hashicorp/infrastructure/packer.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/infrastructure/terraform.png b/resources/hashicorp/infrastructure/terraform.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/networking/consul.png b/resources/hashicorp/networking/consul.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/security/boundary.png b/resources/hashicorp/security/boundary.png new file mode 100755 index 0000000..e69de29 diff --git a/resources/hashicorp/security/vault.png b/resources/hashicorp/security/vault.png new file mode 100644 index 0000000..e69de29 diff --git a/resources/onprem/ci/waypoint.png b/resources/onprem/ci/waypoint.png new file mode 100644 index 0000000..3e38322 Binary files /dev/null and b/resources/onprem/ci/waypoint.png differ diff --git a/resources/onprem/iac/packer.png b/resources/onprem/iac/packer.png new file mode 100644 index 0000000..a601c91 Binary files /dev/null and b/resources/onprem/iac/packer.png differ diff --git a/resources/onprem/iac/terraform.png b/resources/onprem/iac/terraform.png index 92dc730..5757e67 100644 Binary files a/resources/onprem/iac/terraform.png and b/resources/onprem/iac/terraform.png differ diff --git a/resources/onprem/iac/vagrant.png b/resources/onprem/iac/vagrant.png new file mode 100644 index 0000000..770aea6 Binary files /dev/null and b/resources/onprem/iac/vagrant.png differ diff --git a/resources/onprem/security/boundary.png b/resources/onprem/security/boundary.png new file mode 100644 index 0000000..b213c4d Binary files /dev/null and b/resources/onprem/security/boundary.png differ diff --git a/scripts/resource.py b/scripts/resource.py index cdea937..874e50a 100644 --- a/scripts/resource.py +++ b/scripts/resource.py @@ -84,6 +84,7 @@ def cleaner_k8s(f): break return f.lower() + def cleaner_digitalocean(f): f = f.replace("-32", "") for p in cfg.FILE_PREFIXES["digitalocean"]: @@ -135,6 +136,10 @@ def cleaner_openstack(f): return f.lower() +def cleaner_hashicorp(f): + return f.lower() + + cleaners = { "onprem": cleaner_onprem, "aws": cleaner_aws, @@ -152,6 +157,7 @@ cleaners = { "outscale": cleaner_outscale, "generic": cleaner_generic, "openstack": cleaner_openstack, + "hashicorp": cleaner_hashicorp, }