Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/csye7125-fall2023-group05/architecture
Diagram as code to create version controlled infrastructure architecture diagrams with audit trails.
https://github.com/csye7125-fall2023-group05/architecture
architecture architecture-diagram diagram-as-code
Last synced: about 2 months ago
JSON representation
Diagram as code to create version controlled infrastructure architecture diagrams with audit trails.
- Host: GitHub
- URL: https://github.com/csye7125-fall2023-group05/architecture
- Owner: csye7125-fall2023-group05
- License: mit
- Created: 2023-12-17T06:23:13.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-01-31T15:28:30.000Z (11 months ago)
- Last Synced: 2024-01-31T17:01:17.855Z (11 months ago)
- Topics: architecture, architecture-diagram, diagram-as-code
- Language: Python
- Homepage:
- Size: 2.41 MB
- Stars: 0
- Watchers: 0
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Architecture
To create version controlled infrastructure architecture diagrams, and have proper audit trails, we make use of a new concept called `Diagram as Code` or `DaC`.
This is still a work in progress, for implementation details, visit [Diagrams](https://diagrams.mingrammer.com/), which lets us create diagrams programmatically using Python.
## Setup
The only pre-requisite is you need to have python installed on your workstation.
To setup the python environment for development, we need to install a few tools. Let's set them up:- Install [Poetry](https://python-poetry.org/):
```shell
# This is only for MacOS users, for other distros, refer the documentation
brew install poetry
```- Run `init` to initialize the project, similar to `npm init` as in the case of `npm`:
```shell
# This command will guide you through creating your `pyproject.toml` config.
poetry init
```- Add the [Diagrams](https://diagrams.mingrammer.com/docs/getting-started/installation) library to the poetry `pyproject.toml` file:
```shell
# This command will create a virtualenv at $HOME/Library/Caches/pypoetry/virtualenvs/
poetry add diagrams
```- To view the python environment path and executable location for your python project's virtualenv, use the `env info` command:
```shell
poetry env info
```- To run the python file with the DaC definition, we need to set the python interpreter path in `VSCode`. Use `cmd` + `shift` + `p` to open up the command palette, and then type: `Python: Select Interpreter` -> click on `Enter interpreter path...` and then copy and paste the virtualenv executable path here by running the command in the previous step, i.e, `poetry env info`. This will help setup the default interpreter to use the exact virtualenv for your specified project.
## Architecture Diagram
![K8S](./kubernetes_architecture_out.svg)
## LICENSE
This project is open-sourced under the MIT License. Please read the [LICENSE](./LICENSE) for further details.
## Authors
[Siddharth Rawat](https://github.com/sydrawat01)
[Rishab Agarwal](https://github.com/rishabNeu)
[Karan Wadhwa](https://github.com/karanwadhwa)