Skip to main content

AOS-CX Python Modules

Project description

pyaoscx

These modules are written for AOS-CX API v1 and v10.04. These scripts are written for devices running AOS-CX firmware version 10.04.

For this initial release, it is recommended to use the v1 AOS-CX API. See the Release Notes for more information.

Structure

  • REST API call functions are found in the modules in /pyaoscx.
  • REST API call functions are combined into other functions that emulate low-level processes. These low-level process functions are also placed in files in /pyaoscx.
  • Functions from the /pyaoscx files (API functions and low-level functions) are combined to emulate larger network configuration processes (workflows). These workflow scripts stored in the /workflows folder.

How to contribute

Please see the accompanying CONTRIBUTING.md file for guidelines on how to contribute to this repository.

Git Workflow

This repo adheres to the 'shared repo' git workflow:

  1. Clone the repo to a local machine:

    git clone <repo_URL>

  2. Checkout a local working branch:

    git checkout -b <local_working_branch_name>

  3. Add and amend files in the local working branch:

    git add <file_name>

  4. Commit regularly. Each commit should encompass a single logical change to the repo (e.g. adding a new function in /pyaoscx is one commit; writing docstrings for all functions in a module is another commit). Include an explanatory message with each commit:

    git commit -m "<Clear_explanation_of_commit_here>"

  5. Push commits to github.hpe.com:

    git push origin <local_working_branch_name>

  6. Merge changes using a Pull Request on github.hpe.com. Ensure the PR has a relevant title and additional comments if necessary. PRs should be raised regularly once code is tested and the user satisfied that it is ready for submission. Do not put off creaing a PR until a whole project is complete. The larger the PR, the difficult it is to successfully merge.

Setup

Before starting ensure the switch REST API is enabled. Instructions for checking and changing whether or not the REST API is enabled status are available in the ArubaOS-CX Rest API Guide. This includes making sure each device has an administrator account with a password, and each device has https-server rest access-mode read-write and enabled on the reachable vrf.

How to run this code

In order to run the workflow scripts, please complete the steps below:

  1. install virtual env (refer https://docs.python.org/3/library/venv.html). Make sure python version 3 is installed in system.

    $ python3 -m venv switchenv
    
  2. Activate the virtual env

    $ source switchenv/bin/activate
    in Windows:
    $ venv/Scripts/activate.bat
    
  3. Install the pyaoscx package

    (switchenv)$ pip install pyaoscx
    
  4. Now you can run different workflows from pyaoscx/workflows (e.g. print_system_info.py)

  5. Keep in mind that the workflows perform high-level configuration processes; they are highly dependent on the configuration already on the switch prior to running the workflows. For this reason, the comment at the top of each workflow script describes any necessary preconditions.

Troubleshooting Issues

  1. If you encounter module import errors, make sure that the package has been installed correctly.

Additionally, please read the RELEASE-NOTES.md file for the current release information and known issues.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyaoscx-0.2.0.tar.gz (53.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyaoscx-0.2.0-py3-none-any.whl (75.3 kB view details)

Uploaded Python 3

File details

Details for the file pyaoscx-0.2.0.tar.gz.

File metadata

  • Download URL: pyaoscx-0.2.0.tar.gz
  • Upload date:
  • Size: 53.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for pyaoscx-0.2.0.tar.gz
Algorithm Hash digest
SHA256 c9f25652f40925824c1218e2f4e5bf2c159ec5e1db565c36548cf2f847aa5026
MD5 6fb7e81e7b5dd93e9aa6a06517d72c05
BLAKE2b-256 27df5642ea07a28c6699db2bedafb1526fe96f23b669638ad56812c7eb797195

See more details on using hashes here.

File details

Details for the file pyaoscx-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pyaoscx-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 75.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for pyaoscx-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e5c604564cac8b3784b2b008495651d05aec46ac4eef1285f082862df355d08
MD5 5e9fe594ec71409c8bfddb725b75d2ff
BLAKE2b-256 1061c09a226dfa6cbed0bb32260693928a19bf4c869b151c7edb94b6ba2fef79

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page