Skip to content
This repository has been archived by the owner on May 20, 2022. It is now read-only.

Commit

Permalink
Merge branch 'master' into feature/tekton
Browse files Browse the repository at this point in the history
* master: (23 commits)
  Added generic itens and blank cluster (mingrammer#171)
  bump: up to version 0.13.1
  fix: add missing firebase base class
  docs: fix i18n
  docs(web): add sponsoring
  docs: fix Saas to SaaS
  docs: add more badges
  docs: add a sponsorship link :)
  docs: add firebase, elastic, and saas categories
  bump: up to version 0.13.0
  AWS: Added more DynamoDB and IAM resources (mingrammer#180)
  Add elastic stack (mingrammer#134) (mingrammer#174)
  Add Rust programming language (mingrammer#179)
  Add flux and flagger (mingrammer#147)
  Add Saas v2 (mingrammer#89) (mingrammer#173)
  Add nodes for Firebase (mingrammer#167)
  Add ZuulCI as onprem CI resource (mingrammer#145)
  bump: up to version 0.12.0
  Add GitlabCI to onprem.ci section (mingrammer#166)
  Add Sentry to onperm.monitoring (mingrammer#165)
  ...
  • Loading branch information
nlamirault committed Jun 4, 2020
2 parents 44a414b + 97d73ac commit 4557141
Show file tree
Hide file tree
Showing 177 changed files with 1,234 additions and 55 deletions.
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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**.

Expand Down
2 changes: 1 addition & 1 deletion autogen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ set -e
app_root_dir="diagrams"

# NOTE: azure icon set is not latest version
providers=("onprem" "aws" "azure" "gcp" "k8s" "alibabacloud" "oci" "programming")
providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic" "generic")

if ! [ -x "$(command -v round)" ]; then
echo 'round is not installed'
Expand Down
35 changes: 33 additions & 2 deletions config.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
DIR_RESOURCE = "resources"
DIR_TEMPLATE = "templates"

PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "k8s", "alibabacloud", "oci", "programming")
PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic", "generic")

#########################
# Resource Processing #
Expand All @@ -29,10 +29,14 @@
"aws": ("Amazon-", "AWS-"),
"azure": ("Azure-",),
"gcp": ("Cloud-",),
"firebase": ("Cloud-",),
"k8s": (),
"alibabacloud": (),
"oci": ("OCI-",),
"programming": (),
"saas": (),
"elastic": (),
"generic": (),
}

#########################
Expand All @@ -48,14 +52,17 @@
TMPL_MODULE = "module.tmpl"

UPPER_WORDS = {
"aws": ("aws", "api", "ebs", "ec2", "efs", "emr", "rds", "ml", "mq", "nat", "vpc", "waf"),
"aws": ("aws", "api", "ebs", "ec2", "efs", "emr", "rds", "ml", "mq", "nat", "vpc", "waf", "sdk"),
"azure": ("ad", "b2c", "ai", "api", "cdn", "ddos", "dns", "fxt", "hana", "hd", "id", "sap", "sql", "vm"),
"gcp": ("gcp", "ai", "api", "cdn", "dns", "gke", "gpu", "iap", "ml", "nat", "os", "sdk", "sql", "tpu", "vpn"),
"firebase": ("ab", "fcm", "ml"),
"k8s": (
"api", "cm", "ccm", "crb", "crd", "ds", "etcd", "hpa", "k8s", "ns", "psp", "pv", "pvc", "rb", "rs",
"sa", "sc", "sts", "svc",
),
"oci": ("oci",),
"elastic": ("apm", "siem", "ece", "eck"),
"generic": ("vpn",),
}

TITLE_WORDS = {
Expand All @@ -75,8 +82,10 @@
"onprem": {
"ci": {
"Circleci": "CircleCI",
"Gitlabci": "GitlabCI",
"Travisci": "TravisCI",
"Teamcity": "TC",
"Zuulci": "ZuulCI",
},
"container": {
"Rkt": "RKT",
Expand Down Expand Up @@ -132,6 +141,8 @@
"database": {
"DatabaseMigrationService": "DMS",
"DocumentdbMongodbCompatibility": "DocumentDB",
"DynamodbDax": "DAX",
"DynamodbGlobalSecondaryIndex": "DynamodbGSI",
"Database": "DB",
"Dynamodb": "DDB",
"Elasticache": "ElastiCache",
Expand All @@ -144,13 +155,17 @@
"engagement": {
"SimpleEmailServiceSes": "SES",
},
"general": {
"GenericOfficeBuilding": "OfficeBuilding",
},
"integration": {
"SimpleNotificationServiceSns": "SNS",
"SimpleQueueServiceSqs": "SQS",
"StepFunctions": "SF",
},
"iot": {
"Freertos": "FreeRTOS",
"IotHardwareBoard": "IotBoard",
},
"management": {
"SystemsManager": "SSM",
Expand All @@ -176,6 +191,10 @@
"Cloudhsm": "CloudHSM",
"DirectoryService": "DS",
"FirewallManager": "FMS",
"IdentityAndAccessManagementIamAccessAnalyzer": "IAMAccessAnalyzer",
"IdentityAndAccessManagementIamAWSSts": "IAMAWSSts",
"IdentityAndAccessManagementIamPermissions": "IAMPermissions",
"IdentityAndAccessManagementIamRole": "IAMRole",
"IdentityAndAccessManagementIam": "IAM",
"KeyManagementService": "KMS",
"ResourceAccessManager": "RAM",
Expand Down Expand Up @@ -228,6 +247,11 @@
"Storage": "GCS",
},
},
"firebase": {
"grow": {
"Messaging": "FCM"
}
},
"k8s": {
"clusterconfig": {
"Limits": "LimitRange",
Expand Down Expand Up @@ -341,4 +365,11 @@
"Typescript": "TypeScript"
},
},
"saas": {},
"elastic": {
"elasticsearch": {
"Logstash": "LogStash",
}
},
"generic": {},
}
14 changes: 14 additions & 0 deletions diagrams/aws/database.py
Original file line number Diff line number Diff line change
Expand Up @@ -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"

Expand Down Expand Up @@ -60,6 +72,8 @@ class Timestream(_Database):

DMS = DatabaseMigrationService
DocumentDB = DocumentdbMongodbCompatibility
DAX = DynamodbDax
DynamodbGSI = DynamodbGlobalSecondaryIndex
DB = Database
DDB = Dynamodb
ElastiCache = Elasticache
Expand Down
15 changes: 15 additions & 0 deletions diagrams/aws/game.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.

from . import _AWS


class _Game(_AWS):
_type = "game"
_icon_dir = "resources/aws/game"


class Gamelift(_Game):
_icon = "gamelift.png"


# Aliases
57 changes: 57 additions & 0 deletions diagrams/aws/general.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.

from . import _AWS


class _General(_AWS):
_type = "general"
_icon_dir = "resources/aws/general"


class Disk(_General):
_icon = "disk.png"


class General(_General):
_icon = "general.png"


class GenericDatabase(_General):
_icon = "generic-database.png"


class GenericFirewall(_General):
_icon = "generic-firewall.png"


class GenericOfficeBuilding(_General):
_icon = "generic-office-building.png"


class GenericSamlToken(_General):
_icon = "generic-saml-token.png"


class GenericSDK(_General):
_icon = "generic-sdk.png"


class Marketplace(_General):
_icon = "marketplace.png"


class TradicionalServer(_General):
_icon = "tradicional-server.png"


class User(_General):
_icon = "user.png"


class Users(_General):
_icon = "users.png"


# Aliases

OfficeBuilding = GenericOfficeBuilding
41 changes: 41 additions & 0 deletions diagrams/aws/iot.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,14 @@ class Iot1Click(_Iot):
_icon = "iot-1-click.png"


class IotAlexaEcho(_Iot):
_icon = "iot-alexa-echo.png"


class IotAlexaSkill(_Iot):
_icon = "iot-alexa-skill.png"


class IotAnalytics(_Iot):
_icon = "iot-analytics.png"

Expand All @@ -28,6 +36,14 @@ class IotButton(_Iot):
_icon = "iot-button.png"


class IotCamera(_Iot):
_icon = "iot-camera.png"


class IotCertificate(_Iot):
_icon = "iot-certificate.png"


class IotCore(_Iot):
_icon = "iot-core.png"

Expand All @@ -48,6 +64,26 @@ class IotGreengrass(_Iot):
_icon = "iot-greengrass.png"


class IotHardwareBoard(_Iot):
_icon = "iot-hardware-board.png"


class IotJobs(_Iot):
_icon = "iot-jobs.png"


class IotMqtt(_Iot):
_icon = "iot-mqtt.png"


class IotRule(_Iot):
_icon = "iot-rule.png"


class IotShadow(_Iot):
_icon = "iot-shadow.png"


class IotSitewise(_Iot):
_icon = "iot-sitewise.png"

Expand All @@ -56,6 +92,11 @@ class IotThingsGraph(_Iot):
_icon = "iot-things-graph.png"


class IotTopic(_Iot):
_icon = "iot-topic.png"


# Aliases

FreeRTOS = Freertos
IotBoard = IotHardwareBoard
23 changes: 23 additions & 0 deletions diagrams/aws/robotics.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# This module is automatically generated by autogen.sh. DO NOT EDIT.

from . import _AWS


class _Robotics(_AWS):
_type = "robotics"
_icon_dir = "resources/aws/robotics"


class RobomakerSimulator(_Robotics):
_icon = "robomaker-simulator.png"


class Robomaker(_Robotics):
_icon = "robomaker.png"


class Robotics(_Robotics):
_icon = "robotics.png"


# Aliases
24 changes: 24 additions & 0 deletions diagrams/aws/security.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@ class Cognito(_Security):
_icon = "cognito.png"


class Detective(_Security):
_icon = "detective.png"


class DirectoryService(_Security):
_icon = "directory-service.png"

Expand All @@ -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"

Expand Down Expand Up @@ -90,6 +110,10 @@ class WAF(_Security):
CloudHSM = Cloudhsm
DS = DirectoryService
FMS = FirewallManager
IAMAccessAnalyzer = IdentityAndAccessManagementIamAccessAnalyzer
IAMAWSSts = IdentityAndAccessManagementIamAWSSts
IAMPermissions = IdentityAndAccessManagementIamPermissions
IAMRole = IdentityAndAccessManagementIamRole
IAM = IdentityAndAccessManagementIam
KMS = KeyManagementService
RAM = ResourceAccessManager
Loading

0 comments on commit 4557141

Please sign in to comment.