No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
1
Latest commit 5186685 Nov 21, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.spotify/pipelines Initial commit Jan 23, 2015
docs Python pylama cleanup Feb 20, 2017
examples Initial commit Jan 23, 2015
pyFG Fixed device.commit() with vdoms Aug 17, 2017
test/unit Python pylama cleanup Feb 20, 2017
.gitignore Initial commit Jan 23, 2015
LICENSE Initial commit Jan 23, 2015
MANIFEST.in Initial commit Jan 23, 2015
README.md Add tested version information Apr 10, 2017
requirements.txt Initial commit Jan 23, 2015
setup.cfg Python pylama cleanup Feb 20, 2017
setup.py Bump version to 0.50 Apr 11, 2017

README.md

PyFG

PyFG is a Python (2.7 tested, may work on other versions) package.

API for FortiOS or how to turn FortiOS into JunOS

Introduction

This API allows you to interact with a device runnine FortiOS in a sane way. With this API you can:

  • Connect to the device, retrieve the running config (the entire config or some blocks, whatever you want) and build a model
  • Build the same model from a file
  • Do changes in the candidate configuration locally
  • Create a candidate configuration from a file
  • Do a diff between the running config and the local candidate config
  • Generate the necessary commands to go from the running configuration to the candidate configuration

Documentation

You can find the documentation on Read the Docs.

Installation

To install the library execute:

pip install pyfg

Examples

In the examples directory you will find different file with examples on how to use the API:

  • example1 - How to retrieve the configuration of a VDOM
  • example2 - How to get BGP information and navigate through it
  • example3 - How to load BGP configuration from a file (running.conf is emulating this step), load the candidate configuration from a file and then check the differences and show to get to the candidate configuration from the running one.
  • example4 - Similar as example3 but this time the changes are done programmatically instead of using a text file.
  • example5 - This example will do some changes, will try to commit them, will detect that something went wrong and it will finally rollback the changes.