25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

config.py 12 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411
  1. # fmt: off
  2. #########################
  3. # Application #
  4. #########################
  5. APP_NAME = "diagrams"
  6. DIR_DOC_ROOT = "docs/nodes"
  7. DIR_APP_ROOT = "diagrams"
  8. DIR_RESOURCE = "resources"
  9. DIR_TEMPLATE = "templates"
  10. PROVIDERS = (
  11. "base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic",
  12. "generic", "openstack")
  13. #########################
  14. # Resource Processing #
  15. #########################
  16. CMD_ROUND = "round"
  17. CMD_ROUND_OPTS = ("-w",)
  18. CMD_SVG2PNG = "inkscape"
  19. CMD_SVG2PNG_OPTS = ("-w", "256", "-h", "256", "--export-type", "png")
  20. CMD_SVG2PNG_IM = "convert"
  21. CMD_SVG2PNG_IM_OPTS = ("-shave", "25%x25%", "-resize", "256x256!")
  22. FILE_PREFIXES = {
  23. "onprem": (),
  24. "aws": ("Amazon-", "AWS-"),
  25. "azure": ("Azure-",),
  26. "gcp": ("Cloud-",),
  27. "firebase": ("Cloud-",),
  28. "k8s": (),
  29. "alibabacloud": (),
  30. "oci": ("OCI-icon-",),
  31. "programming": (),
  32. "saas": (),
  33. "elastic": (),
  34. "generic": (),
  35. "openstack": (),
  36. }
  37. #########################
  38. # Doc Auto Generation #
  39. #########################
  40. TMPL_APIDOC = "apidoc.tmpl"
  41. #########################
  42. # Class Auto Generation #
  43. #########################
  44. TMPL_MODULE = "module.tmpl"
  45. UPPER_WORDS = {
  46. "aws": ("aws", "api", "ebs", "ec2", "efs", "emr", "rds", "ml", "mq", "nat", "vpc", "waf", "sdk"),
  47. "azure": ("ad", "b2c", "ai", "api", "cdn", "ddos", "dns", "fxt", "hana", "hd", "id", "sap", "sql", "vm"),
  48. "gcp": ("gcp", "ai", "api", "cdn", "dns", "gke", "gpu", "iap", "ml", "nat", "os", "sdk", "sql", "tpu", "vpn"),
  49. "firebase": ("ab", "fcm", "ml"),
  50. "k8s": (
  51. "api", "cm", "ccm", "crb", "crd", "ds", "etcd", "hpa", "k8s", "ns", "psp", "pv", "pvc", "rb", "rs",
  52. "sa", "sc", "sts", "svc",
  53. ),
  54. "oci": ("oci", "ocid", "oke", "ocir", "ddos", "waf", "bm", "vm", "cdn", "vpn", "dns", "nat", "dms", "api", "id"),
  55. "elastic": ("apm", "siem", "ece", "eck"),
  56. "generic": ("vpn", "ios", "xen", "sql"),
  57. "openstack": ("rpm", "loci", "nfv", "ec2api"),
  58. }
  59. TITLE_WORDS = {
  60. "onprem": {
  61. "onprem": "OnPrem",
  62. },
  63. "alibabacloud": {
  64. "alibabacloud": "AlibabaCloud"
  65. },
  66. "aws": {
  67. "cloudfront": "CloudFront"
  68. },
  69. "openstack": {
  70. "openstack": "OpenStack"
  71. },
  72. }
  73. # TODO: check if the classname exists
  74. ALIASES = {
  75. "onprem": {
  76. "ci": {
  77. "Circleci": "CircleCI",
  78. "Concourseci": "ConcourseCI",
  79. "Gitlabci": "GitlabCI",
  80. "Travisci": "TravisCI",
  81. "Teamcity": "TC",
  82. "Zuulci": "ZuulCI",
  83. },
  84. "container": {
  85. "Rkt": "RKT",
  86. },
  87. "database": {
  88. "Clickhouse": "ClickHouse",
  89. "Cockroachdb": "CockroachDB",
  90. "Couchdb": "CouchDB",
  91. "Hbase": "HBase",
  92. "Influxdb": "InfluxDB",
  93. "Janusgraph": "JanusGraph",
  94. "Mariadb": "MariaDB",
  95. "Mongodb": "MongoDB",
  96. "Mssql": "MSSQL",
  97. "Mysql": "MySQL",
  98. "Postgresql": "PostgreSQL",
  99. },
  100. "gitops": {
  101. "Argocd": "ArgoCD",
  102. },
  103. "logging": {
  104. "Fluentbit": "FluentBit",
  105. "Rsyslog": "RSyslog",
  106. },
  107. "network": {
  108. "Etcd": "ETCD",
  109. "Haproxy": "HAProxy",
  110. "Pfsense": "PFSense",
  111. "Vyos": "VyOS"
  112. },
  113. "queue": {
  114. "Activemq": "ActiveMQ",
  115. "Rabbitmq": "RabbitMQ",
  116. "Zeromq": "ZeroMQ",
  117. },
  118. "workflow": {
  119. "Kubeflow": "KubeFlow",
  120. "Nifi": "NiFi",
  121. }
  122. },
  123. "aws": {
  124. "analytics": {
  125. "ElasticsearchService": "ES",
  126. },
  127. "business": {
  128. "AlexaForBusiness": "A4B"
  129. },
  130. "blockchain": {
  131. "QuantumLedgerDatabaseQldb": "QLDB"
  132. },
  133. "compute": {
  134. "ApplicationAutoScaling": "AutoScaling",
  135. "EC2ContainerRegistry": "ECR",
  136. "ElasticBeanstalk": "EB",
  137. "ElasticContainerService": "ECS",
  138. "ElasticKubernetesService": "EKS",
  139. "ServerlessApplicationRepository": "SAR",
  140. },
  141. "database": {
  142. "DatabaseMigrationService": "DMS",
  143. "DocumentdbMongodbCompatibility": "DocumentDB",
  144. "DynamodbDax": "DAX",
  145. "DynamodbGlobalSecondaryIndex": "DynamodbGSI",
  146. "Database": "DB",
  147. "Dynamodb": "DDB",
  148. "Elasticache": "ElastiCache",
  149. "QuantumLedgerDatabaseQldb": "QLDB",
  150. },
  151. "devtools": {
  152. "CommandLineInterface": "CLI",
  153. "DeveloperTools": "DevTools",
  154. },
  155. "engagement": {
  156. "SimpleEmailServiceSes": "SES",
  157. },
  158. "general": {
  159. "GenericOfficeBuilding": "OfficeBuilding",
  160. },
  161. "integration": {
  162. "SimpleNotificationServiceSns": "SNS",
  163. "SimpleQueueServiceSqs": "SQS",
  164. "StepFunctions": "SF",
  165. },
  166. "iot": {
  167. "Freertos": "FreeRTOS",
  168. "IotHardwareBoard": "IotBoard",
  169. },
  170. "management": {
  171. "SystemsManager": "SSM",
  172. "SystemsManagerParameterStore": "ParameterStore",
  173. },
  174. "migration": {
  175. "ApplicationDiscoveryService": "ADS",
  176. "CloudendureMigration": "CEM",
  177. "DatabaseMigrationService": "DMS",
  178. "MigrationAndTransfer": "MAT",
  179. "ServerMigrationService": "SMS",
  180. },
  181. "ml": {
  182. "DeepLearningContainers": "DLC",
  183. },
  184. "network": {
  185. "CloudFront": "CF",
  186. "ElasticLoadBalancing": "ELB",
  187. "GlobalAccelerator": "GAX",
  188. },
  189. "security": {
  190. "CertificateManager": "ACM",
  191. "Cloudhsm": "CloudHSM",
  192. "DirectoryService": "DS",
  193. "FirewallManager": "FMS",
  194. "IdentityAndAccessManagementIamAccessAnalyzer": "IAMAccessAnalyzer",
  195. "IdentityAndAccessManagementIamAWSSts": "IAMAWSSts",
  196. "IdentityAndAccessManagementIamPermissions": "IAMPermissions",
  197. "IdentityAndAccessManagementIamRole": "IAMRole",
  198. "IdentityAndAccessManagementIam": "IAM",
  199. "KeyManagementService": "KMS",
  200. "ResourceAccessManager": "RAM",
  201. },
  202. "storage": {
  203. "CloudendureDisasterRecovery": "CDR",
  204. "ElasticBlockStoreEBS": "EBS",
  205. "ElasticFileSystemEFS": "EFS",
  206. "Fsx": "FSx",
  207. "SimpleStorageServiceS3": "S3",
  208. },
  209. },
  210. "azure": {
  211. "compute": {
  212. "ContainerRegistries": "ACR",
  213. "KubernetesServices": "AKS",
  214. },
  215. },
  216. "gcp": {
  217. "analytics": {
  218. "Bigquery": "BigQuery",
  219. "Pubsub": "PubSub",
  220. },
  221. "compute": {
  222. "AppEngine": "GAE",
  223. "Functions": "GCF",
  224. "ComputeEngine": "GCE",
  225. "KubernetesEngine": "GKE",
  226. },
  227. "database": {
  228. "Bigtable": "BigTable",
  229. },
  230. "devtools": {
  231. "ContainerRegistry": "GCR",
  232. },
  233. "ml": {
  234. "Automl": "AutoML",
  235. "NaturalLanguageAPI": "NLAPI",
  236. "SpeechToText": "STT",
  237. "TextToSpeech": "TTS",
  238. },
  239. "network": {
  240. "VirtualPrivateCloud": "VPC"
  241. },
  242. "security": {
  243. "KeyManagementService": "KMS",
  244. "SecurityCommandCenter": "SCC",
  245. },
  246. "storage": {
  247. "Storage": "GCS",
  248. },
  249. },
  250. "firebase": {
  251. "grow": {
  252. "Messaging": "FCM"
  253. }
  254. },
  255. "k8s": {
  256. "clusterconfig": {
  257. "Limits": "LimitRange",
  258. "HPA": "HorizontalPodAutoscaler",
  259. },
  260. "compute": {
  261. "Deploy": "Deployment",
  262. "DS": "DaemonSet",
  263. "RS": "ReplicaSet",
  264. "STS": "StatefulSet"
  265. },
  266. "controlplane": {
  267. "API": "APIServer",
  268. "CM": "ControllerManager",
  269. "KProxy": "KubeProxy",
  270. "Sched": "Scheduler",
  271. },
  272. "group": {
  273. "NS": "Namespace",
  274. },
  275. "network": {
  276. "Ep": "Endpoint",
  277. "Ing": "Ingress",
  278. "Netpol": "NetworkPolicy",
  279. "SVC": "Service",
  280. },
  281. "podconfig": {
  282. "CM": "ConfigMap",
  283. },
  284. "rbac": {
  285. "CRole": "ClusterRole",
  286. "CRB": "ClusterRoleBinding",
  287. "RB": "RoleBinding",
  288. "SA": "ServiceAccount",
  289. },
  290. "storage": {
  291. "PV": "PersistentVolume",
  292. "PVC": "PersistentVolumeClaim",
  293. "SC": "StorageClass",
  294. "Vol": "Volume",
  295. },
  296. },
  297. "alibabacloud": {
  298. "application": {
  299. "LogService": "SLS",
  300. "MessageNotificationService": "MNS",
  301. "PerformanceTestingService": "PTS",
  302. "SmartConversationAnalysis": "SCA",
  303. },
  304. "compute": {
  305. "AutoScaling": "ESS",
  306. "ElasticComputeService": "ECS",
  307. "ElasticContainerInstance": "ECI",
  308. "ElasticHighPerformanceComputing": "EHPC",
  309. "FunctionCompute": "FC",
  310. "OperationOrchestrationService": "OOS",
  311. "ResourceOrchestrationService": "ROS",
  312. "ServerLoadBalancer": "SLB",
  313. "ServerlessAppEngine": "SAE",
  314. "SimpleApplicationServer": "SAS",
  315. "WebAppService": "WAS",
  316. },
  317. "database": {
  318. "DataManagementService": "DMS",
  319. "DataTransmissionService": "DTS",
  320. "DatabaseBackupService": "DBS",
  321. "DisributeRelationalDatabaseService": "DRDS",
  322. "GraphDatabaseService": "GDS",
  323. "RelationalDatabaseService": "RDS",
  324. },
  325. "network": {
  326. "CloudEnterpriseNetwork": "CEN",
  327. "ElasticIpAddress": "EIP",
  328. "ServerLoadBalancer": "SLB",
  329. "VirtualPrivateCloud": "VPC",
  330. },
  331. "security": {
  332. "AntiBotService": "ABS",
  333. "AntifraudService": "AS",
  334. "CloudFirewall": "CFW",
  335. "ContentModeration": "CM",
  336. "DataEncryptionService": "DES",
  337. "WebApplicationFirewall": "WAF",
  338. },
  339. "storage": {
  340. "FileStorageHdfs": "HDFS",
  341. "FileStorageNas": "NAS",
  342. "HybridBackupRecovery": "HBR",
  343. "HybridCloudDisasterRecovery": "HDR",
  344. "ObjectStorageService": "OSS",
  345. "ObjectTableStore": "OTS",
  346. }
  347. },
  348. "oci": {
  349. "compute": {
  350. "Vm": "VirtualMachine",
  351. "VmWhite": "VirtualMachineWhite",
  352. "Bm": "BareMetal",
  353. "BmWhite": "BareMetalWhite",
  354. "OCIR": "OCIRegistry",
  355. "OCIRWhite": "OCIRegistryWhite",
  356. "OKE": "ContainerEngine",
  357. "OKEWhite": "ContainerEngineWhite",
  358. },
  359. "database": {
  360. "AutonomousDatabase": "ADB",
  361. "AutonomousDatabaseWhite": "ADBWhite",
  362. "Databaseservice": "DBService",
  363. "DatabaseserviceWhite": "DBServiceWhite",
  364. }
  365. },
  366. "programming": {
  367. "language": {
  368. "Javascript": "JavaScript",
  369. "Nodejs": "NodeJS",
  370. "Php": "PHP",
  371. "Typescript": "TypeScript"
  372. },
  373. },
  374. "saas": {
  375. "logging": {
  376. "Datadog": "DataDog",
  377. }
  378. },
  379. "elastic": {
  380. "elasticsearch": {
  381. "Logstash": "LogStash",
  382. }
  383. },
  384. "generic": {},
  385. "openstack": {
  386. "user": {
  387. "Openstackclient": "OpenStackClient",
  388. },
  389. "billing": {
  390. "Cloudkitty": "CloudKitty",
  391. },
  392. "deployment": {
  393. "Kolla": "KollaAnsible",
  394. "Tripleo": "TripleO",
  395. }
  396. },
  397. }