Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into feature/update-az…
Browse files Browse the repository at this point in the history
…ure-icons-v18
  • Loading branch information
ebbypeter committed Nov 12, 2024
2 parents cfeb87f + c2c24c6 commit 8a347ff
Show file tree
Hide file tree
Showing 77 changed files with 439 additions and 410 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can check out the head.
Expand All @@ -29,10 +29,10 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v3
# Override language selection by uncommenting this and choosing your languages
with:
languages: python

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v3
12 changes: 8 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,31 @@ on:
- master
paths:
- ".github/workflows/test.yml"
- "pyproject.toml"
- "poetry.lock"
- "**.py"
pull_request:
branches:
- master
paths:
- ".github/workflows/test.yml"
- "pyproject.toml"
- "poetry.lock"
- "**.py"

jobs:
test:
strategy:
matrix:
python: ["3.9", "3.10", "3.11"]
python: ["3.9", "3.10", "3.11", "3.12", "3.13"]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@v1
uses: ts-graphviz/setup-graphviz@v2
- name: Install poetry
run: curl -sSL https://install.python-poetry.org | python3 -
- name: Run all tests
Expand Down
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -394,3 +394,17 @@ The following import changes:
### Added

- Support kubernetes diagrams: [3eda1cb](https://github.com/mingrammer/diagrams/commit/3eda1cb6bca8be8a55773d90b93483a8fab3e0f1)


## v0.23.5

### Breaking Changes

The following import changes:

#### OCI

| Old import path | New import path |
| -------------------------------------------------------------------| --------------------------------------------------------------|
| `from diagrams.oci.connectivity import CustomerPremiseWhite` | `from diagrams.oci.connectivity import CustomerPremisesWhite` |
| `from diagrams.oci.connectivity import CustomerPremises` | `from diagrams.oci.connectivity import CustomerPremises` |
2 changes: 1 addition & 1 deletion DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,4 +74,4 @@ To be able to develop and run diagrams locally on you Mac device, you should hav
./autogen.sh
```
7. If the unit tests and the bash script `autogen.sh` is working correctly, then your system is now ready for development.
7. If the unit tests and the bash script `autogen.sh` is working correctly, then your system is now ready for development.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

**Diagram as Code**.

Diagrams lets you draw the cloud system architecture **in Python code**. It was born for **prototyping** a new system architecture design without any design tools. You can also describe or visualize the existing system architecture as well. Diagrams currently supports main major providers including: `AWS`, `Azure`, `GCP`, `Kubernetes`, `Alibaba Cloud`, `Oracle Cloud` etc... It also supports `On-Premise` nodes, `SaaS` and major `Programming` frameworks and languages.
Diagrams lets you draw the cloud system architecture **in Python code**. It was born for **prototyping** a new system architecture design without any design tools. You can also describe or visualize the existing system architecture as well. Diagrams currently supports main major providers including: `AWS`, `Azure`, `GCP`, `Kubernetes`, `Alibaba Cloud`, `Oracle Cloud` etc... It also supports `On-Premises` nodes, `SaaS` and major `Programming` frameworks and languages.

**Diagram as Code** also allows you to **track** the architecture diagram changes in any **version control** system.

Expand All @@ -33,7 +33,7 @@ Diagrams lets you draw the cloud system architecture **in Python code**. It was
![digital ocean provider](https://img.shields.io/badge/DigitalOcean-0080ff?logo=digitalocean&color=0080ff)
![elastic provider](https://img.shields.io/badge/Elastic-orange?logo=elastic&color=005571)
![outscale provider](https://img.shields.io/badge/OutScale-orange?color=5f87bf)
![on premise provider](https://img.shields.io/badge/OnPremise-orange?color=5f87bf)
![on premises provider](https://img.shields.io/badge/OnPremises-orange?color=5f87bf)
![generic provider](https://img.shields.io/badge/Generic-orange?color=5f87bf)
![programming provider](https://img.shields.io/badge/Programming-orange?color=5f87bf)
![saas provider](https://img.shields.io/badge/SaaS-orange?color=5f87bf)
Expand Down Expand Up @@ -64,7 +64,7 @@ You can start with [quick start](https://diagrams.mingrammer.com/docs/getting-st

| Event Processing | Stateful Architecture | Advanced Web Service |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| ![event processing](https://diagrams.mingrammer.com/img/event_processing_diagram.png) | ![stateful architecture](https://diagrams.mingrammer.com/img/stateful_architecture_diagram.png) | ![advanced web service with on-premise](https://diagrams.mingrammer.com/img/advanced_web_service_with_on-premise.png) |
| ![event processing](https://diagrams.mingrammer.com/img/event_processing_diagram.png) | ![stateful architecture](https://diagrams.mingrammer.com/img/stateful_architecture_diagram.png) | ![advanced web service with on-premises](https://diagrams.mingrammer.com/img/advanced_web_service_with_on-premises.png) |

You can find all the examples on the [examples](https://diagrams.mingrammer.com/docs/getting-started/examples) page.

Expand Down
4 changes: 3 additions & 1 deletion config.py
Original file line number Diff line number Diff line change
Expand Up @@ -429,7 +429,9 @@
"programming": {
"framework": {
"Fastapi": "FastAPI",
"Graphql": "GraphQL"
"Graphql": "GraphQL",
"Dotnet": "DotNet",
"Nextjs": "NextJs"
},
"language": {
"Javascript": "JavaScript",
Expand Down
2 changes: 1 addition & 1 deletion diagrams/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ def __init__(
filename: str = "",
direction: str = "LR",
curvestyle: str = "ortho",
outformat: str = "png",
outformat: Union[str, list[str]] = "png",
autolabel: bool = False,
show: bool = True,
strict: bool = False,
Expand Down
4 changes: 4 additions & 0 deletions diagrams/aws/analytics.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ class _Analytics(_AWS):
_icon_dir = "resources/aws/analytics"


class AmazonOpensearchService(_Analytics):
_icon = "amazon-opensearch-service.png"


class Analytics(_Analytics):
_icon = "analytics.png"

Expand Down
4 changes: 4 additions & 0 deletions diagrams/aws/devtools.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ class Cloud9(_Devtools):
_icon = "cloud9.png"


class Codeartifact(_Devtools):
_icon = "codeartifact.png"


class Codebuild(_Devtools):
_icon = "codebuild.png"

Expand Down
24 changes: 24 additions & 0 deletions diagrams/aws/management.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,22 @@ class _Management(_AWS):
_icon_dir = "resources/aws/management"


class AmazonDevopsGuru(_Management):
_icon = "amazon-devops-guru.png"


class AmazonManagedGrafana(_Management):
_icon = "amazon-managed-grafana.png"


class AmazonManagedPrometheus(_Management):
_icon = "amazon-managed-prometheus.png"


class AmazonManagedWorkflowsApacheAirflow(_Management):
_icon = "amazon-managed-workflows-apache-airflow.png"


class AutoScaling(_Management):
_icon = "auto-scaling.png"

Expand Down Expand Up @@ -140,10 +156,18 @@ class PersonalHealthDashboard(_Management):
_icon = "personal-health-dashboard.png"


class Proton(_Management):
_icon = "proton.png"


class ServiceCatalog(_Management):
_icon = "service-catalog.png"


class SystemsManagerAppConfig(_Management):
_icon = "systems-manager-app-config.png"


class SystemsManagerAutomation(_Management):
_icon = "systems-manager-automation.png"

Expand Down
4 changes: 4 additions & 0 deletions diagrams/aws/network.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,10 @@ class NATGateway(_Network):
_icon = "nat-gateway.png"


class NetworkFirewall(_Network):
_icon = "network-firewall.png"


class NetworkingAndContentDelivery(_Network):
_icon = "networking-and-content-delivery.png"

Expand Down
2 changes: 2 additions & 0 deletions diagrams/azure/monitor.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ class DiagnosticsSettings(_Monitor):

class LogAnalyticsWorkspaces(_Monitor):
_icon = "log-analytics-workspaces.png"
class Logs(_Monitor):
_icon = "logs.png"


class Metrics(_Monitor):
Expand Down
8 changes: 4 additions & 4 deletions diagrams/oci/connectivity.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,12 @@ class CustomerDatacntrWhite(_Connectivity):
_icon = "customer-datacntr-white.png"


class CustomerPremiseWhite(_Connectivity):
_icon = "customer-premise-white.png"
class CustomerPremisesWhite(_Connectivity):
_icon = "customer-premises-white.png"


class CustomerPremise(_Connectivity):
_icon = "customer-premise.png"
class CustomerPremises(_Connectivity):
_icon = "customer-premises.png"


class DisconnectedRegionsWhite(_Connectivity):
Expand Down
2 changes: 1 addition & 1 deletion diagrams/onprem/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
"""
OnPrem provides a set of general on-premise services.
OnPrem provides a set of general on-premises services.
"""

from diagrams import Node
Expand Down
27 changes: 27 additions & 0 deletions diagrams/programming/framework.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,18 @@ class Backbone(_Framework):
_icon = "backbone.png"


class Camel(_Framework):
_icon = "camel.png"


class Django(_Framework):
_icon = "django.png"


class Dotnet(_Framework):
_icon = "dotnet.png"


class Ember(_Framework):
_icon = "ember.png"

Expand All @@ -40,6 +48,14 @@ class Graphql(_Framework):
_icon = "graphql.png"


class Hibernate(_Framework):
_icon = "hibernate.png"


class Jhipster(_Framework):
_icon = "jhipster.png"


class Laravel(_Framework):
_icon = "laravel.png"

Expand All @@ -48,6 +64,10 @@ class Micronaut(_Framework):
_icon = "micronaut.png"


class Nextjs(_Framework):
_icon = "nextjs.png"


class Quarkus(_Framework):
_icon = "quarkus.png"

Expand All @@ -72,6 +92,10 @@ class Svelte(_Framework):
_icon = "svelte.png"


class Vercel(_Framework):
_icon = "vercel.png"


class Vue(_Framework):
_icon = "vue.png"

Expand All @@ -80,3 +104,6 @@ class Vue(_Framework):

FastAPI = Fastapi
GraphQL = Graphql
DotNet = Dotnet
NextJs = Nextjs
JHipster = Jhipster
15 changes: 15 additions & 0 deletions diagrams/saas/security.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 _Saas


class _Security(_Saas):
_type = "alerting"
_icon_dir = "resources/saas/security"


class Sonarqube(_Security):
_icon = "sonarqube.png"


# Aliases
4 changes: 2 additions & 2 deletions docs/getting-started/examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ with Diagram("Stateful Architecture", show=False):

![stateful architecture diagram](/img/stateful_architecture_diagram.png)

## Advanced Web Service with On-Premise
## Advanced Web Service with On-Premises

```python
from diagrams import Cluster, Diagram
Expand All @@ -183,7 +183,7 @@ from diagrams.onprem.monitoring import Grafana, Prometheus
from diagrams.onprem.network import Nginx
from diagrams.onprem.queue import Kafka

with Diagram("Advanced Web Service with On-Premise", show=False):
with Diagram("Advanced Web Service with On-Premises", show=False):
ingress = Nginx("ingress")

metrics = Prometheus("metric")
Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: installation
title: Installation
---

**diagrams** requires **Python 3.6** or higher, check your Python version first.
**diagrams** requires **Python 3.7** or higher, check your Python version first.

**diagrams** uses [Graphviz](https://www.graphviz.org/) to render the diagram, so you need to [install Graphviz](https://graphviz.gitlab.io/download/) to use it.

Expand Down
4 changes: 2 additions & 2 deletions docs/guides/edge.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ from diagrams.onprem.monitoring import Grafana, Prometheus
from diagrams.onprem.network import Nginx
from diagrams.onprem.queue import Kafka

with Diagram(name="Advanced Web Service with On-Premise (colored)", show=False):
with Diagram(name="Advanced Web Service with On-Premises (colored)", show=False):
ingress = Nginx("ingress")

metrics = Prometheus("metric")
Expand Down Expand Up @@ -66,4 +66,4 @@ with Diagram(name="Advanced Web Service with On-Premise (colored)", show=False):
>> aggregator
```

![advanced web service with on-premise diagram colored](/img/advanced_web_service_with_on-premise_colored.png)
![advanced web service with on-premises diagram colored](/img/advanced_web_service_with_on-premises_colored.png)
2 changes: 1 addition & 1 deletion docs/nodes/alibabacloud.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: alibabacloud
title: AlibabaCloud
---

Node classes list of alibabacloud provider.
Node classes list of the alibabacloud provider.

## alibabacloud.analytics

Expand Down
Loading

0 comments on commit 8a347ff

Please sign in to comment.