Metadata-Version: 2.1
Name: ipfabric-diagrams
Version: 1.2.7
Summary: Python package for interacting with IP Fabric Diagrams
Home-page: https://github.com/community-fabric/python-ipfabric-diagrams
License: MIT
Keywords: ipfabric,ip-fabric,community-fabric
Author: Justin Jeffery
Author-email: justin.jeffery@ipfabric.io
Requires-Python: >=3.7.1,<4.0.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: ipfabric (>=0,<1)
Requires-Dist: pydantic (>=1.8.2,<2.0.0)
Requires-Dist: typing-extensions (>=4.1.1,<5.0.0)
Project-URL: Changelog, https://github.com/community-fabric/python-ipfabric-diagrams/blob/main/CHANGELOG.md
Project-URL: IP Fabric, https://ipfabric.io/
Project-URL: Repository, https://github.com/community-fabric/python-ipfabric-diagrams
Description-Content-Type: text/markdown

# IPFabric

ipfabric-diagrams is a Python module for connecting to and graphing topologies against an IP Fabric instance.

[![Requirements Status](https://requires.io/github/community-fabric/python-ipfabric-diagrams/requirements.svg?branch=main)](https://requires.io/github/community-fabric/python-ipfabric-diagrams/requirements/?branch=main)

## About

Founded in 2015, [IP Fabric](https://ipfabric.io/) develops network infrastructure visibility and analytics solution to
help enterprise network and security teams with network assurance and automation across multi-domain heterogeneous
environments. From in-depth discovery, through graph visualization, to packet walks and complete network history, IP
Fabric enables to confidently replace manual tasks necessary to handle growing network complexity driven by relentless
digital transformation.

## Installation

```
pip install ipfabric-diagrams
```

## Introduction

This package is used for diagramming via the API for IP Fabric v4.3.0.  
Examples can be located under [examples](examples/) directory.

## Authentication
Please take a look at [python-ipfabric](https://github.com/community-fabric/python-ipfabric/blob/main/examples/basic.py) 
for all authentication options.

```python
from ipfabric_diagrams import IPFDiagram
ipf = IPFDiagram(base_url='https://demo3.ipfabric.io/', token='token', verify=False, timeout=15)
```

## Development

IPFabric uses poetry for the python packaging module. Install poetry globally:

```
pip install poetry
```

To install a virtual environment run the following command in the root of this directory.

```
poetry install
```

To test and build:

```
poetry run pytest
poetry build
```

GitHub Actions will publish and release. Make sure to tag your commits:

* ci: Changes to our CI configuration files and scripts
* docs: No changes just documentation
* test: Added test cases
* perf: A code change that improves performance
* refactor: A code change that neither fixes a bug nor adds a feature
* style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
* fix: a commit of the type fix patches a bug in your codebase (this correlates with PATCH in Semantic Versioning). 
* feat: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning). 
* BREAKING CHANGE: a commit that has a footer BREAKING CHANGE:, or appends a ! after the type/scope, introduces a breaking
API change (correlating with MAJOR in Semantic Versioning). A BREAKING CHANGE can be part of commits of any type.

