Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 
 

477 рядки
13 KiB

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