A python wrapper to the Cisco ACI REST-API.
pip install aciclient
git clone https://github.com/netcloud/aciclient.git
pip install -r requirements.txt
python setup.py develop
import aciClient
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
aciclient = aciClient.ACI(apic_hostname, apic_username, apic_password)
try:
aciclient.login()
aciclient.getJson(uri)
aciclient.postJson(config)
aciclient.deleteMo(dn)
aciclient.logout()
except Exception as e:
logger.exception("Stack Trace")
import aciClient
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
aciclient = aciClient.ACICert(apic_hostname, path_to_privatekey_file, certificate_dn)
try:
aciclient.getJson(uri)
aciclient.postJson(config)
aciclient.deleteMo(dn)
except Exception as e:
logger.exception("Stack Trace")
tenants = aciclient.getJson('class/fvTenant.json?order-by=fvTenant.dn|asc')
for mo in tenants:
print(f'tenant DN: {mo["fvTenant"]["attributes"]["dn"]}')
config = {
"fvTenant": {
"attributes": {
"dn": "uni/tn-XYZ"
}
}
}
aciclient.postJson(config)
aciclient.deleteMo('uni/tn-XYZ')
pip install -r requirements.txt
python -m pytest
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to this project.
- Marcel Zehnder - Initial work
- Andreas Graber - Migration to open source
- Richard Strnad - Paginagtion for large requests, various small stuff
This project is licensed under MIT - see the LICENSE.md file for details.