Metadata-Version: 2.1
Name: bigrest
Version: 1.3.3
Summary: A Python SDK for F5 iControl REST API
Home-page: https://github.com/leonardobdes/BIGREST
Author: Leonardo Souza
License: UNKNOWN
Description: What is BIGREST?
        ----------------
        
        | F5 BIG-IP and BIG-IQ devices have an API called iControl REST.
        | BIGREST is an SDK with multiple methods and functions that simplifies the use of the iControl REST API.
        
        What is useful for?
        -------------------
        
        | If you want to automate tasks on a BIG-IP or BIG-IQ devices, one of the options is to use the iControl REST API.
        | If you interact with the API directly, you will have to know how the API works, including headers, tokens, etc...
        | Probably, you will end up scripting those tasks using a programming language, and creating some functions you normally use.
        
        | BIGREST removes that work, as it includes those functions that you normally use.
        | It creates a kind of abstraction layer on to of the API.
        
        Why create another SDK?
        -----------------------
        
        | This was one of the first questions I got when BIGREST was released.
        | In case you don't know, there was already an SDK (https://github.com/F5Networks/f5-common-python) before BIGREST was created.
        
        | I have used the other SDK, and I did initially wanted to support and expand it.
        | However, the approach that was taken in that SDK to defined every HTTP path as Python modules made it difficult to expand and support it.
        | For example, it just supports very few BIG-IQ functionalities.
        
        | On the other hand, BIGREST tries to be more generic as possible, and the user has to indicate the HTTP path they want to use.
        | This means any new HTTP path included on the next version will be automatically available on BIGREST.
        | Also, with this generic approach, it fully supports both BIG-IP and BIG-IQ.
        
        BIGREST functionalities
        -----------------------
        
        - Supports partition
        - Supports route domain
        - Support HTTP basic authentication
        - Support token
        - Support refresh token
        - Implements all HTTP methods used in the iControl REST API
        - Implements HTTP path /stats
        - Implements HTTP path /example
        - Implements command
        - Implements task
        - Implements transaction
        
        Documentation
        -------------
        
        https://bigrest.readthedocs.io/
        
        Source code
        -------------
        
        https://github.com/leonardobdes/BIGREST
        
        Author
        ------
        
        | **Name:**
        | Leonardo Souza
        
        | **LinkedIn:**
        | https://uk.linkedin.com/in/leonardobdes
        
        Contributor
        ------------
        
        | **Name:**
        | Jason Rahm
        
        | **LinkedIn:**
        | https://www.linkedin.com/in/jrahm
        
        How to install?
        ---------------
        
        **Requires Python version 3.7**
        
        Install BIGREST using Python **pip**:
        
        .. code-block:: python
        
           pip install bigrest
        
        How to use it?
        ---------------
        
        **In the following example:**
        
        :192.168.1.245:
            IP or name of the F5 device.
        :admin:
            Username to be used to connect to the device.
        :password:
            Password to be used to connect to the device.
        
        **First, import the SDK:**
        
        .. code-block:: python
        
           from bigrest.bigip import BIGIP
        
        **Next, create a device object:**
        
        .. code-block:: python
        
           device = BIGIP("192.168.1.245", "admin", "password")
        
        **Lastily, load all virtual servers and print their names:**
        
        .. code-block:: python
        
            virtuals = device.load("/mgmt/tm/ltm/virtual")
            for virtual in virtuals:
                print(virtual.properties["name"])
        
        | This is just a simple example to give you a first view about the SDK.
        | Detailed information about how to use the SDK will be provided in the next sections of this documentation.
        
        How to get help?
        ----------------
        
        If you have problems using this SDK, or to understand how the F5 iControl REST API works, use `DevCentral <https://devcentral.f5.com/>`_ website to get help.
        
        How to report bugs?
        -------------------
        
        | Use `GitHub <https://github.com/leonardobdes/BIGREST/issues>`_ issues to report bugs.
        | For any bug, please provide the following information.
        
        BIGREST version:**
        
        Run the following command to find the version you are using.
        
        .. code-block:: python
        
           pip show bigrest
        
        **F5 device type:**
        
        BIG-IP or BIG-IQ
        
        **F5 device version:**
        
        Run the following command to find the version you are using.
        
        .. code-block:: python
        
           tmsh show sys version
        
        **Python code to replicate the bug.**
        
        **Output generated when the bug is triggered.**
        
        How to request new functionalities?
        -----------------------------------
        
        | Use `GitHub <https://github.com/leonardobdes/BIGREST/issues>`_ issues to request new functionalities.
        | Use the following format in the title **RFE - Title**.
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
