Merge branch 'master' into master

pull/171/head
Leandro Damascena 5 years ago committed by GitHub
commit 1c13ded13d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -14,6 +14,11 @@
![alibaba cloud provider](https://img.shields.io/badge/provider-AlibabaCloud-orange)
![oracle cloud provider](https://img.shields.io/badge/provider-OracleCloud-orange?logo=oracle&color=f80000)
![programming provider](https://img.shields.io/badge/provider-Programming-orange?color=5f87bf)
![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)
<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>
**Diagram as Code**.

@ -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" "generic")
providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic" "generic")
if ! [ -x "$(command -v round)" ]; then
echo 'round is not installed'

@ -11,7 +11,7 @@ DIR_APP_ROOT = "diagrams"
DIR_RESOURCE = "resources"
DIR_TEMPLATE = "templates"
PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "generic")
PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic", "generic")
#########################
# Resource Processing #
@ -35,6 +35,7 @@ FILE_PREFIXES = {
"oci": ("OCI-",),
"programming": (),
"saas": (),
"elastic": (),
"generic": (),
}
@ -60,6 +61,7 @@ UPPER_WORDS = {
"sa", "sc", "sts", "svc",
),
"oci": ("oci",),
"elastic": ("apm", "siem", "ece", "eck"),
"generic": ("vpn",),
}
@ -139,6 +141,8 @@ ALIASES = {
"database": {
"DatabaseMigrationService": "DMS",
"DocumentdbMongodbCompatibility": "DocumentDB",
"DynamodbDax": "DAX",
"DynamodbGlobalSecondaryIndex": "DynamodbGSI",
"Database": "DB",
"Dynamodb": "DDB",
"Elasticache": "ElastiCache",
@ -187,6 +191,10 @@ ALIASES = {
"Cloudhsm": "CloudHSM",
"DirectoryService": "DS",
"FirewallManager": "FMS",
"IdentityAndAccessManagementIamAccessAnalyzer": "IAMAccessAnalyzer",
"IdentityAndAccessManagementIamAWSSts": "IAMAWSSts",
"IdentityAndAccessManagementIamPermissions": "IAMPermissions",
"IdentityAndAccessManagementIamRole": "IAMRole",
"IdentityAndAccessManagementIam": "IAM",
"KeyManagementService": "KMS",
"ResourceAccessManager": "RAM",
@ -358,5 +366,10 @@ ALIASES = {
},
},
"saas": {},
"elastic": {
"elasticsearch": {
"Logstash": "LogStash",
}
},
"generic": {},
}

@ -24,6 +24,18 @@ class DocumentdbMongodbCompatibility(_Database):
_icon = "documentdb-mongodb-compatibility.png"
class DynamodbDax(_Database):
_icon = "dynamodb-dax.png"
class DynamodbGlobalSecondaryIndex(_Database):
_icon = "dynamodb-global-secondary-index.png"
class DynamodbTable(_Database):
_icon = "dynamodb-table.png"
class Dynamodb(_Database):
_icon = "dynamodb.png"
@ -60,6 +72,8 @@ class Timestream(_Database):
DMS = DatabaseMigrationService
DocumentDB = DocumentdbMongodbCompatibility
DAX = DynamodbDax
DynamodbGSI = DynamodbGlobalSecondaryIndex
DB = Database
DDB = Dynamodb
ElastiCache = Elasticache

@ -28,6 +28,10 @@ class Cognito(_Security):
_icon = "cognito.png"
class Detective(_Security):
_icon = "detective.png"
class DirectoryService(_Security):
_icon = "directory-service.png"
@ -40,6 +44,22 @@ class Guardduty(_Security):
_icon = "guardduty.png"
class IdentityAndAccessManagementIamAccessAnalyzer(_Security):
_icon = "identity-and-access-management-iam-access-analyzer.png"
class IdentityAndAccessManagementIamAWSSts(_Security):
_icon = "identity-and-access-management-iam-aws-sts.png"
class IdentityAndAccessManagementIamPermissions(_Security):
_icon = "identity-and-access-management-iam-permissions.png"
class IdentityAndAccessManagementIamRole(_Security):
_icon = "identity-and-access-management-iam-role.png"
class IdentityAndAccessManagementIam(_Security):
_icon = "identity-and-access-management-iam.png"
@ -90,6 +110,10 @@ ACM = CertificateManager
CloudHSM = Cloudhsm
DS = DirectoryService
FMS = FirewallManager
IAMAccessAnalyzer = IdentityAndAccessManagementIamAccessAnalyzer
IAMAWSSts = IdentityAndAccessManagementIamAWSSts
IAMPermissions = IdentityAndAccessManagementIamPermissions
IAMRole = IdentityAndAccessManagementIamRole
IAM = IdentityAndAccessManagementIam
KMS = KeyManagementService
RAM = ResourceAccessManager

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

@ -0,0 +1,49 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _Elastic
class _Elasticsearch(_Elastic):
_type = "elasticsearch"
_icon_dir = "resources/elastic/elasticsearch"
class Alerting(_Elasticsearch):
_icon = "alerting.png"
class Elasticsearch(_Elasticsearch):
_icon = "elasticsearch.png"
class Kibana(_Elasticsearch):
_icon = "kibana.png"
class Logstash(_Elasticsearch):
_icon = "logstash.png"
class MachineLearning(_Elasticsearch):
_icon = "machine-learning.png"
class Maps(_Elasticsearch):
_icon = "maps.png"
class Monitoring(_Elasticsearch):
_icon = "monitoring.png"
class SecuritySettings(_Elasticsearch):
_icon = "security-settings.png"
class Sql(_Elasticsearch):
_icon = "sql.png"
# Aliases
LogStash = Logstash

@ -0,0 +1,27 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _Elastic
class _Enterprisesearch(_Elastic):
_type = "enterprisesearch"
_icon_dir = "resources/elastic/enterprisesearch"
class AppSearch(_Enterprisesearch):
_icon = "app-search.png"
class EnterpriseSearch(_Enterprisesearch):
_icon = "enterprise-search.png"
class SiteSearch(_Enterprisesearch):
_icon = "site-search.png"
class WorkplaceSearch(_Enterprisesearch):
_icon = "workplace-search.png"
# Aliases

@ -0,0 +1,31 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _Elastic
class _Observability(_Elastic):
_type = "observability"
_icon_dir = "resources/elastic/observability"
class APM(_Observability):
_icon = "apm.png"
class Logs(_Observability):
_icon = "logs.png"
class Metrics(_Observability):
_icon = "metrics.png"
class Observability(_Observability):
_icon = "observability.png"
class Uptime(_Observability):
_icon = "uptime.png"
# Aliases

@ -0,0 +1,19 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _Elastic
class _Orchestration(_Elastic):
_type = "orchestration"
_icon_dir = "resources/elastic/orchestration"
class ECE(_Orchestration):
_icon = "ece.png"
class ECK(_Orchestration):
_icon = "eck.png"
# Aliases

@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.
from . import _Elastic
class _Security(_Elastic):
_type = "security"
_icon_dir = "resources/elastic/security"
class Endpoint(_Security):
_icon = "endpoint.png"
class Security(_Security):
_icon = "security.png"
class SIEM(_Security):
_icon = "siem.png"
# Aliases

@ -12,6 +12,14 @@ class Argocd(_Gitops):
_icon = "argocd.png"
class Flagger(_Gitops):
_icon = "flagger.png"
class Flux(_Gitops):
_icon = "flux.png"
# Aliases
ArgoCD = Argocd

@ -68,6 +68,10 @@ class Ruby(_Language):
_icon = "ruby.png"
class Rust(_Language):
_icon = "rust.png"
class Swift(_Language):
_icon = "swift.png"

@ -61,6 +61,9 @@ Node classes list of aws provider.
- **diagrams.aws.database.DatabaseMigrationService**, **DMS** (alias)
- **diagrams.aws.database.Database**, **DB** (alias)
- **diagrams.aws.database.DocumentdbMongodbCompatibility**, **DocumentDB** (alias)
- **diagrams.aws.database.DynamodbDax**, **DAX** (alias)
- **diagrams.aws.database.DynamodbGlobalSecondaryIndex**, **DynamodbGSI** (alias)
- **diagrams.aws.database.DynamodbTable**
- **diagrams.aws.database.Dynamodb**, **DDB** (alias)
- **diagrams.aws.database.Elasticache**, **ElastiCache** (alias)
- **diagrams.aws.database.Neptune**
@ -254,9 +257,14 @@ Node classes list of aws provider.
- **diagrams.aws.security.CloudDirectory**
- **diagrams.aws.security.Cloudhsm**, **CloudHSM** (alias)
- **diagrams.aws.security.Cognito**
- **diagrams.aws.security.Detective**
- **diagrams.aws.security.DirectoryService**, **DS** (alias)
- **diagrams.aws.security.FirewallManager**, **FMS** (alias)
- **diagrams.aws.security.Guardduty**
- **diagrams.aws.security.IdentityAndAccessManagementIamAccessAnalyzer**, **IAMAccessAnalyzer** (alias)
- **diagrams.aws.security.IdentityAndAccessManagementIamAWSSts**, **IAMAWSSts** (alias)
- **diagrams.aws.security.IdentityAndAccessManagementIamPermissions**, **IAMPermissions** (alias)
- **diagrams.aws.security.IdentityAndAccessManagementIamRole**, **IAMRole** (alias)
- **diagrams.aws.security.IdentityAndAccessManagementIam**, **IAM** (alias)
- **diagrams.aws.security.Inspector**
- **diagrams.aws.security.KeyManagementService**, **KMS** (alias)

@ -0,0 +1,44 @@
---
id: elastic
title: Elastic
---
Node classes list of elastic provider.
## elastic.elasticsearch
- **diagrams.elastic.elasticsearch.Alerting**
- **diagrams.elastic.elasticsearch.Elasticsearch**
- **diagrams.elastic.elasticsearch.Kibana**
- **diagrams.elastic.elasticsearch.Logstash**, **LogStash** (alias)
- **diagrams.elastic.elasticsearch.MachineLearning**
- **diagrams.elastic.elasticsearch.Maps**
- **diagrams.elastic.elasticsearch.Monitoring**
- **diagrams.elastic.elasticsearch.SecuritySettings**
- **diagrams.elastic.elasticsearch.Sql**
## elastic.enterprisesearch
- **diagrams.elastic.enterprisesearch.AppSearch**
- **diagrams.elastic.enterprisesearch.EnterpriseSearch**
- **diagrams.elastic.enterprisesearch.SiteSearch**
- **diagrams.elastic.enterprisesearch.WorkplaceSearch**
## elastic.observability
- **diagrams.elastic.observability.APM**
- **diagrams.elastic.observability.Logs**
- **diagrams.elastic.observability.Metrics**
- **diagrams.elastic.observability.Observability**
- **diagrams.elastic.observability.Uptime**
## elastic.orchestration
- **diagrams.elastic.orchestration.ECE**
- **diagrams.elastic.orchestration.ECK**
## elastic.security
- **diagrams.elastic.security.Endpoint**
- **diagrams.elastic.security.Security**
- **diagrams.elastic.security.SIEM**

@ -73,6 +73,8 @@ Node classes list of onprem provider.
## onprem.gitops
- **diagrams.onprem.gitops.Argocd**, **ArgoCD** (alias)
- **diagrams.onprem.gitops.Flagger**
- **diagrams.onprem.gitops.Flux**
## onprem.iac

@ -36,5 +36,6 @@ Node classes list of programming provider.
- **diagrams.programming.language.Python**
- **diagrams.programming.language.R**
- **diagrams.programming.language.Ruby**
- **diagrams.programming.language.Rust**
- **diagrams.programming.language.Swift**
- **diagrams.programming.language.Typescript**, **TypeScript** (alias)

@ -1,6 +1,6 @@
[tool.poetry]
name = "diagrams"
version = "0.12.0"
version = "0.13.0"
description = "Diagram as Code"
license = "MIT"
authors = ["mingrammer <mingrammer@gmail.com>"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 650 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

@ -7,7 +7,7 @@ from jinja2 import Environment, FileSystemLoader, Template
import config as cfg
from . import app_root_dir, doc_root_dir, resource_dir, template_dir
_usage = "Usage: generate.py <onprem|aws|gcp|azure|k8s|alibabacloud|oci|programming|saas>"
_usage = "Usage: generate.py <onprem|aws|gcp|azure|k8s|alibabacloud|oci|programming|saas|elastic>"
def load_tmpl(tmpl: str) -> Template:

@ -24,6 +24,7 @@ def cleaner_onprem(f):
def cleaner_aws(f):
f = f.replace("_", "-")
f = f.replace("@4x", "")
f = f.replace("-light-bg4x", "")
f = f.replace("-light-bg", "")
for p in cfg.FILE_PREFIXES["aws"]:
if f.startswith(p):
@ -100,6 +101,10 @@ def cleaner_saas(f):
return f.lower()
def cleaner_elastic(f):
return f.lower()
cleaners = {
"onprem": cleaner_onprem,
"aws": cleaner_aws,
@ -111,6 +116,7 @@ cleaners = {
"oci": cleaner_oci,
"programming": cleaner_programming,
"saas": cleaner_saas,
"elastic": cleaner_elastic,
"generic": cleaner_generic,
}

@ -32,6 +32,12 @@
"nodes/azure": {
"title": "Azure"
},
"nodes/elastic": {
"title": "Elastic"
},
"nodes/firebase": {
"title": "Firebase"
},
"nodes/gcp": {
"title": "GCP"
},
@ -46,13 +52,17 @@
},
"nodes/programming": {
"title": "Programming"
},
"nodes/saas": {
"title": "Saas"
}
},
"links": {
"Docs": "Docs",
"Guides": "Guides",
"Nodes": "Nodes",
"GitHub": "GitHub"
"GitHub": "GitHub",
"Sponsorship": "Sponsorship"
},
"categories": {
"Getting Started": "Getting Started",

@ -111,6 +111,20 @@ class Index extends React.Component {
</div>
);
const Sponsorship = () => (
<div
className="productShowcaseSection paddingBottom"
style={{textAlign: 'center'}}>
<h2>Sponsorship</h2>
<MarkdownBlock>
Sponsoring always helps a lot to maintain Diagrams. Thank you :)
</MarkdownBlock>
<a href="https://www.buymeacoffee.com/mingrammer" target="_blank">
<img id="buymeacoffee" src="https://cdn.buymeacoffee.com/buttons/default-orange.png" alt="Buy Me A Coffee"/>
</a>
</div>
);
const Example = () => (
<Block>
{[
@ -148,6 +162,7 @@ class Index extends React.Component {
<About />
<Example />
<Example2 />
<Sponsorship />
</div>
</div>
);

@ -18,7 +18,10 @@
"nodes/k8s",
"nodes/alibabacloud",
"nodes/oci",
"nodes/programming"
"nodes/programming",
"nodes/firebase",
"nodes/saas",
"nodes/elastic"
]
}
}

@ -22,6 +22,7 @@ const siteConfig = {
{doc: 'guides/diagram', label: 'Guides'},
{doc: 'nodes/aws', label: 'Nodes'},
{href: 'https://github.com/mingrammer/diagrams', label: 'GitHub'},
{href: 'https://www.buymeacoffee.com/mingrammer', label: 'Sponsoring'},
],
headerIcon: 'img/diagrams.ico',

@ -21,3 +21,7 @@
@media only screen and (min-width: 1500px) {
}
#buymeacoffee {
height: 50px;
}
Loading…
Cancel
Save