release 0.1 cisco systems, inc....introduction the cisco aci fabric is configured using an abstract...

575
acitoolkit Documentation Release 0.1 Cisco Systems, Inc. May 28, 2020

Upload: others

Post on 28-May-2020

18 views

Category:

Documents


0 download

TRANSCRIPT

acitoolkit DocumentationRelease 0.1

Cisco Systems, Inc.

May 28, 2020

Contents

1 Introduction 3

2 Object Model 52.1 Application Topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Interface Object Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3 Physical Topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

3 Monitor Policy 113.1 Policy Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4 Tutorial 174.1 Setting up the environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.1.1 Download . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.1.2 Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.1.3 Common Installation Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4.2 Pre-installed Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.2.1 Virtual Machine for VMware Environments . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4.3 Building a Simple Tenant Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1 Configuration Object Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.3.1.1 Imports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.2 Tenant Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.3 Application Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.4 Endpoint Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.5 Context and Bridge Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.3.2 Associating the tenant configuration with the network . . . . . . . . . . . . . . . . . . . . . 204.3.2.1 Physical Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.3.2.2 VLANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4.3.3 Deploying to the APIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3.1 APIC Login Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3.2 APIC Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3.3 APIC Login (Certificate based) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.3.4 Displaying the JSON Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.3.5 Removing the tenant configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4.4 Getting APIC objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.4.1 Objects on demand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.4.2 Event subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4.4.2.1 Class subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

i

4.4.2.2 Instance subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

5 Statistics 275.1 Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

5.1.1 Statistic Families . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.1.2 Accessing Stats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

5.1.2.1 aci-show-interface-stats.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.1.3 Granularity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.1.4 Epoch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.1.5 Update Frequency for current epoch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

5.2 Statistics Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.2.1 egrBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325.2.2 egrTotal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.2.3 ingrBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.2.4 ingrTotal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.2.5 egrPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.2.6 ingrPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425.2.7 egrDropPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.2.8 ingrDropPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465.2.9 ingrUnkBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.2.10 ingrStorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505.2.11 ingrUnkPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

6 API Reference 536.1 acitoolkit package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

6.1.1 Submodules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536.1.1.1 acibaseobject module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536.1.1.2 aciphysobject module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616.1.1.3 acisession module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1546.1.1.4 acitoolkit module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1576.1.1.5 acitoolkitlib module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4366.1.1.6 aciFaults module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437

7 Applications 4397.1 ACI Endpoint Tracker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439

7.1.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397.1.1.1 acitoolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397.1.1.2 MySQL database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397.1.1.3 MySQL Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4407.1.1.4 Flask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440

7.1.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4407.1.3 What’s it doing ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4427.1.4 Direct Database Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4427.1.5 GUI FrontEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444

7.1.5.1 Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4447.1.5.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445

7.1.6 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4457.2 ACI Lint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445

7.2.1 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4467.2.1.1 Running using Live APIC configuration . . . . . . . . . . . . . . . . . . . . . . . 4467.2.1.2 Running using Configuration Snapshot files . . . . . . . . . . . . . . . . . . . . . 4467.2.1.3 Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446

7.2.2 Errors and Warnings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4477.2.2.1 Warnings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447

ii

7.2.2.2 Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4477.2.2.3 Critical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448

7.2.3 Developing Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4487.3 Cableplan Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448

7.3.1 Using the Cable Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4487.3.1.1 Invoking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448

7.3.2 Cable Plan from the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4507.3.3 Cable Plan XML Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4507.3.4 Cable Plan API Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451

7.4 Snapback : Configuration Snapshot and Rollback . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4557.4.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4557.4.2 General Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455

7.4.2.1 Snapshot Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4557.4.2.2 Rollback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456

7.4.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4567.4.4 Web based Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456

7.4.4.1 Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4567.4.4.2 Schedule Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4577.4.4.3 Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4587.4.4.4 Version Diffs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4617.4.4.5 About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4627.4.4.6 Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462

7.4.5 Command Line Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4627.4.6 Version Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463

7.5 Visualization Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4637.5.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4637.5.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464

7.6 EventFeeds: ACI Events to Atom Feed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4647.6.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464

7.6.1.1 acitoolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4647.6.1.2 Flask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465

7.6.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4657.6.3 What’s it doing ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4657.6.4 Feed Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4667.6.5 Screenshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4667.6.6 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468

7.7 Intersite Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4687.7.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4687.7.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4697.7.3 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4697.7.4 Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469

7.7.4.1 Site Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4717.7.4.2 EPG Export Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471

7.7.5 Command Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4727.7.6 REST API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4727.7.7 Automator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4737.7.8 Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4757.7.9 APIC Object Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4757.7.10 Importing within other applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475

7.8 Connection Search : Configured Connection Search Tool . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.2 General Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.4 Web based Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476

iii

7.8.4.1 Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4777.8.4.2 Performing a Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4787.8.4.3 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4807.8.4.4 About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4827.8.4.5 Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482

7.8.5 Command Line Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4827.9 Fake APIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483

7.9.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4837.9.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4837.9.3 How to pass in queries to the Fake APIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4847.9.4 What queries the Fake APIC supports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4847.9.5 Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484

7.10 ACI Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4857.10.1 ACI ReportView GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485

7.10.1.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4857.10.1.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485

7.10.2 ACI Logical Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4897.10.2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4897.10.2.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4897.10.2.3 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490

7.10.3 ACI Switch Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4907.10.3.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4907.10.3.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4907.10.3.3 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491

7.10.4 ACI Security Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4917.10.4.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4917.10.4.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4917.10.4.3 Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492

7.11 APIC Test Harness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4927.11.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4927.11.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4937.11.3 Full command line options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4937.11.4 What APIC Test Harness supports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4947.11.5 Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494

8 Indices and tables 495

Python Module Index 497

Index 499

iv

acitoolkit Documentation, Release 0.1

Contents:

Contents 1

acitoolkit Documentation, Release 0.1

2 Contents

CHAPTER 1

Introduction

The Cisco ACI Fabric is configured using an abstract policy model on the Cisco Application Policy InfrastructureController (APIC). The APIC has a very rich and complete object model that is accessible through a programmaticREST API. The acitoolkit exposes a small subset of that model in a way that is meant to provide an introduction to theACI concepts and allow users to get the most common workflows up and running as quickly as possible.

3

acitoolkit Documentation, Release 0.1

4 Chapter 1. Introduction

CHAPTER 2

Object Model

The acitoolkit object model is divided into 3 sub-areas

• Application Topology Object Model

• Interface Object Model

• Physical Topology Object Model

2.1 Application Topology

The acitoolkit defines the fabric configuration using a set of policies that describes the application logical topology.

The following diagram shows the full logical topology diagram autogenerated from the source code.

LogicalModel

Tenant

Filter

AppProfile

OutsideL3

Tag

TabooContractBridgeDomain OutsideL2 ContractInterfaceContext

ContractSubject

OutputTerminal InputTerminal

EPG

IPEndpointAttributeCriterion Endpoint

FilterEntry

OutsideEPG

OutsideNetwork

Subnet OutsideL2EPGAnyEPG

Some of the key classes are shown and described below with the remainder described in the API Reference.

5

acitoolkit Documentation, Release 0.1

Tenant is the root class within the acitoolkit object model hierarchy. All of the application topology configurationoccurs within a Tenant.

AppProfile is the Application Profile class. It contains the configuration for a given application.

EPG is the Endpoint Group class. This is the object for defining configuration that is applied when endpoints connectto the fabric.

Context is the class representing an L3 namespace (roughly, a traditional VRF in Cisco terminology).

BridgeDomain is the class representing an L2 forwarding domain (roughly, a traditional VLAN). It is associated witha single Context.

Subnet is the class representing an L3 subnet. It is associated with a single BridgeDomain.

OutsideEPG is the class representing an EPG that connects to the world outside the fabric. This is where routingprotocols such as OSPF are enabled.

Contracts define the application network services being provided and consumed by EPGs. EPGs may provide andconsume many contracts.

Taboos define the application network services that can never be provided or consumed by EPGs.

FilterEntry contained within either a Contract or a Taboo. Defines the traffic profile that the Contract or Taboo applies.

2.2 Interface Object Model

Interfaces provide the linkage between the application logical topology and the underlying physical network topology.The Interface set of classes are connected through a series of attachment relationships as shown in the class diagrambelow.

6 Chapter 2. Object Model

acitoolkit Documentation, Release 0.1

Interface class represents the Physical Interfaces. These are the objects that link the logical topology with thephysical world. These objects represent the access ports on the leaf switches. These are the interfaces that the endpointswill physically attach.

Link aggregation

A link aggregation is a logical link layer interface composed of one or more physical interfaces. Commonly referredto as Etherchannel or PortChannel.

PortChannel class represents the logical aggregated ethernet port formed by Link Aggregation. This is done bycreating a PortChannel instance and attaching one or more Interface instances to it. When interfaces belonging to 2separate switches are assigned to the same PortChannel, this is referred to as a VPC or Virtual Port Channel. In theacitoolkit, VPCs are also represented by the PortChannel class.

L2Interface class represents the logical L2 network attachment on an Ethernet interface. In this case, the Ethernetinterface could be an Interface class instance or PortChannel class instance as both are considered representations oflink layer Ethernet interfaces.

Multiple logical L2 network attachments can occur on the same Ethernet interface. When this occurs, the L2Interfaceinstances must use different encapsulation identifiers and/or different encapsulation types. The valid encapsulationtypes are:

• VLAN

• VXLAN

• NVGRE

L3Interface class represents the logical L3 network attachment on an L2Interface. The L3Interface instance is wherethe IP address resides.

OSPFInterface class represents the logical router interface that routes from the L3Interface instance. It contains theOSPF-specific interface configuration.

2.3 Physical Topology

The acitoolkit defines the network topology using a set of objects that represent each of the components of the topology.

2.3. Physical Topology 7

acitoolkit Documentation, Release 0.1

These objects are connected in a hierarchy according to the following diagrams.

PhysicalModel

Pod

ExternalSwitch Link Node

Powersupply Linecard Supervisorcard Fantray Systemcontroller

Interface Fan

The acitoolkit.aciphysobject.Node object is used to represent both switches and controllers. Whichkind of acitoolkit.aciphysobject.Node can be determined by looking at the role, Node.role, attribute.Switches are Nodes with the role of ‘leaf’ or ‘spine’ and controllers are Nodes with the role of ‘controller’.Switches are composed slightly different from controllers as shown in the following diagram.

8 Chapter 2. Object Model

acitoolkit Documentation, Release 0.1

Pod is the class for a physical Pod. acitoolkit.aciphysobject.Pod conatins of all the switches, links, andcontrollers that connected in the simple leaf-spine fat tree topology of the ACI fabric. It does not include the end-pointsor other devices that are attached to the ACI fabric.

Node is the class used to represent switches and controllers. What role the acitoolkit.aciphysobject.Nodeplays in the fabric can be determined by looking at the role attribute.

Link is the class representing links in the fabric. acitoolkit.aciphysobject.Link includes links betweenleaf and spine switches as well as links from leaf switches to controllers. Each link has two ends, the first and secondend, in no particular order. This class has methods for retrieving the Switch, Linecard and Interface for each of theends of the link.

Supervisorcard is the class representing the supervisor card in a switch. acitoolkit.aciphysobject.Supervisorcard would only be a child of a Node that has the role of ‘leaf’ or ‘spine’. Each switch will havea supervisor including fixed configuration switches that may not have a obviously physically separate module that is asupervisor. The supervisor is where the primary software of the switch runs.

Linecard is the class representing a linecard in a switch. The acitoolkit.aciphysobject.Linecard iswhere all of the physical interfaces or ports are attached. In modular switches, the linecard is physically obvious, buteven fixed configuration switches have a linecard where all the interfaces, ports, reside. A specific linecard in a switchis identified by its slot_id attribute. The slot_id of a linecard in a fixed configuration switch is always ‘1’.

Powersupply acitoolkit.aciphysobject.Powersupply is the class representing a power supply in anode.

Fantray acitoolkit.aciphysobject.Fantray is the class representing a fan tray in a node

2.3. Physical Topology 9

acitoolkit Documentation, Release 0.1

Systemcontroller acitoolkit.aciphysobject.Systemcontroller is the class representing a systemcontoller of an APIC controller. This is the motherboard of the controller and is a good place to understand theversion of software that is running in the controller.

Interface acitoolkit.acitoolkit.Interface described above.

10 Chapter 2. Object Model

CHAPTER 3

Monitor Policy

The monitor policy, acitoolkit.acitoolkit.MonitorPolicy , defines what statistical information is gath-ered and how long historical information is kept. It is also where events that are triggered by these stats are configured(to be supported).

Multiple monitoring policies can be defined and various APIC objects then reference the monitoring policy they areusing. For example, a l1PhysIf object in the APIC has an attribute called monPolDn which is the distinguish-ing name of the monitoring policy that it references. In the toolkit, the l1PhysIf object is represented by theacitoolkit.acitoolkit.Interface class.

There are two types of monitoring policies:fabric and access and they are identified by the policyType at-tribute of the monitor policy. The fabric type is used to monitor ACI fabric interfaces while the access type isused to monitor ACI access or infra interfaces. The same class is used for both types of monitoring policies in theacitoolkit.

The monitoring policy is a hierarchical policy consisting of monitor policy class, acitoolkit.acitoolkit.MonitorPolicy , at the top with the following classes below it: acitoolkit.acitoolkit.MonitorTarget, acitoolkit.acitoolkit.MonitorStats, and acitoolkit.acitoolkit.CollectionPolicy .

The following diagram shows their relationship.

11

acitoolkit Documentation, Release 0.1

CollectionPolicy is where the actual collection policy is defined. What it applies to is determined by where it isin the monitoring policy hierarchy. The three most important attributes of the collection policy are adminState,granularity and retention. Additional attributes are a name and description which are optional and canbe set using the setName(<name>) and setDescription(<description>) methods respectively.

The adminState attribute can be enabled, disabled or inherited. If enabled, that granularity of statis-tics will be gathered. If disabled, that granularity of statistics will not be gathered and neither will any largergranularities. This is because the statistics gathered at one granularity are then rolled up into the larger granularity. Ifyou don’t gather the finer one, then there is no data to roll up to the coarser one.

If the adminState is set to inherited, the current object does not determine the adminState. Instead, theadminState of the collection policy of the next higher level in the monitoring policy hierarchy will be used. Thismeans that the adminState at the highest level of the monitoring policy cannot be set to inherited because thereis no higher level to inherit from.

The granularity attribute can have one of the following values:

12 Chapter 3. Monitor Policy

acitoolkit Documentation, Release 0.1

Value Meaning5min 5 minutes15min 15 minutes1h 1 hour1d 1 day1w 1 week1mo 1 month1qtr 1 quarter1year 1 year

This is the time interval over which the stats are initially gathered and the interval for which they are kept.

For example, if the granularity is 15min, then the cumulative stats for that granularity will start at 0 at the beginningof the 15 minute interval and will accumulate during the interval. At the end of the interval, the final values will bemoved to the historical statistics if the retention attribute is so configured. The rate statistics will be the rate duringthe 15 minute interval and the rate averages will be the average rate during the 15 minute interval.

Statistics are only kept for granularities that have an adminState of enabled either explicitly or through inheritanceand no finer (smaller) granularities are disabled.

The retention attribute determines how long historical data at a given granularity is kept. It can have one of thefollowing values:

Value Meaningnone Do not keep historical datainherited Use the policy from the next higher level of hierarchy5min 5 minutes15min 15 minutes1h 1 hour1d 1 day1w 1 week10d 10 days1mo 1 month1qtr 1 quarter1year 1 year2year 2 years3year 3 years

It does not make any sense to have a retention period that is less than the granularity, however this is not checked forin the acitoolkit.

MonitorStats sets the scope for any collection policy under it. The scope here is a family of statistics. The possiblescope values are as follows:

13

acitoolkit Documentation, Release 0.1

Value DescriptionegrBytes Egress bytesegrPkts Egress packetsegrTotal Egress totalegrDropPkts Egress drop packetsingrBytes Ingress bytesingrPkts Ingress packetsingrTotal Ingress totalingrDropPkts Ingress drop packetsingrUnkBytes Ingress unknown bytesingrUnkPkts Ingress unknown packets

A more detailed description of the statistics can be found here.

The collection policies under the MonitorStats object determine the default collection policy for the set of statis-tics selected by the above scope.

Other attributes of the MonitorStats class are name and description which can be set with thesetName(<name>) and setDescription(<description>) methods respectively. Setting these attributesis optional.

MonitorTarget sets the scope to a particular APIC target object for all of the collections policies below it. Currently,there is only one APIC target object type supported and that is ‘l1PhysIf’. The scope attribute is where the targettype is stored. Support for additional target objects will be added as required. The scope attributed is initializedwhen the MonitorTarget is created and cannot be changed.

Other attributes of the MonitorStats class are name and description which can be set with thesetName(<name>) and setDescription(<description>) methods respectively. Setting these attributesis optional.

MonitorPolicy is the root of the monitor policy hierarchy. This object must have name and policyType attribute.The policyType must be either fabric or access and the name must be unique for each policyType.

The monitor policy will be referenced by its policyType and name by individual APIC objects.

The monitor policy contains the default collection policies as well as any MonitorTarget objects that specify amore specific scope.

The monitor policy must contain a CollectionPolicy for each granularity and the adminState andretention attributes of the CollectionPolicy cannot be inherited because they are at the top ofthe inheritance tree. When a MonitorPolicy object is created, it will be initialized with the appropriateCollectionPolicy objects, which, in turn, will be set to a default administrative state of disabled. Thismeans that these polies must be overwritten if stats should be collected. They can either be explicitly replaced withthe add_collection_policy(<CollectionPolicy object>) method, or implicitly replaced by morespecific collection policies in the inheritance hierarchy.

3.1 Policy Resolution

The ultimate policy that is applied to any counter is determined by walking through the monitoring policy from thetop down. The collection policy at each level of the hierarchy determines how statistics will be kept for those statisticsthat are in scope.

For example, the collection policy for each granularity is specified at the top of the hierarchy under the MonitorPolicyobject. These collection policies will apply to all statistics unless overwritten by a more specific policy under aMonitorTarget object.

14 Chapter 3. Monitor Policy

acitoolkit Documentation, Release 0.1

If there is a MonitorTarget object, it will set the scope for the monitoring policy to be more specific for the collectionpolicies under it. Initially, the only target supported is ‘l1PhyIf’ which is for an Interface object. Any collectionpolicies under this MonitorTarget will override the corresponding collection policy under the MonitorPolicyparent object. It is possible that there are no collection policies specified at this level.

If there are MonitorStats objects under the MonitorTarget object, they will set the scope to be even morespecific for the collection policies under them. Each MonitorStats object can have under it collection policies forany of the granularities.

3.1. Policy Resolution 15

acitoolkit Documentation, Release 0.1

16 Chapter 3. Monitor Policy

CHAPTER 4

Tutorial

This document is meant to give a tutorial-like overview of the acitoolkit package.

4.1 Setting up the environment

This tutorial will walk you through installing the acitoolkit using the sources so that you will be able to edit the samplesand even the acitoolkit source code if so desired.

4.1.1 Download

First, we must download the acitoolkit. This is best done using git, but can be done by downloading the package as azip.

If you have git installed, clone the repository using the following command:

git clone https://github.com/datacenter/acitoolkit.git

If git is not installed, you can download the acitoolkit as a zip file instead.:

wget https://github.com/datacenter/acitoolkit/archive/master.zipunzip master.zip

4.1.2 Install

Note

The directory may be named acitoolkit-master if downloaded as a zip file.

Next, cd into the created directory

17

acitoolkit Documentation, Release 0.1

cd acitoolkit

and install the acitoolkit

python setup.py install

Note that when installing on Mac or Linux, you will likely need to run this as administrator so preface the commandwith the sudo keyword as follows:

sudo python setup.py install

If you plan on modifying the actual toolkit files, you should install the developer environment that will link the packageinstallation to your development directory. Do this instead of the install option above

sudo python setup.py develop

4.1.3 Common Installation Errors

Missing development packages

Some of the dependencies may require that the python development environment be installed. This package is usuallycalled python-dev or python-develop. This is usually the case when you see an error message referring to amissing file such as Python.h: No such file or directory.

In Ubuntu, you would install this package by sudo apt-get install python-dev

4.2 Pre-installed Packages

The acitoolkit can be downloaded pre-configured as a virtual machine.

4.2.1 Virtual Machine for VMware Environments

A pre-installed virtual machine in the form of a OVA file for VMware hypervisors can be found in the link below:

ACI Toolkit OVA

The virtual machine is configured with the following parameters:

Username: acitoolkitPassword: acitoolkitOperating System: Ubuntu 16.04.2Processor Cores: 1Memory: 1GB

The acitoolkit and necessary packages are already installed. However, given the pace of change in datacenternetworking, there most likely have been changes since the VM was created. Luckily, the VM can be updated to thelatest version by entering the following command:

sudo ~/install

This command be re-run any time to get the latest updates.

18 Chapter 4. Tutorial

acitoolkit Documentation, Release 0.1

4.3 Building a Simple Tenant Configuration

The following section will walk you through the implementation of the tutorial.py file found in the /samples/directory. This code will create a minimal configuration that will configure 2 interfaces on the fabric to be on the samenetwork so that they can communicate. This code can be executed with the following command from within the/samples/ directory:

python tutorial.py

4.3.1 Configuration Object Definition

4.3.1.1 Imports

The first part of the tutorial program consists of the import statement. The acitoolkitmodule from the acitoolkitpackage is imported.

from acitoolkit.acitoolkit import *

The acitoolkit module within the acitoolkit package provides access to all of the acitoolkit configuration.

4.3.1.2 Tenant Creation

All of the configuration will be created within a single tenant named tutorial. This is done by creating an instanceof the Tenant class and passing it a string containing the tenant name.

tenant = Tenant('tutorial')

4.3.1.3 Application Profile

The Application Profile contains all of the Endpoint Groups representing the application. The next line of code createsthe application profile. It does this by creating an instance of the AppProfile class and passing it a string containingthe Application Profile name and the Tenant object that this AppProfile will belong.

app = AppProfile('myapp', tenant)

Note that many of the objects within the acitoolkit are created in this way, namely with a name and a parent object.The parent object must be an instance of this class’s parent class according to the acitoolkit object model. The parentclass of AppProfile is Tenant.

4.3.1.4 Endpoint Group

The Endpoint Group provides the policy based configuration for Endpoints that are members of the Endpoint Group.This is represented by the EPG class. In this case, we create an EPG with the name myepg and pass the AppProfilethat we created to be the parent object.

epg = EPG('myepg', app)

4.3. Building a Simple Tenant Configuration 19

acitoolkit Documentation, Release 0.1

4.3.1.5 Context and Bridge Domain

We also need an L3 namespace and L2 forwarding domain so we create the Context and BridgeDomain in thesame manner as we did for the previous objects. For both of these classes, the parent class is Tenant.

context = Context('myvrf', tenant)bd = BridgeDomain('mybd', tenant)

We then associate the BridgeDomain instance with the Context instance. This indicates that thisBridgeDomain exists within this Context.

bd.add_context(context)

The EPG is then associated with the BridgeDomain that we created.

epg.add_bd(bd)

4.3.2 Associating the tenant configuration with the network

At this point, the tenant configuration is complete. However, it is not bound to the physical network yet so let’s connectthe EPG to 2 interfaces.

4.3.2.1 Physical Interfaces

First, we must create objects to represent the physical interfaces using the Interface class. Interface objects arenamed using interface type, pod, node (switch), module (linecard), and port names. In this case, the interface type is'eth' for ethernet and the interfaces are located in pod 1 on leaf switch 101 in module 1 within ports 15 and 16.

if1 = Interface('eth', '1', '101', '1', '15')if2 = Interface('eth', '1', '101', '1', '16')

4.3.2.2 VLANs

In order to allow multiple EPGs to connect to the same interface, the ACI fabric uses network virtualization technolo-gies such as VLAN, VXLAN, and NVGRE to keep the traffic isolated. In this case, we chose to use VLAN since it isthe most ubiquitous and we chose to use the same encapsulation on both physical interfaces, namely VLAN 5.

The L2Interface class represents the virtual L2 network interface. In this case, this is the VLAN attached to agiven physical interface. This is the interface where L2 protocols (such as spanning tree in traditional networks) run.Link layer protocols such as LLDP run directly on the physical interface independent of VLANs.

We create the L2Interface and pass a name vlan5_on_if1, the encapsulation technology vlan, and the virtualnetwork identifier 5 as part of the contructor.

vlan5_on_if1 = L2Interface('vlan5_on_if1', 'vlan', '5')

We next associate this L2Interface to the desired physical interface.

vlan5_on_if1.attach(if1)

And we repeat for the second physical interface.

vlan5_on_if2 = L2Interface('vlan5_on_if2', 'vlan', '5')vlan5_on_if2.attach(if2)

20 Chapter 4. Tutorial

acitoolkit Documentation, Release 0.1

Now, we simply associate the EPG with the L2Interface objects that we created.

epg.attach(vlan5_on_if1)epg.attach(vlan5_on_if2)

4.3.3 Deploying to the APIC

At this point, the entire configuration is done and all that is left is connecting to the APIC and deploying the configu-ration.

4.3.3.1 APIC Login Credentials

The APIC login credentials are retrieved using an instance of the Credentials class. This class provides a conve-nient mechanism to retrieve credentials and is used by a variety of toolkit applications.

The Credentials object is instantiated with a string describing the type of credentials desired and a description string.

description = 'acitoolkit tutorial application'creds = Credentials('apic', description)

The command line is also extensible through the add_argument function. This is the same add_argumentfunction provided by the standard argparse python package. In this tutorial, we extend the command line optionswith a delete flag so that we can clean up the configuration afterwards.

creds.add_argument('--delete', action='store_true',help='Delete the configuration from the APIC')

Retrieving the credentials is done by calling the get function.

args = creds.get()

The apic set of credential variables consist of the username, password, and URL of the APIC. TheCredentials class allow the credentials to be provided in a number of formats and is taken in the followingpriority order

• Command line options

• Configuration file called credentials.py

• Environment variables

• Interactively querying the user

A search will be performed for each credential individually so that different methods can be used at the same time.For example, the username and URL can be passed as Command Line Options and the password can be collected byquerying the user directly. For this tutorial, we will query the user directly.

4.3.3.2 APIC Login

Next, we log into the APIC. This is done through the Session class. We create an instance and pass it the logincredentials, namely the URL, LOGIN, and PASSWORD.

session = Session(URL, LOGIN, PASSWORD)

We also initiate the actual login.

4.3. Building a Simple Tenant Configuration 21

acitoolkit Documentation, Release 0.1

session.login()

Once the login is complete, we can now send our configuration to the APIC. This is done by calling the Sessionobject with the push_to_apic function that requires a URL and the JSON data to send to the APIC. All of theconfiguration for the application topology is collected under the Tenant. In order to get the URL to use and theJSON for our configuration, we simply call the Tenant instance with get_url and get_json respectively.

resp = session.push_to_apic(tenant.get_url(), data=tenant.get_json())

The push_to_apic call returns an object. This object is an instance of the Response class from the popularrequests library which provides a rich set of return codes and status. Here, we simply check that the call was successful.

if resp.ok:print('Success')

4.3.3.3 APIC Login (Certificate based)

The APIC REST API also supports authentication using certificates.

Once setup, it is a more simple and secure form of authentication, with each request being uniquely signed. Addition-ally, login timeout issues are removed. An important point to note is that websockets (events) are not supported by theAPIC when using certficate authentication, so the corresponding acitoolkit functionality will be disabled.

As a prerequisite you must have created a private key and public certificate and attached the certificate to the desireduser using the APIC Web UI.

Creating a certificate session using the acitoolkit is simple:

1. Use OpenSSL to generate a X.509 certificate and private key.

openssl req -new -newkey rsa:1024 -days 36500 -nodes -x509 -keyout userabc.key -out→˓userabc.crt -subj '/CN=User ABC/O=Cisco Systems/C=US'

2. Upload the generated certificate userabc.crt to the user via the APIC

3. Certificate authentication has an extra dependency, not installed by default, which can be easily installed using pip

pip install pyopenssl

4. Create a certificate based authentication session

# Genericsession = Session(URL, LOGIN, cert_name=CERT_NAME, key=KEY)

# Examplesession = Session('https://1.1.1.1', 'userabc', cert_name='userabc.crt', key='userabc.→˓key')

22 Chapter 4. Tutorial

acitoolkit Documentation, Release 0.1

Note: If using the acitoolkit from the context of an APIC App Center app, make sure to pass the extra parameterappcenter_user=True. App Center apps are provided a user that belongs to a different class of users. Thelogin and cert_name for App Center users are both in the form of vendor_appId. App Center users supportcertificate subsciptions through a special requestAppToken api. To use subscriptions with an App Center user, youmust explicitly call the login() method which acquires and maintains the App user token. Disable App centersubscriptions by setting the parameter subscription_enabled=False.

You do not need to explicitly call the login() method when using certificate authentication.

After this point, you can continue to use all of the acitoolkit methods to get and push configuration from the APICsecurely and without logging in.

4.3.4 Displaying the JSON Configuration

At this point, we’re done ! The configuration has been sent to the APIC. Congratulations, you just programmed adatacenter fabric ! You should be able to see your new tenant tutorial within the APIC GUI with its new EPG andstatic path bindings.

The next few lines in the tutorial.py file simply print what was sent to the APIC. You can use this to manuallyedit the JSON if you wish to access the richer API on the APIC that the acitoolkit does not expose.

print('Pushed the following JSON to the APIC')print('URL:', tenant.get_url())print('JSON:', tenant.get_json())

4.3.5 Removing the tenant configuration

You might have noticed that we jumped over 2 lines of the tutorial code, specifically the following lines.

if args.delete:tenant.mark_as_deleted()

The args.delete is set if the --delete command line option is given. Calling the mark_as_deleted func-tion will cause the tenant to be deleted from the APIC when the configuration is pushed. It should be noted thatdeleting the tenant will cause all of the configuration for the tenant to be deleted. This will allow us to run the tutorialand then run it again to delete the configuration by executing the following commands.:

python tutorial.pypython tutorial.py --delete

The first command will push the configuration to the APIC and the second command will delete the configurationleaving you where we started.

4.4 Getting APIC objects

With the acitoolkit, it is possible to get objects from the APIC either on demand or through object event subscriptions.In most cases, getting the objects on demand will be sufficient. However, in cases where action needs to be takenimmediately or to avoid frequent polling of the APIC, event subscriptions can be used.

4.4. Getting APIC objects 23

acitoolkit Documentation, Release 0.1

4.4.1 Objects on demand

Getting objects on demand is fairly straightforward. Each class that allows getting objects from the APIC has a getclass method. This method will return a list of objects belonging to that class type and will be retrieved from the APICimmediately upon calling.

Since the acitoolkit can be used to control multiple APICs at the same time, the Session class instance representingthe connection to the desired APIC is also passed.

An example is shown in the code snippet below.:

tenants = Tenant.get(session)for tenant in tenants:

print tenant.name

4.4.2 Event subscriptions

Event subscriptions allow immediate notification when an object is created, modified, or deleted. Events will bereceived only for classes or instances that are subscribed.

4.4.2.1 Class subscriptions

To create a class subscription, the class method subscribe is called on the desired class along with the appropriateSession class instance. This is shown in the code snippet below using the Tenant class as the example.:

Tenant.subscribe(session)

To check an event has arrived, the method has_events can be called on the subscribed class.:

Tenant.has_events(session)

If there is an event waiting, this will return True.

Note: While this may look like it requires polling the APIC, it is actually just checking a local event receive queue.This event queue is populated by a separate thread receiving events from the APIC. Thus, calling has_event willnot result in additional communication with the APIC so that this call can be run in a tight loop with minimal overheadand/or spun into a seperate thread if desired.

To retrieve the event, a call is made to the get_event method as shown below.:

event = Tenant.get_event(session)

This will return a instance of the object with the appropriate settings indicating the change. For instance, if theTenant named Bob is deleted, the event will return a Tenant instance with the name set to Bob and it will bemarked as deleted.

To no longer receive events for this particular class, the class method unsubscribe can be called. This will causethe subscription to be removed from the APIC.:

Tenant.unsubscribe(session)

Under the covers, the event subscriptions use a web socket to communicate with the APIC to receive the events.The events are then collected by a thread and placed into an event queue that is then queried by user code. Eventsubscriptions are refreshed automatically by the toolkit using a separate thread.

24 Chapter 4. Tutorial

acitoolkit Documentation, Release 0.1

4.4.2.2 Instance subscriptions

Instance subscriptions are the same as class subscriptions except that the events are limited to only that particularobject instance such as:

bob = Tenant('bob')bob.subscribe(session)bob.has_events(session)event = bob.get_event(session)

A more useful example would be the following code which will wait for an event for the instance of Tenant with thename Bob and then print a message if the instance was deleted.:

bob = Tenant('Bob')bob.subscribe(session)while True:

if bob.has_events(session):bobs_event = bob.get_event(session)if bobs_event.is_deleted():

print('Bob was deleted')

4.4. Getting APIC objects 25

acitoolkit Documentation, Release 0.1

26 Chapter 4. Tutorial

CHAPTER 5

Statistics

This documents gives an overview of the statistics.

5.1 Statistics

Statistics are gathered at each Interface according to the monitoring policy referenced by that Interface. See MonitorPolicy for details of the monitoring policy.

This section describes the statistic counters themselves.

5.1.1 Statistic Families

The statistics are broken into multiple statistic families and each family consists of a set of specific counters, ratevalues, and timestamps.

An enumerated list of statistic families is found in the MonitorStats class and can be found as follows:

>>>import acitoolkit.acitoolkit as ACI>>>statistic_family_list = ACI.MonitorStats.statsFamilyEnum>>>for statistic_family in statistic_family_list:... print statistic_family

The families are as follows:

• egrbytes

• egrPkts

• egrTotal

• egrDropPkts

• ingrBytes

• ingrPkts

27

acitoolkit Documentation, Release 0.1

• ingrTotal

• ingrDropPkts

• ingrUnkBytes

• ingrUnkPkts

• ingrStorm

5.1.2 Accessing Stats

Each statistic family is described in detail below and can be accessed via the stats object contained in theInterface object.

You first use the get() method to read the stats from the APIC controller.:

stats = interface.stats.get()

This will return a data structure that will allow each counter to be referenced by its name (see list above), a granularity,and an epoch number in the following manner:

counter = stats[<stats_family>][<granularity>][<epoch>][<counter_name>]

For example, if you wanted to show the per day total of ingress, unicast packets from the previous day you would dothe following:

stats = interface.stats.get()print stats['ingrPkts']['1h'][1]['unicastPer']

The specific counter names can be found at Statistics Detail.

Each counter family has an interval start and end value as well which can be used to understand exactly when thecounters were gathered.:

print('start', interface.stats['ingrPkts']['1h'][1]['intervalStart'])print('end', interface.stats['ingrPkts']['1h'][1]['intervalEnd'])

One thing to note about accessing the stats is that if a particular counter is not currently being kept by the APICcontroller, that particular counter will not be returned by the get() method. This means that you should either test forits existence before accessing it, or use the standard python dictionary get method to return a default value that yourcode can handle:

print stats['ingrPkts']['1h'][1].get('unicastPer',0)

A typical example of counters that may not exist would be for an epoch that is not being retained or a granularity thatis not be gathered.

One issue with the above is that some counters are floating point, some are integers and some are timestamps. Return-ing a default of zero can lead to inconsistent formatting. To work around this problem use the retrieve() methodthat will return the coutner value or a default value that is consistent. The format of the retrive method is as follows:

interface.stats.retrieve(<stats_family>,<granularity>,<epoch>,<counter_name>)

The get() method will load the counter values and then they are accessed by the retrieve method as follows:

interface.stats.get()print interface.stats.retrieve('ingrPkts','1h',1,'unicastPer')

28 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

Note that the result of the get() method was not used. It did cause a read of the stats from the APIC which are thenstored in the interface.stats object. After that, the interface.stats.retrieve() method will accessthose previously read counters. The retrieve() method will not refresh the counters.

5.1.2.1 aci-show-interface-stats.py

The interface stats can also be accessed via the simple python script aci-show-interface-stats.py. Thisscript has a couple of display options to customize the output.

A simple run of the script will display each interface in the network and a couple of selected stats for each:

python aci-show-interface-stats.py

The default display is for the 5min granularity and the current, i.e. 0, epoch. An alternative granularity can be selectedwith the -granularity command line option.:

python aci-show-interface-stats.py -granularity 1h

The epoch can be specified with the -epoch option.:

python aci-show-interface-stats.py -granularity 1h -epoch 3

A specific interface can be specified with the -interface option. This might be useful if there are a large numberof interfaces.:

python aci-show-interface-stats.py -g 1h -e 3 -interface 1/201/1/1

Note that we are also showing the abbreviated form of the other command line options. The above will show stats forpod 1, switch 201, slot 1, port 1.

If all of the stats for a given interface are desired, the -full option should be used.

python aci-show-interface-stats.py -g 1h -e 3 -i 1/201/1/1 -full

This last option will show only those stats that have been collected according to the monitoring policy. Also, note thatthis last option only works when the -interface option is also used.

5.1.3 Granularity

The <granularity>, also called “interval”, must be one of:

• 5min

• 15min

• 1h

• 1d

• 1w

• 1mo

• 1qtr

• 1year

An enumerated list of granularities is found in the CollectionPolicy class and can be found as follows:

5.1. Statistics 29

acitoolkit Documentation, Release 0.1

>>>import acitoolkit.acitoolkit as ACI>>>granularity_list = ACI.CollectionPolicy.granularityEnum>>>for granularity in granularity_list:... print granularity

5.1.4 Epoch

The <epoch> is an integer representing which set of historical stats you want to reference. Epoch 0 is the currentepoch which has not yet completed. Epoch 1 is the most recent one and so on. The length of each epoch is determinedby the granularity.

The number of epochs available will be determined by the retention policy and granularity specified in the monitoringpolicy and how long they have been in place.

For example, if the monitoring policy for a particular statistics family has a granularity of 5min and a retention policyof 1h and it has been in place for more than one hour, then there will be a total of 13 epochs, 0 through 12. Epoch 0will be the one currently active. Epoch 1 will be for the previous 5 minute interval. Epoch 2 will be for the 5 minuteinterval previous to epoch 1 and so on. At the beginning of the current Epoch, the values in Epoch 0 will be distortedbecause they are only for a fraction of that epoch (potentially a zero fraction) and the other 12 will represent an hourof history.

5.1.5 Update Frequency for current epoch

The current epoch, epoch 0, will be updated as it occurs, i.e. in near real-time. The interval that it updates depends onthe epoch, or interval, granularity.

Granularity Update frequency5min Every 10 seconds15min Every 5 minutes1h Every 15 minutes1d Every hour1w Every day1mo Every day1qtr Every day1year Every day

5.2 Statistics Detail

The following are details about each of the counters

30 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 31

acitoolkit Documentation, Release 0.1

5.2.1 egrBytes

Name Type

Description

floodavg integer

Egress flood bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

floodCum integer

Egress flood bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

floodMax integer

Egress flood bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodMin integer

Egress flood bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodPer integer

Egress flood bytes total in periodThe total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

multicastAvg integer

Egress multicast bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastCum integer

Egress multicast bytescumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

multicastMax integer

Egress multicast bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastMin integer

Egress multicast bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastPer integer

Egress multicast bytes perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

floodRate float

Egress flood byte rateThis is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastRate float

Egress multicast byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastRateAvg float

Egress multicast byte rateaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. This value is in bytes persecond.

multicastRateMax float

Egress multicast byte ratemaximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.

multicastRateMin float

Egress multicast byte rateminimumThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

32 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 33

acitoolkit Documentation, Release 0.1

5.2.2 egrTotal

Name Type

Description

bytesAvg integer

Egress bytes averageThis is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

bytesCum integer

Egress bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

bytesMax integer

Egress bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

bytesMin integer

Egress bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

bytesPer integer

Egress bytes per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

bytesRate float

Egress byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

bytesRateAvg float

Egress byte rate average.This is the average value read bythe counterduring the collection interval. Thisvalue resetsto 0 at the beginning of eachinterval and is inbytes per second.

bytesRateMax float

Egress byte rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is in bytes per second.

bytesRateMin float

Egress byte rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in bytes persecond.

pktsAvg integer

Egress packets average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

pktsCum integer

Egress packets cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

pktsMax integer

Egress packets maximum valueread.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

pktsMin integer

Egress packets minimum valueread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

pktsPer integer

Egres packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

pktsRate float

Egress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

pktsRateAvg float

Egress packet rate average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. It is measured in packetsper second.

pktsRateMax float

Egress packet rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.

pktsRateMin float

Egress packet rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

34 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 35

acitoolkit Documentation, Release 0.1

5.2.3 ingrBytes

Name Type

Description

floodavg integer

Ingress flood bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

floodCum integer

Ingress flood bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

floodMax integer

Ingress flood bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodMin integer

Ingress flood bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodPer integer

Ingress flood bytes total in periodThe total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

multicastAvg integer

Ingress multicast bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastCum integer

Ingress multicast bytescumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

multicastMax integer

Ingress multicast bytesmaximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastMin integer

Ingress multicast bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastPer integer

Ingress multicast bytes perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

floodRate float

Ingress flood byte rateThis is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastRate float

Ingress multicast byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastRateAvg float

Ingress multicast byte rateaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. This value is in bytes persecond.

multicastRateMax float

Ingress multicast byte ratemaximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.

multicastRateMin float

Ingress multicast byte rateminimumThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

36 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 37

acitoolkit Documentation, Release 0.1

5.2.4 ingrTotal

Name Type

Description

bytesAvg integer

Ingress bytes averageThis is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

bytesCum integer

Ingress bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

bytesMax integer

Ingress bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

bytesMin integer

Ingress bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

bytesPer integer

Ingress bytes per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

bytesRate float

Ingress byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

bytesRateAvg float

Ingress byte rate average.This is the average value read bythe counterduring the collection interval. Thisvalue resetsto 0 at the beginning of eachinterval and is inbytes per second.

bytesRateMax float

Ingress byte rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is in bytes per second.

bytesRateMin float

Ingress byte rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in bytes persecond.

pktsAvg integer

Ingress packets average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

pktsCum integer

Ingress packets cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

pktsMax integer

Ingress packets maximum valueread.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

pktsMin integer

Ingress packets minimum valueread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

pktsPer integer

Egres packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

pktsRate float

Ingress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

pktsRateAvg float

Ingress packet rate average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. It is measured in packetsper second.

pktsRateMax float

Ingress packet rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.

pktsRateMin float

Ingress packet rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

38 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 39

acitoolkit Documentation, Release 0.1

5.2.5 egrPkts

Name Type

Description

floodAvg integer

Egress flood average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

floodCum integer

Egress flood cumulative packets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

floodMax integer

Egress flood maximum packets.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodMin integer

Egress flood minimum packets.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodPer integer

Egress flood packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

floodRate float

Egress flood packets rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastAvg integer

Egress multicast packet average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastCum integer

Egress multicast cumulativepackets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

multicastMax integer

Egress multicast packetsmaximum read.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastMin integer

Egress multicast packetsminimum read.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastPer integer

Egress multicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

multicastRate float

Egress multicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastAvg integer

Egress unicast average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastCum integer

Egress unicast packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

unicastMax integer

Egress unicast packets maximumread.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

unicastMin integer

Egress unicast packets minimumread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

unicastPer integer

Egress unicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

unicastRate float

Egress unicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

40 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 41

acitoolkit Documentation, Release 0.1

5.2.6 ingrPkts

Name Type

Description

floodAvg integer

Ingress flood average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

floodCum integer

Ingress flood cumulative packets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

floodMax integer

Ingress flood maximum packets.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodMin integer

Ingress flood minimum packets.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

floodPer integer

Ingress flood packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

floodRate float

Ingress flood packets rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastAvg integer

Ingress multicast packet average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

multicastCum integer

Ingress multicast cumulativepackets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

multicastMax integer

Ingress multicast packetsmaximum read.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastMin integer

Ingress multicast packetsminimum read.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

multicastPer integer

Ingress multicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

multicastRate float

Ingress multicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastAvg integer

Ingress unicast average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastCum integer

Ingress unicast packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

unicastMax integer

Ingress unicast packetsmaximum read.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

unicastMin integer

Ingress unicast packets minimumread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

unicastPer integer

Ingress unicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

unicastRate float

Ingress unicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

42 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 43

acitoolkit Documentation, Release 0.1

5.2.7 egrDropPkts

Name Type

Description

afdWredAvg integer

Egress packets dropped due toAFD or WRED.This is a count of the packetsdropped due to whichever activequeue managment mechanism isrunning in the switch, either AFDor WRED. This is the average valueread by the counter duringthe collection interval. Note thatthis value resets to 0 at thebeginning of each interval.

afdWredCum integer

Egress packets droppedcumulative due to AFD orWRED.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

afdWredMax integer

Egress packets dropped by AFDor WRED maximum value read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

afdWredMin integer

Egress packets dropped by AFDor WRED minimum value read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

afdWredPer integer

Egress packets dropped by AFDor WRED per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

afdWredRate float

Egress packets dropped by AFDor WRED rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

bufferAvg integer

Egress packets dropped due tobuffer full.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

bufferCum integer

Egress packets droppedcumulative due to buffer full.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

bufferMax integer

Egress packets dropped due tobuffer full maximum read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

bufferMin integer

Egress packets dropped due tobuffer full minimum read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

bufferPer integer

Egress packets dropped due tobuffer full per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

bufferRate float

Egress packets dropped due tobuffer full rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

errorAvg integer

Egress packets dropped due toerror.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

errorCum integer

Egress packets droppedcumulative due to error.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

errorMax integer

Egress packets dropped due toerror maximum read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

errorMin integer

Egress packets dropped due toerror minimum read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

errorPer integer

Egress packets dropped due toerror per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

errorRate float

Egress packets dropped due toerror rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

44 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 45

acitoolkit Documentation, Release 0.1

5.2.8 ingrDropPkts

Name Type

Description

bufferAvg integer

Ingress packets dropped due tobuffer full.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

bufferCum integer

Ingress packets droppedcumulative due to buffer full.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

bufferMax integer

Ingress packets dropped due tobuffer full max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

bufferMin integer

Ingress packets dropped due tobuffer full min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

bufferPer integer

Ingress packets dropped due tobuffer full per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

bufferRate float

Ingress packets dropped due tobuffer full rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

errorAvg integer

Ingress packets dropped due toerror.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

errorCum integer

Ingress packets droppedcumulative due to error.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

errorMax integer

Ingress packets dropped due toerror max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

errorMin integer

Ingress packets dropped due toerror min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

errorPer integer

Ingress packets dropped due toerror per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

errorRate float

Ingress packets dropped due toerror rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

forwardingAvg integer

Ingress packets dropped due toforwarding.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

forwardingCum integer

Ingress packets droppedcumulative due to forwarding.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

forwardingMax integer

Ingress packets dropped due toforwarding max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

forwardingMin integer

Ingress packets dropped due toforwarding min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

forwardingPer integer

Ingress packets dropped due toforwarding per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

forwardingRate float

Ingress packets dropped due toforwarding rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

lbAvg integer

Ingress packets dropped due toload balancing.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

lbCum integer

Ingress packets droppedcumulative due to load balancing.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

lbMax integer

Ingress packets dropped due toload balancing max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

lbMin integer

Ingress packets dropped due toload balancing min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

lbPer integer

Ingress packets dropped due toload balancing per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

lbRate float

Ingress packets dropped due toload balancing rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

46 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 47

acitoolkit Documentation, Release 0.1

5.2.9 ingrUnkBytes

Name Type

Description

unclassifiedAvg integer

Ingress unclassified bytesaverage.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

unclassifiedCum integer

Ingress unclassified bytescumulative.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

unclassifiedMax integer

Ingress unclassified bytes maxvalue read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

unclassifiedMin integer

Ingress unclassified bytes minvalue read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

unclassifiedPer integer

Ingress unclassified bytes perinterval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

unclassifiedRate float

Ingress packet rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

unicastAvg integer

Ingress unknown unicast bytesaverage.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.

unicastCum integer

Ingress unknown unicast bytescumulative.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.

unicastMax integer

Ingress unknown unicast bytesmax value read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.

unicastMin integer

Ingress unknown unicast bytesmin value read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.

unicastPer integer

Ingress unknown unicast bytesper interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.

unicastRate float

Ingress packet rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

48 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 49

acitoolkit Documentation, Release 0.1

5.2.10 ingrStorm

Name Type

Description

dropBytesAvg integer

Ingress ave bytes dropped due tostorm control.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

dropBytesCum integer

Ingress cum bytes dropped due tostorm controlThe total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

dropBytesMax integer

Ingress max bytes dropped due tostorm control.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.

dropBytesMin integer

Ingress min bytes dropped due tostorm controlThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.

dropBytesPer integer

Ingress bytes dropped perinterval due to stormcontrolThe total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.

dropBytesRate integer

Ingress byte drop rate due tostorm controlThis is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

dropBytesRateAvg integer

Ingress byte drop rate averagedue to stormcontrolThis is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. This value is in bytes persecond.

dropBytesRateMax integer

Ingress byte drop rate max due tostorm controlThis is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.

dropBytesRateMin integer

Ingress byte drop rate min due tostorm controlThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

50 Chapter 5. Statistics

acitoolkit Documentation, Release 0.1

5.2. Statistics Detail 51

acitoolkit Documentation, Release 0.1

5.2.11 ingrUnkPkts

Name Type

Description

unclassifiedAvg integer

Ingress unclassified packetsaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unclassifiedCum integer

Ingress unclassified packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

unclassifiedMax integer

Ingress unclassified packets maxvalue read.This is the largest value read by thecounterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is largerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 4, the previousvalue isoverwritten with 4. If the thirdreading is smallerthan 4, the value remains at 4. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unclassifiedMin integer

Ingress unclassified packets minvalue read.This is the smallest value read bythe counterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is smallerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 2, the previousvalue isoverwritten with 2. If the thirdreading is largerthan 2, the value remains at 2. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unclassifiedPer integer

Ingress unclassified packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resets to0 at the beginning of each interval.

unclassifiedRate float

Ingress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastAvg integer

Ingress unknown unicast packetsaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastCum integer

Ingress unknown unicast packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.

unicastMax integer

Ingress unknown unicast packetsmax value read.This is the largest value read by thecounterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is largerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 4, the previousvalue isoverwritten with 4. If the thirdreading is smallerthan 4, the value remains at 4. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastMin integer

Ingress unknown unicast packetsmin value read.This is the smallest value read bythe counterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is smallerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 2, the previousvalue isoverwritten with 2. If the thirdreading is largerthan 2, the value remains at 2. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

unicastPer integer

Ingress unknown unicast packetsper interval.The total sum of the values readduring thecollection interval. Note that thisvalue resets to0 at the beginning of each interval.

unicastRate float

Ingress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.

intervalStart time

Interval start time.Timestamp of when interval started.

intervalEnd time

Interval end time.Timestamp of when interval ended.

52 Chapter 5. Statistics

CHAPTER 6

API Reference

6.1 acitoolkit package

6.1.1 Submodules

6.1.1.1 acibaseobject module

This module implements the Base Class for creating all of the ACI Objects.

class acitoolkit.acibaseobject.BaseACIObject(name=None, parent=None)Bases: acitoolkit.aciSearch.AciSearch

This class defines functionality common to all ACI objects. Functions may be overwritten by inheriting classes.

Constructor initializes the basic object and should be called by the init routines of inheriting subclasses.

Parameters

• name – String containing the name of the object instance

• parent – Parent object within the acitoolkit object model.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

53

acitoolkit Documentation, Release 0.1

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

54 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

6.1. acitoolkit package 55

acitoolkit Documentation, Release 0.1

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

56 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

6.1. acitoolkit package 57

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

58 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acibaseobject.BaseACIPhysModule(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject

BaseACIPhysModule: base class for modules

Initialize the basic object. This should be called by the init routines of inheriting subclasses.

Parameters

• pod – pod id of module

• node – node id of module

• slot – slot id of module

• parent – optional parent object

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

Returns list of module objects derived from the specified apic_classes

get_serial()Returns the serial number. :returns: serial number string

get_slot()Gets slot id

Returns slot id

class acitoolkit.acibaseobject.BaseACIPhysObject(name=”, parent=None, pod=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Base class for physical objects

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

6.1. acitoolkit package 59

acitoolkit Documentation, Release 0.1

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

get_pod()Gets pod_id :returns: id of pod

get_serial()Gets serial number.

Returns serial number string

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

class acitoolkit.acibaseobject.BaseInterface(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Abstract class used to provide base functionality to other Interface classes.

get_port_channel_selector_json(port_name)Get the JSON for the Port Channel selector

60 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters port_name – String containing the port name

Returns Dictonary containing the JSON for the Port Channel selector

get_port_selector_json()Returns the port selector.

Returns

static is_dn_vpc(dn)Check if the DN is a VPC

Parameters dn – String containing the DN

Returns True if the the DN is a VPC. False otherwise.

class acitoolkit.acibaseobject.BaseRelation(item, status, relation_type=None)Bases: object

Class for all basic relations.

A relation consists of the following elements:

Parameters

• item – The object to which the relationship applies

• status – The status of the relationship. Valid values are ‘attached’ and ‘detached’

• relation_type – Optional additional information to distinguish the relationship. Usedin cases where more than 1 type of relation exists.

is_attached()

Returns True or False indicating whether the relation is attached. If a relation is detached, itwill be deleted from the APIC when the configuration is pushed.

is_detached()

Returns True or False indicating whether the relation is detached. If a relation is detached, itwill be deleted from the APIC when the configuration is pushed.

set_as_detached()Sets the relation status to ‘detached’

6.1.1.2 aciphysobject module

6.1. acitoolkit package 61

acitoolkit Documentation, Release 0.1

API Reference

PhysicalModel

Pod

ExternalSwitch Link Node

Powersupply Linecard Supervisorcard Fantray Systemcontroller

Interface Fan

ACI Toolkit module for physical objects

class acitoolkit.aciphysobject.Cluster(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Represents the global settings of the Cluster

Parameters name – String containing the name of this Cluster object.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

62 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the Clusters from the APIC.

Returns Instance of Cluster class.

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_apics()

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

6.1. acitoolkit package 63

acitoolkit Documentation, Release 0.1

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

get_cluster_size()reads information about the APIC cluster :return:

get_config_size()

Returns configured size of the cluster, i.e. # of APICs

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

64 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

6.1. acitoolkit package 65

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

66 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

6.1. acitoolkit package 67

acitoolkit Documentation, Release 0.1

class acitoolkit.aciphysobject.ExternalSwitch(name=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject

External Node. This class is for switch nodes that are connected to the pod, but are not ACI nodes, i.e. are notunder control of the APIC. Examples would be external layer 2 switches, external routers, or hypervisor basedswitches.

This class will look as much as possible like the Node class recognizing that not as much information is availableto the APIC about them as is available about ACI nodes. Nearly all of the information used to create this classcomes from LLDP.

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

68 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the loose nodes from the APIC.

Parameters

• session – APIC session

• parent – optional parent object of type Topology

Returns list of ENodes

getRole()retrieves the node role :returns: role

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

6.1. acitoolkit package 69

acitoolkit Documentation, Release 0.1

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)not yet fully implemented

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

70 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_node()Gets node id

Returns id of node

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Gets serial number.

Returns serial number string

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

6.1. acitoolkit package 71

acitoolkit Documentation, Release 0.1

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

72 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

roleGetter for role. :return: role

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

6.1. acitoolkit package 73

acitoolkit Documentation, Release 0.1

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Fabric(session=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

This is the root class for the acitoolkit. It is a container that can hold all of the other instances of the acitoolkitclasses.

From this class, you can populate all of the children classes.

Initialization method that sets up the Fabric. :return:

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

74 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get(session)

Parameters session –

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(session, include_concrete=False)Will return the entire tree of the fabric. :param session: APIC session to use :param include_concrete: flagto indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

6.1. acitoolkit package 75

acitoolkit Documentation, Release 0.1

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

76 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

6.1. acitoolkit package 77

acitoolkit Documentation, Release 0.1

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

78 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Fan(parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule

Class for the fan of a fan tray

Initialize the basic fan.

Parameters parent – optional parent Fantray object

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

6.1. acitoolkit package 79

acitoolkit Documentation, Release 0.1

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the fans from the APIC. If parent is specified, it will only get fantrays that are children of thethe parent. The fantrays will also be added as children to the parent Node.

The fan object is derived mostly from the APIC ‘eqptFan’ class.

Parameters

• session – APIC session

• parent – optional parent fantray of class Fantray

Returns list of fans

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

80 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

6.1. acitoolkit package 81

acitoolkit Documentation, Release 0.1

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

Returns list of module objects derived from the specified apic_classes

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Returns the serial number. :returns: serial number string

get_slot()Gets slot id

Returns slot id

static get_table(modules, title=”)Will create table of fantry information :param title: :param modules:

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

82 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

6.1. acitoolkit package 83

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

84 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Fantray(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule

Class for the fan tray of a node

Initialize the basic object. It will create the name of the fan tray and set the type before calling the base class__init__ method :param pod: pod id :param node: node id :param slot: slot id :param parent: optional parentobject

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

6.1. acitoolkit package 85

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the fantrays from the APIC. If parent is specified, it will only get fantrays that are children ofthe the parent. The fantrays will also be added as children to the parent Node.

The fantray object is derived mostly from the APIC ‘eqptFt’ class.

Parameters

• session – APIC session

• parent – optional parent switch of class Node

Returns list of fantrays

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

86 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

6.1. acitoolkit package 87

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

Returns list of module objects derived from the specified apic_classes

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Returns the serial number. :returns: serial number string

get_slot()Gets slot id

Returns slot id

static get_table(modules, title=”)Will create table of fantry information :param title: :param modules:

get_tags()Get the tags assigned to this object.

88 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

6.1. acitoolkit package 89

acitoolkit Documentation, Release 0.1

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

90 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Interface(interface_type, pod, node, module, port, par-ent=None, session=None, attributes=None)

Bases: acitoolkit.acibaseobject.BaseInterface

This class defines a physical interface.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

classmethod create_from_name(name)

6.1. acitoolkit package 91

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

disable_cdp()Disables CDP on this interface.

disable_lldp()Disables LLDP on this interface.

enable_cdp()Enables CDP on this interface.

enable_lldp()Enables LLDP on this interface.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, pod_parent=None, node=None, module=None, port=None)Gets all of the physical interfaces from the APIC if no parent is specified. If a parent of type Linecard isspecified, then only those interfaces on that linecard are returned and they are also added as children tothat linecard.

If the pod, node, module and port are specified, then only that specific interface is read.

If the pod and node are specified, then only those interfaces are read

Parameters

• session – the instance of Session used for APIC communication

• pod_parent – Linecard instance to limit interfaces or pod number (optional)

• node – Node id string. This specifies the switch to read. (optional)

• module – Module id string. This specifies the module or slot of the port. (optional)

• port – Port number. This is the port to read. (optional)

Returns list of Interface instances

get_adjacent_port()This will return the port ID of the port at the other end of the link.

92 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

For Access ports, it will only have a result if it is connected to a controller node.

If no link is found, then the result will be None. That does not mean that nothing is connected, just that afabric link is not connected.

:returns : Port ID string

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

6.1. acitoolkit package 93

acitoolkit Documentation, Release 0.1

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Get the json for an interface. Returns a tuple since the json is required to be sent in multiple posts. A callto get_url will return the URLs which the JSON can be sent.

Returns Tuple containing the phys_domain, fabric, infra JSONs

get_parent()

Returns Parent of this object.

get_port_channel_selector_json(port_name)Get the JSON for the Port Channel selector

Parameters port_name – String containing the port name

Returns Dictonary containing the JSON for the Port Channel selector

get_port_selector_json()Returns the port selector.

Returns

94 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_serial()getter for the serial number

Returns None

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()getter method for object.type

Returns the type

static get_url()Gets URLs for physical domain, fabric, and infra.

Returns

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

6.1. acitoolkit package 95

acitoolkit Documentation, Release 0.1

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_cdp_disabled()Returns whether this interface has CDP configured as disabled.

Returns True or False

is_cdp_enabled()Returns whether this interface has CDP configured as enabled.

Returns True or False

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_dn_vpc(dn)Check if the DN is a VPC

Parameters dn – String containing the DN

Returns True if the the DN is a VPC. False otherwise.

is_interface()Returns whether this instance is considered an interface.

Returns True

is_lldp_disabled()Returns whether this interface has LLDP configured as disabled.

Returns True or False

is_lldp_enabled()Returns whether this interface has LLDP configured as enabled.

Returns True or False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

96 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

classmethod parse_dn(dn)Parses the pod, node, module, port from a distinguished name of the interface.

Parameters dn – String containing the interface distinguished name

Returns interface_type, pod, node, module, port

static parse_name(name)Parses a name that is of the form: <type> <pod>/<mod>/<port> :param name: Distinguished Name (dn)

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

push_to_apic(session)Push the configuration to the APIC

Parameters session – the instance of Session used for APIC communication

Returns Response class instance from the requests library. response.ok is True if request is sentsuccessfully.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

6.1. acitoolkit package 97

acitoolkit Documentation, Release 0.1

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Linecard(arg0=None, arg1=None, slot=None, par-ent=None)

Bases: acitoolkit.acibaseobject.BaseACIPhysModule

class for a linecard of a switch

Initialize the basic object. It will create the name of the linecard and set the type before calling the base class__init__ method. If arg1 is an instance of a Node, then pod, and node are derived from the Node and the slot_idis from arg0. If arg1 is not a Node, then arg0 is the pod, arg1 is the node id, and slot is the slot_id

In other words, this Linecard object can either be initialized by

>>> lc = Linecard(slot_id, parent_switch)

or

>>> lc = Linecard(pod_id, node_id, slot_id)

or

>>> lc = Linecard(pod_id, node_id, slot_id, parent_switch)

Parameters

• arg0 – pod_id if arg1 is a node_id, slot_id if arg1 is of type Node

• arg1 – node_id string or parent Node of type Node

• slot – slot_id if arg1 is node_id Not required if arg1 is a Node

• parent – parent switch of type Node. Not required if arg1 is used instead.

Returns None

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

98 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

6.1. acitoolkit package 99

acitoolkit Documentation, Release 0.1

classmethod get(session, parent=None)Gets all of the linecards from the APIC. If parent is specified, it will only get linecards that are children ofthe the parent. The linecards will also be added as children to the parent Node.

The lincard object is derived mostly from the APIC ‘eqptLC’ class.

Parameters

• session – APIC session

• parent – optional parent of class Node

Returns list of linecards

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

100 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

6.1. acitoolkit package 101

acitoolkit Documentation, Release 0.1

Returns list of module objects derived from the specified apic_classes

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Returns the serial number. :returns: serial number string

get_slot()Gets slot id

Returns slot id

static get_table(linecards, super_title=”)Will create table of line card information :param super_title: :param linecards:

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

102 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

6.1. acitoolkit package 103

acitoolkit Documentation, Release 0.1

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Link(name=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject

Link class, equivalent to the fabricLink object in APIC

Parameters parent – optional parent object

104 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

6.1. acitoolkit package 105

acitoolkit Documentation, Release 0.1

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent_pod=None, node_id=None)Gets all of the Links from the APIC. If the parent_pod is specified, only links of that pod will be retrieved.If the parent_pod is a Pod object then the links will be added as children of that pod.

If node is specified, then only links of that originate at the specific node will be returned. If node isspecified, pod must be specified.

Parameters

• session – APIC session

• parent_pod – Optional parent Pod object or identifier string.

• node_id – Optional node number string

Returns list of links

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

106 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

get_node1()Returns the Node object that corresponds to the first node of the link. The Node must be a child of the Pod

6.1. acitoolkit package 107

acitoolkit Documentation, Release 0.1

that this link is a member of, i.e. it must already have been read from the APIC. This can most easily bedone by populating the entire physical heirarchy from the Pod down.

Returns Node object at first end of link

get_node2()Returns the Node object that corresponds to the second node of the link. The Node must be a child of thePod that this link is a member of, i.e. it must already have been read from the APIC. This can most easilybe done by populating the entire physical heirarchy from the Pod down.

Returns Node object at second end of link

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_port1()Returns the Interface object that corresponds to the first port of the link. The port must be a child of theLinecard in the Node in the Pod that this link is a member of, i.e. it must already have been read from theAPIC. This can most easily be done by populating the entire physical heirarchy from the Pod down.

Returns Interface object at first end of link

get_port2()Returns the Interface object that corresponds to the second port of the link. The port must be a child of theLinecard in the Node in the Pod that this link is a member of, i.e. it must already have been read from theAPIC. This can most easily be done by populating the entire physical heirarchy from the Pod down.

Returns Interface object at second end of link

get_port_id1()Returns the port ID of the first end of the link in the format pod/node/slot/port

Returns port ID string

get_port_id2()Returns the port ID of the second end of the link in the format pod/node/slot/port

Returns port ID string

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Gets serial number.

Returns serial number string

get_slot1()Returns the Linecard object that corresponds to the first slot of the link. The Linecard must be a child ofthe Node in the Pod that this link is a member of, i.e. it must already have been read from the APIC. Thiscan most easily be done by populating the entire physical heirarchy from the Pod down.

Returns Linecard object at first end of link

get_slot2()

Returns the Linecard object that corresponds to the second slot of the link. The Linecard must be achild of

108 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

the Node in the Pod that this link is a member of, i.e. it must already have been read from the APIC. Thiscan most easily be done by populating the entire physical heirarchy from the Pod down.

Returns Linecard object at second end of link

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

6.1. acitoolkit package 109

acitoolkit Documentation, Release 0.1

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

110 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Node(name=None, pod=None, node=None, role=None, par-ent=None)

Bases: acitoolkit.acibaseobject.BaseACIPhysObject

Node : roughly equivalent to fabricNode

Parameters

• pod – String representation of the pod number

• node – String representation of the node number

• name – Name of the node

• role – Role of the node. Valid roles are None, ‘spine’, ‘leaf’, ‘controller’, ‘loosenode’

• parent – Parent pod object of the node.

6.1. acitoolkit package 111

acitoolkit Documentation, Release 0.1

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

112 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, node_id=None)Gets all of the Nodes from the APIC. If the parent pod is specified, only nodes of that pod will be retrieved.

If parent pod and node_id is specified, only the matching switch will be retrieved.

APIC controller nodes will have a ‘role’ of ‘controller’, while switch nodes will have a ‘role’ of ‘leaf’ or‘spine’

Parameters

• session – APIC session

• parent – optional parent object or pod_id

• node_id – optional node_id of switch

Returns list of Nodes

getFabricSt()retrieves the fabric state.

Returns fabric state

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_chassis_type()Returns the chassis type of this node. The chassis type is derived from the model number. This is a chassistype that is compatible with Cisco’s Cable Plan XML.

Returns chassis type of node of type str

6.1. acitoolkit package 113

acitoolkit Documentation, Release 0.1

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_firmware(working_data)retrieves firmware version :param working_data:

get_from_json(data, parent=None)returns a Tenant object from a json

get_health()This will get the health of the switch node

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

114 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_role()retrieves the node role :returns: role

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Gets serial number.

Returns serial number string

static get_table(switches, title=”)Creates report of basic switch information :param switches: Array of Node objects :param title: optionaltitle for this table

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

6.1. acitoolkit package 115

acitoolkit Documentation, Release 0.1

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

116 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

operStchanged value to “oper_st” so this makes the class backward compatible :return:

populate_children(deep=False, include_concrete=False)Will populate all of the children modules such as linecards, fantrays and powersupplies, of the node.

Parameters

• deep – boolean that when true will cause the entire sub-tree to be populated. When false,only the immediate children are populated

• include_concrete – boolean to indicate that concrete objects should also be popu-lated

Returns List of children objects

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

6.1. acitoolkit package 117

acitoolkit Documentation, Release 0.1

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.PhysicalModel(session=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

This is the root class for the physical part of the network. It’s corrolary is the LogicalModel class. It is acontainer that can hold all of physical model instances. Initially this is only an instance of Pod.

From this class, you can populate all of the children classes.

Initialization method that sets up the Fabric. :return:

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

118 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session=None, parent=None)Method to get all of the PhysicalModels. It will get one and return it in a list. :param session: :paramparent: :return: list of PhysicalModel

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

6.1. acitoolkit package 119

acitoolkit Documentation, Release 0.1

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

120 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

6.1. acitoolkit package 121

acitoolkit Documentation, Release 0.1

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

122 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Pod(pod, dn=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject

Pod : roughly equivalent to fabricPod

Initialize the basic object. It will create the name of the pod and set the type before calling the base class __init__method. Typically the pod_id will be 1.

Parameters

• pod – pod id string

• dn – distinguished name

• parent – optional parent object

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

6.1. acitoolkit package 123

acitoolkit Documentation, Release 0.1

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the Pods from the APIC. Generally there will be only one.

Parameters

• parent – optional parent of class PhysicalModel

• session – APIC session

Returns list of Pods. Note that this will be a list even though there typically will only be oneitem in the list.

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

124 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

6.1. acitoolkit package 125

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Gets serial number.

Returns serial number string

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

126 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

6.1. acitoolkit package 127

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

128 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Powersupply(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule

class for a power supply in a node

Initialize the basic object. It will create the name of the powersupply and set the type before calling the baseclass __init__ method :param pod: pod id :param node: node id :param slot: slot id :param parent: optionalparent object

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

6.1. acitoolkit package 129

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the power supplies from the APIC. If parent is specified, it will only get power supplies that arechildren of the the parent. The power supplies will also be added as children to the parent Node.

The Powersupply object is derived mostly from the APIC ‘eqptPsu’ class.

Parameters

• session – APIC session

• parent – optional parent switch of class Node

Returns list of powersupplies

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

130 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

6.1. acitoolkit package 131

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

Returns list of module objects derived from the specified apic_classes

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Returns the serial number. :returns: serial number string

get_slot()Gets slot id

Returns slot id

static get_table(modules, super_title=”)Will create table of power supply information :param super_title: :param modules:

get_tags()Get the tags assigned to this object.

132 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

6.1. acitoolkit package 133

acitoolkit Documentation, Release 0.1

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

134 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.ProcessBases: acitoolkit.acibaseobject.BaseACIPhysObject

Class to hold information about a process running on a node - either switch or controller

Returns

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

6.1. acitoolkit package 135

acitoolkit Documentation, Release 0.1

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent)

Parameters

• session –

• parent –

Returns

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

136 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

6.1. acitoolkit package 137

acitoolkit Documentation, Release 0.1

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Gets serial number.

Returns serial number string

static get_table(aci_objects, title=’Process’)

Parameters

• aci_objects – list of process objects to build table for

• title – Title of the table

Returns Table

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

138 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

6.1. acitoolkit package 139

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

140 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Supervisorcard(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule

Class representing the supervisor card of a switch

Initialize the basic object. This should be called by the init routines of inheriting subclasses.

Parameters

• pod – pod id

• node – node id

• slot – slot id

• parent – optional parent object

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

6.1. acitoolkit package 141

acitoolkit Documentation, Release 0.1

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent_node=None)Gets all of the supervisor cards from the APIC. If parent is specified, it will only get the supervisor cardthat is a child of the the parent Node. The supervisor will also be added as a child to the parent Node.

The Supervisorcard object is derived mostly from the APIC ‘eqptSupC’ class.

If parent_node is a str, then it is the Node id of the switch for the supervisor.

Parameters

• session – APIC session

• parent_node – optional parent switch of class Node or the node id of a switch

Returns list of linecards

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

142 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

6.1. acitoolkit package 143

acitoolkit Documentation, Release 0.1

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

Returns list of module objects derived from the specified apic_classes

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Returns the serial number. :returns: serial number string

144 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_slot()Gets slot id

Returns slot id

static get_table(modules, super_title=”)Will create table of supervisor information :param super_title: :param modules:

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

6.1. acitoolkit package 145

acitoolkit Documentation, Release 0.1

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

146 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.aciphysobject.Systemcontroller(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule

class of the motherboard of the APIC controller node

Initialize the basic object. It will create the name of the Systemcontroller and set the type before calling the baseclass __init__ method.

Parameters

• pod – pod id

• node – node id

• slot – slot id

• parent – optional parent object

add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.

6.1. acitoolkit package 147

acitoolkit Documentation, Release 0.1

Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.

Parameters

• session – APIC session to use when accessing the APIC controller.

• phys_obj – The object that you are checking for.

Returns True if the phys_obj exists, False if it does not.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

148 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get(session, parent=None)Gets all of the System controllers from the APIC. This information comes from the APIC ‘eqptBoard’class.

If parent is specified, it will only get system controllers that are children of the the parent. The systemcontrolles will also be added as children to the parent Node.

Parameters

• session – APIC session

• parent – parent Node

Returns list of Systemcontrollers

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.

Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.

6.1. acitoolkit package 149

acitoolkit Documentation, Release 0.1

Returns list of children

classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the object

Returns JSON of contained Interfaces

get_name()Gets name.

Returns Name string

get_node()Gets node id

Returns id of node

classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.

Parameters

• parent_node – parent object or node id

• session – APIC session to use when retrieving the nodes

• apic_classes – The object class in APIC to retrieve

150 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns list of module objects derived from the specified apic_classes

get_parent()

Returns Parent of this object.

get_pod()Gets pod_id :returns: id of pod

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_serial()Returns the serial number. :returns: serial number string

get_slot()Gets slot id

Returns slot id

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_type()Gets physical object type

Returns type string of the object.

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.

Parameters fmt – optional fmt string

Returns Nothing - physical objects are not modifiable

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

6.1. acitoolkit package 151

acitoolkit Documentation, Release 0.1

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

152 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

6.1. acitoolkit package 153

acitoolkit Documentation, Release 0.1

Returns List of subscribed classes

class acitoolkit.aciphysobject.WorkingData(session=None, toolkit_class=None, url=None,deep=False, include_concrete=False)

Bases: object

This class will hold the entire json tree from topSystem down, for a switch. The attributes of a specific classcan be retrieved in which case it will be as a list of objects. It will allow all children of an object to be retrievedresult is list of objects It will allow an instance of a class to be retrieved returned as a single object.

add(session=None, toolkit_class=None, url=None, deep=False, include_concrete=False)

Parameters

• session –

• toolkit_class –

• url –

• deep –

• include_concrete –

Returns

build_vnid_dictionary()Will build a dictionary that is indexed by vnid and will return context or bridge_domain and the name ofthat segment. :param self:

get_class(class_name)returns all the objects of a given class :param class_name: The name of the class you are looking for.

get_object(dname)Will return the object specified by dn. :param dname: Distinguished Name (dn)

get_subtree(class_name, dname)will return list of matching classes and their attributes

It will get all classes that are classes under dn. :param class_name: name of class you are looking for:param dname: Distinguished Name (dn)

Future Work

Future work items to be added to aciphysobject include:

• Add an events sub-object. This would work similarly to the stats object.

• Add a top level object called Topology that would have Pod as its child. This object would also contain devicesattached to the fabric, so called loose nodes, external links, and discovered end-points.

6.1.1.3 acisession module

This module contains the Session class that controls communication with the APIC.

class acitoolkit.acisession.Session(url, uid, pwd=None, cert_name=None, key=None,verify_ssl=False, appcenter_user=False, sub-scription_enabled=True, proxies=None, relo-gin_forever=False)

Bases: object

Session class This class is responsible for all communication with the APIC.

154 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• url – String containing the APIC URL such as https://1.2.3.4

• uid – String containing the username that will be used as part of the the APIC login cre-dentials.

• pwd – String containing the password that will be used as part of the the APIC login cre-dentials.

• cert_name – String containing the certificate name that will be used as part of the theAPIC certificate authentication credentials.

• key – String containing the private key file name that will be used as part of the the APICcertificate authentication credentials.

• verify_ssl – Used only for SSL connections with the APIC. Indicates whether SSLcertificates must be verified. Possible values are True and False with the default being False.

• appcenter_user – Set True when using certificate authentication from the context of anAPIC appcenter app

• proxies – Optional dictionary containing the proxies passed directly to the Requests li-brary

• relogin_forever – Boolean that when set to True will attempt to re-login forever re-gardless of the error returned from APIC.

close()Close the session

deregister_login_callback(callback_fn)Delete the registration of a callback function that was registered via the register_login_callback function.

Parameters callback_fn – function to be deregistered

get(url, timeout=None)Perform a REST GET call to the APIC.

Parameters url – String containing the URL that will be used to send the object data to theAPIC.

Returns Response class instance from the requests library. response.ok is True if request is sentsuccessfully. response.json() will return the JSON data sent back by the APIC.

get_event(url)Get an event for a particular URL. Used internally by the class and instance subscriptions.

Parameters url – URL string belonging to subscription

Returns Object belonging to the instance or class that the subscription was made.

get_event_count(url)Check the number of subscription events for a particular APIC URL

Parameters url – URL string belonging to subscription

Returns Interger number of events in event queue

has_events(url)Check if there are events for a particular URL. Used internally by the class and instance subscriptions.

Parameters url – URL string belonging to subscription

Returns True or False. True if an event exists for this subscription.

6.1. acitoolkit package 155

acitoolkit Documentation, Release 0.1

invoke_login_callbacks()Invoke registered callback functions when the session performs a successful relogin attempt after discon-necting from the APIC.

is_subscribed(url)Check if subscribed to events for a particular URL.

Parameters url – URL string to issue subscription

logged_in()Returns whether the session is logged in to the APIC

Returns True or False. True if the session is logged in to the APIC.

login(timeout=None)Initiate login to the APIC. Opens a communication session with the APIC using the python requests library.

Returns Response class instance from the requests library. response.ok is True if login is suc-cessful.

push_to_apic(url, data, timeout=None)Push the object data to the APIC

Parameters

• url – String containing the URL that will be used to send the object data to the APIC.

• data – Dictionary containing the JSON objects to be sent to the APIC.

Returns Response class instance from the requests library. response.ok is True if request is sentsuccessfully.

refresh_login(timeout=None)Refresh the login to the APIC

Parameters timeout – Integer containing the number of seconds for connection timeout

Returns Instance of requests.Response

register_login_callback(callback_fn)Register a callback function that will be called when the session performs a successful relogin attemptafter disconnecting from the APIC.

Parameters callback_fn – function to be called

resubscribe()Resubscribe to the current subscriptions. Used by the login thread after a re-login

Returns None

subscribe(url, only_new=False)Subscribe to events for a particular URL. Used internally by the class and instance subscriptions.

Parameters url – URL string to issue subscription

unsubscribe(url)Unsubscribe from events for a particular URL. Used internally by the class and instance subscriptions.

Parameters url – URL string to remove issue subscription

156 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

6.1.1.4 acitoolkit module

ContractSubject

OutputTerminal FilterInputTerminal

EPG

IPEndpoint

Tag

AttributeCriterion Endpoint

FilterEntry

AppProfile

OutsideL3

OutsideEPG

Taboo

Tenant

ContextContract BridgeDomainOutsideL2 ContractInterface

AnyEPG

OutsideNetwork

Fabric

LogicalModel PhysicalModel

SubnetOutsideL2EPG

Pod

ExternalSwitchLink Node

Powersupply Linecard Supervisorcard FantraySystemcontroller

Interface Fan

Main ACI Toolkit module This is the main module that comprises the ACI Toolkit.

class acitoolkit.acitoolkit.AnyEPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG

AnyEPG class, roughly equivalent to vz:Any

Parameters

• epg_name – String containing the name of this EPG

• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

consume(contract)Make this EPG consume a Contract

Parameters contract – Contract class instance to be consumed by this EPG.

Returns True

consume_cif(contract_interface)Make this EPG consume a ContractInterface

Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.

6.1. acitoolkit package 157

acitoolkit Documentation, Release 0.1

Returns True

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

does_consume(contract)Check if this EPG consumes a specific Contract

Parameters contract – Instance of Contract class to check if it is consumed by this EPG.

Returns True or False. True if the EPG does consume the Contract.

does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract

Parameters contract_interface –

Returns True or False. True if the EPG does consume the ContractInterface.

does_protect(taboo)Check if this EPG is protected by a specific Taboo.

Parameters taboo – Instance of Taboo class to check if it protects this EPG.

Returns True or False. True if the EPG is protected by the Taboo.

does_provide(contract)Check if this EPG provides a specific Contract.

Parameters contract – Instance of Contract class to check if it is provided by this EPG.

Returns True or False. True if the EPG does provide the Contract.

dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed

Parameters contract – Instance of Contract class to be no longer consumed by this EPG.

Returns True

dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed

Parameters contract_interface –

Returns True

dont_protect(taboo)Make this EPG not protected by a Taboo

Parameters taboo – Instance of Taboo class to no longer protect this EPG.

Returns True

dont_provide(contract)Make this EPG not provide a Contract

Parameters contract – Instance of Contract class to be no longer provided by this EPG.

158 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.

• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.

Returns List of CommonEPG instances (or EPG instances if called from EPG class)

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted

Returns List of Contract objects that are consumed by the EPG.

get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG

Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted

Returns List of ContractInterface objects that are consumed by the EPG.

6.1. acitoolkit package 159

acitoolkit Documentation, Release 0.1

get_all_protected(deleted=False)Get all of the Taboos protecting this EPG

Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted

Returns List of Taboo objects that are protecting the EPG.

get_all_provided(deleted=False)Get all of the Contracts provided by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted

Returns List of Contract objects that are provided by the EPG.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

160 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)

Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.

Returns List of Interface objects

get_json()Returns json representation of the EPG

Returns json dictionary of the EPG

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

6.1. acitoolkit package 161

acitoolkit Documentation, Release 0.1

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

162 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

protect(taboo)Make this EPG protected by a Taboo

Parameters taboo – Instance of Taboo class to protect this EPG.

Returns True

provide(contract)Make this EPG provide a Contract

Parameters contract – Instance of Contract class to be provided by this EPG.

Returns True

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

6.1. acitoolkit package 163

acitoolkit Documentation, Release 0.1

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.AppProfile(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

The AppProfile class is used to represent the Application Profiles within the acitoolkit object model. In theAPIC model, this class is roughly equivalent to the fvAp class.

Parameters

• name – String containing the Application Profile name

• parent – An instance of Tenant class representing the Tenant which contains this Appli-cation Profile.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

164 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, tenant)Gets all of the Application Profiles from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant used to limit the Application Profiles retreived from theAPIC

Returns List of AppProfile objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

6.1. acitoolkit package 165

acitoolkit Documentation, Release 0.1

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

166 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the AppProfile object.

Returns json dictionary of fvAp

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(app_profiles, title=”)Will create table of app_profile information for a given tenant

Parameters

• title –

• app_profiles –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

6.1. acitoolkit package 167

acitoolkit Documentation, Release 0.1

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

168 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.AttributeCriterion(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

AttributeCriterion : roughly equivalent to fvCrtrn

Initializes the AttributeCriterion with a name and optionally an EPG parent

Parameters

• name – String containing the AttributeCriterion name

6.1. acitoolkit package 169

acitoolkit Documentation, Release 0.1

• parent – Instance of the EPG class representing where this AttributeCriterion is defined

Returns Instance of AttributeCriterion class

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_ip_address(ip_addr)Add an IP address as an attribute

Parameters ip_addr – String containing the IP address

Returns None

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

170 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

6.1. acitoolkit package 171

acitoolkit Documentation, Release 0.1

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_ip_addresses()return the list of IP addresses

get_json()Returns JSON representation of the AttributeCriterion :return:

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

172 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

6.1. acitoolkit package 173

acitoolkit Documentation, Release 0.1

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

matchReturn the match property :return: String containing the match property. Possible values are ‘any’ or ‘all’

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

174 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.BGPSession(name, router_id=None, peer_ip=None,node_id=None)

Bases: acitoolkit.acibaseobject.BaseACIObject

Creates an BGP router interface that can be attached to a L3 interface. This interface defines the BGP AS,authentication, etc.

Parameters

• name – String containing the name of this BGPSession object.

• router_id – String containing the IPv4 router-id

• peer_ip – String containing the IP address of the BGP peer Default is None.

• node_id – String Containing the node-id (e.g. ‘101’)

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

6.1. acitoolkit package 175

acitoolkit Documentation, Release 0.1

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

176 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

6.1. acitoolkit package 177

acitoolkit Documentation, Release 0.1

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of BGPSession

Returns json dictionary of BGP Session

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

178 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

static is_bgp()

Returns True if this interface is an BGP interface. In the case of BGPSession instances, this isalways True.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

is_interface()Returns whether this instance is considered an interface.

Returns True

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

6.1. acitoolkit package 179

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

180 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.BaseContract(contract_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

BaseContract : Base class for Contracts and Taboos

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

6.1. acitoolkit package 181

acitoolkit Documentation, Release 0.1

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_filter_entries(direction=’bidirectional-only’)Get all of the filter entries contained within this Contract/Taboo

Parameters direction – String containing the type of filter entries to gather Valid values are‘bidirectional-only’, ‘input-only’, ‘output-only’, ‘all’ Default is ‘bidirectional-only’

Returns List of FilterEntry instances

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

182 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the contract

6.1. acitoolkit package 183

acitoolkit Documentation, Release 0.1

Returns json dictionary of the contract

get_parent()

Returns Parent of this object.

get_scope()Get the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

184 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

6.1. acitoolkit package 185

acitoolkit Documentation, Release 0.1

Returns None

set_scope(scope)Set the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’

Parameters scope – String containing one of the following ‘context’, ‘global’, ‘tenant’, or‘application-profile’

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.BaseMonitorClassBases: object

Base class for monitoring policies. These are methods that can be used on all monitoring objects.

add_collection_policy(coll_obj)Add a collection policy.

Parameters coll_obj – A collection policy object of type CollectionPolicy

add_stats(stat_obj)Adds a stats family object.

Parameters stat_obj – Statistics family object of type MonitorStats.

186 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

add_target(target_obj)Add a target object.

Parameters target_obj – target object of type MonitorTarget

get_parent()

Returns parent object

isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC

remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.

Parameters collection – CollectionPolicy to remove.

remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.

Parameters stats_family – Statistics family string.

remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.

Parameters target – target to remove.

set_description(description)

Sets the description of the MonitorStats.

Parameters description – String to use as the description

set_name(name)

Sets the name of the MonitorStats.

Parameters name – String to use as the name

class acitoolkit.acitoolkit.BaseSubnet(name, parent=None, address=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Base class for Subnet and OutsideNetwork

Parameters

• name – String containing the name of this instance.

• parent – An instance of the parent class.

• address – String containing the IP address. Can optionally be set later.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

6.1. acitoolkit package 187

acitoolkit Documentation, Release 0.1

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

addrSubnet address

Returns String containing the subnet default gateway IP address and mask e.g. “1.2.3.4/24”

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_addr()Get the subnet address

188 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns The subnet address as a string in the form of <ipaddr>/<mask>

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

6.1. acitoolkit package 189

acitoolkit Documentation, Release 0.1

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_scope()Get the subnet scope

Returns The subnet scope as a string

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

190 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

ipIP address of the subnet in the form of Address/mask e.g. 10.1.1.1/16

6.1. acitoolkit package 191

acitoolkit Documentation, Release 0.1

Returns String containing the IP address

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_addr(addr)Set the subnet address

Parameters addr – The subnet default gateway address as a string in the form of<ipaddr>/<mask>

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

192 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

set_scope(scope)Set the subnet scope

Parameters scope – String containing the subnet scope

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.BaseTerminal(terminal_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Base class for Input terminal and output terminal

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_filter(filter_obj)Add Filter to the Terminal, roughly equivalent to vzRsFiltAtt

Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theTerminal. Multiple Filters can be assigned to a single Terminal.

6.1. acitoolkit package 193

acitoolkit Documentation, Release 0.1

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

194 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

6.1. acitoolkit package 195

acitoolkit Documentation, Release 0.1

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_filters()Get all of the filters that are attached to this Terminal.

Returns List of Filter objects

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the Terminal Object

Returns json dictionary of the ContractSubject

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

196 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

6.1. acitoolkit package 197

acitoolkit Documentation, Release 0.1

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

198 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.BridgeDomain(bd_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

BridgeDomain : roughly equivalent to fvBD

Parameters

• bd_name – String containing the name of this BridgeDomain object.

• parent – An instance of Tenant class representing the Tenant which contains this Bridge-Domain.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_context(context)Set the Context for this BD

Parameters context – Context to assign this BridgeDomain

add_l3out(l3out)Set the L3Out for this BD

Parameters l3out – OutsideL3 to assign this BridgeDomain

add_subnet(subnet)Add a subnet to this BD.

Parameters subnet – Instance of Subnet class to add to this BridgeDomain.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

6.1. acitoolkit package 199

acitoolkit Documentation, Release 0.1

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, tenant)Gets all of the Bridge Domains from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant used to limit the BridgeDomain instances retreived fromthe APIC

Returns List of BridgeDomain objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_arp_flood()Get the ARP flooding policy for this BD

Returns a string containing the ARP flooding policy of the BridgeDomain

200 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

get_context()Get the Context for this BD

Returns Instance of Context class that this BridgeDomain is assigned.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

6.1. acitoolkit package 201

acitoolkit Documentation, Release 0.1

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

static get_from_json(self, data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the bridge domain

Returns json dictionary of bridge domain

get_l3out()

Returns List of OutsideL3 objects

get_mac()Get the mac address for the BD

Returns string containing the mac address of the BD (e.g. 00:22:BD:F8:19:FF)

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

get_subnets()Get all of the subnets on this BD.

Returns List of Subnet instances assigned to this BridgeDomain.

static get_table(bridge_domains, title=”)Will create table of context information

Parameters

• title –

• bridge_domains –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

get_unicast_route()Get the Unicast Routing policy for this BD

202 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns a string containing the unicast routing policy of the BridgeDomain

get_unknown_mac_unicast()Gets the unknown mac unicast for this BD

Returns unknown mac unicast of the BridgeDomain

get_unknown_multicast()Gets the unknown multicast for this BD

Returns unknown multicast of the BridgeDomain

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_context()Check if the Context has been set for this BD

Returns True or False. True if this BridgeDomain is assigned to a Context.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_l3out()Check if this BD has an OutsideL3 :return: True if the BD has an OutsideL3 configured. False, otherwise.

has_parent()returns True if this object has a parent

Returns bool

has_subnet(subnet)Check if the BD has this particular subnet.

Parameters subnet –

Returns True or False. True if this BridgeDomain has this particular Subnet.

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

6.1. acitoolkit package 203

acitoolkit Documentation, Release 0.1

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_arp_flood()Check if ARP flooding is enabled

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

is_unicast_route()Check if unicast routing is enabled

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_context()Remove the assigned Context from this BD

remove_subnet(subnet)Remove a subnet from this BD

204 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters subnet – Instance of Subnet class to remove from this BridgeDomain.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_arp_flood(arp_value)Set the ARP flood for this BD

Parameters arp_value – arp to assign this BridgeDomain

set_mac(mac)Set the mac address for the BD

Parameters mac – string mac address (XX:XX:XX:XX:XX:XX)

set_multidestination(multidestination)Set the multidestination flood policy for this BD

Parameters multidestination – policy to assign this BridgeDomain

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

set_unicast_route(route)Set the unicast route for this BD

Parameters route – route to assign this BridgeDomain

set_unknown_mac_unicast(unicast)Set the unknown mac unicast for this BD

Parameters unicast – Unicast to assign this BridgeDomain

set_unknown_multicast(multicast)Set the unknown multicast for this BD

Parameters multicast – Multicast to assign this BridgeDomain

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

6.1. acitoolkit package 205

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.CollectionPolicy(parent, granularity, retention, admin-State=’enabled’)

Bases: acitoolkit.acitoolkit.BaseMonitorClass

This class is a child of a MonitorPolicy object, MonitorTarget object or a MonitorStats object. It is wherethe statistics collection policy is actually specified. It applies to all of the statistics that are at the scope levelof the parent object, i.e. all, specific to a target, or specific to a statistics family. What is specified in theCollectionPolicy is the time granularity of the collection and how much history to retain. For example, thegranularity might be 5 minutes (5min) or 1 hour (1h). How much history to retain is similarly specified. Forexample you might specify that it be kept for 10 days (10d) or 2 years (2year).

If the CollectionPolicy is a child of a MonitorStats object, it can optionally have children that specify the policyfor raising threshold alarms on the fields in the stats family specified in the MonitorStats object. This has yet tobe implemented.

This object is roughly the same as the statsColl and statsHierColl objects in the APIC.

The CollectionPolicy must always be initialized with a parent object of type MonitorPolicy, Monitor-Target or MonitorStats. The granularity must also be specifically specified. The retention period canbe specified, set to “none”, or set to “inherited”. Note that the “none” value is a string, not the PythonNone. When the retention period is set to “none” there will be no historical stats kept. However,assuming collection is enabled, stats will be kept for the current time period.

If the retention period is set to “inherited”, the value will be inherited from the less specific policydirectly above this one. The same applies to the adminState value. It can be ‘disabled’, ‘enabled’, or‘inherited’. If ‘disabled’, the current scope of counters are not gathered. If enabled, they are gathered.If ‘inherited’, it will be according to the next higher scope.

Having the ‘inherited’ option on the retention and administrative status allows these items indepen-dently controlled at the current stats granularity. For example, you can specify that ingress unknownpackets are gathered every 15 minutes by setting adding a collection policy that specifies a 15 min-utes granularity and an adminState of ‘enabled’ under a MonitorStats object that sets the scope to beingress unknown packets. This might override a higher level policy that disabled collection at a 15minute interval. However, you can set the retention in that same object to be “inherited” so that thisspecific policy does not change the retention behavior from that of the higher, less specific, policy.

When the CollectionPolicy is a child at the top level, i.e. of the MonitorPolicy, the ‘inherited’ op-tion is not allowed because there is no higher level policy to inherit from. If this were to happen,‘inherited’ will be treated as ‘enabled’.

206 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• parent – Parent object that this collection policy should be applied to. This must be anobject of type MonitorStats, MonitorTarget, or MonitorPolicy.

• granularity – String specifying the time collection interval or granularity of this policy.Possible values are: [‘5min’, ‘15min’, ‘1h’, ‘1d’, ‘1w’, ‘1mo’, ‘1qtr’, ‘1year’].

• retention – String specifying how much history to retain the collected statistics for.The retention will be for time units of the granularity specified. Possible values are [‘none’,‘inherited’, ‘5min’, ‘15min’, ‘1h’, ‘1d’, ‘1w’, ‘10d’, ‘1mo’, ‘1qtr’, ‘1year’, ‘2year’, ‘3year’].

• adminState – Administrative status. String to specify whether stats should be collectedat the specified granularity. Possible values are [‘enabled’, ‘disabled’, ‘inherited’]. Thedefault if not specified is ‘enabled’.

add_collection_policy(coll_obj)Add a collection policy.

Parameters coll_obj – A collection policy object of type CollectionPolicy

add_stats(stat_obj)Adds a stats family object.

Parameters stat_obj – Statistics family object of type MonitorStats.

add_target(target_obj)Add a target object.

Parameters target_obj – target object of type MonitorTarget

get_parent()

Returns parent object

granularityEnum = ['5min', '15min', '1h', '1d', '1w', '1mo', '1qtr', '1year']

isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC

remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.

Parameters collection – CollectionPolicy to remove.

remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.

Parameters stats_family – Statistics family string.

remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.

Parameters target – target to remove.

retentionEnum = ['none', 'inherited', '5min', '15min', '1h', '1d', '1w', '10d', '1mo', '1qtr', '1year', '2year', '3year']

setAdminState(adminState)Sets the administrative status.

6.1. acitoolkit package 207

acitoolkit Documentation, Release 0.1

Parameters adminState – Administrative status. String to specify whether stats should becollected at the specified granularity. Possible values are [‘enabled’, ‘disabled’, ‘inherited’].The default if not specified is ‘enabled’.

setRetention(retention)

Sets the retention period.

Parameters retention – String specifying how much history to retain the collected statisticsfor. The retention will be for time units of the granularity specified. Possible values are[‘none’, ‘inherited’, ‘5min’, ‘15min’, ‘1h’, ‘1d’, ‘1w’, ‘10d’, ‘1mo’, ‘1qtr’, ‘1year’, ‘2year’,‘3year’].

set_description(description)

Sets the description of the MonitorStats.

Parameters description – String to use as the description

set_name(name)

Sets the name of the MonitorStats.

Parameters name – String to use as the name

class acitoolkit.acitoolkit.CommonEPG(epg_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Base class for EPG and OutsideEPG. Not meant to be instantiated directly

Parameters

• epg_name – String containing the name of this EPG

• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

consume(contract)Make this EPG consume a Contract

208 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters contract – Contract class instance to be consumed by this EPG.

Returns True

consume_cif(contract_interface)Make this EPG consume a ContractInterface

Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.

Returns True

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

does_consume(contract)Check if this EPG consumes a specific Contract

Parameters contract – Instance of Contract class to check if it is consumed by this EPG.

Returns True or False. True if the EPG does consume the Contract.

does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract

Parameters contract_interface –

Returns True or False. True if the EPG does consume the ContractInterface.

does_protect(taboo)Check if this EPG is protected by a specific Taboo.

Parameters taboo – Instance of Taboo class to check if it protects this EPG.

Returns True or False. True if the EPG is protected by the Taboo.

does_provide(contract)Check if this EPG provides a specific Contract.

Parameters contract – Instance of Contract class to check if it is provided by this EPG.

Returns True or False. True if the EPG does provide the Contract.

dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed

Parameters contract – Instance of Contract class to be no longer consumed by this EPG.

Returns True

dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed

Parameters contract_interface –

Returns True

6.1. acitoolkit package 209

acitoolkit Documentation, Release 0.1

dont_protect(taboo)Make this EPG not protected by a Taboo

Parameters taboo – Instance of Taboo class to no longer protect this EPG.

Returns True

dont_provide(contract)Make this EPG not provide a Contract

Parameters contract – Instance of Contract class to be no longer provided by this EPG.

Returns True

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.

• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.

Returns List of CommonEPG instances (or EPG instances if called from EPG class)

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG

210 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted

Returns List of Contract objects that are consumed by the EPG.

get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG

Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted

Returns List of ContractInterface objects that are consumed by the EPG.

get_all_protected(deleted=False)Get all of the Taboos protecting this EPG

Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted

Returns List of Taboo objects that are protecting the EPG.

get_all_provided(deleted=False)Get all of the Contracts provided by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted

Returns List of Contract objects that are provided by the EPG.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

6.1. acitoolkit package 211

acitoolkit Documentation, Release 0.1

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)

Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.

Returns List of Interface objects

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

212 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

6.1. acitoolkit package 213

acitoolkit Documentation, Release 0.1

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

protect(taboo)Make this EPG protected by a Taboo

Parameters taboo – Instance of Taboo class to protect this EPG.

Returns True

provide(contract)Make this EPG provide a Contract

Parameters contract – Instance of Contract class to be provided by this EPG.

Returns True

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

214 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Context(context_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Context : roughly equivalent to fvCtx

Parameters

• context_name – String containing the Context name

• parent – An instance of Tenant class representing the Tenant which contains this Context.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

6.1. acitoolkit package 215

acitoolkit Documentation, Release 0.1

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, tenant=None)Gets all of the Contexts from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant used to limit the Contexts retreived from the APIC

Returns List of Context objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

216 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_allow_all()Returns the allow_all value from this Context. When set, contracts will not be enforced in this context.

Returns True or False.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

6.1. acitoolkit package 217

acitoolkit Documentation, Release 0.1

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of fvCtx object

Returns json dictionary of fvCtx object

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(contexts, title=”)Will create table of context information

Parameters

• title –

• contexts –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

218 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

6.1. acitoolkit package 219

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_allow_all(value=True)Set the allow_all value. When set, contracts will not be enforced in this context.

Parameters value – True or False. Default is True.

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

220 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Contract(contract_name, parent=None)Bases: acitoolkit.acitoolkit.BaseContract

Contract : Class for Contracts

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

6.1. acitoolkit package 221

acitoolkit Documentation, Release 0.1

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, tenant)Gets all of the Contracts from the APIC for a particular tenant.

Parameters

• tenant –

• session –

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_consuming_epgs(deleted=False)Get all of the EPGs consuming this contract

Parameters deleted – Boolean indicating whether to get EPGs that are consuming or that theconsuming relationship was marked as deleted

Returns List of EPG instances

get_all_filter_entries(direction=’bidirectional-only’)Get all of the filter entries contained within this Contract/Taboo

Parameters direction – String containing the type of filter entries to gather Valid values are‘bidirectional-only’, ‘input-only’, ‘output-only’, ‘all’ Default is ‘bidirectional-only’

Returns List of FilterEntry instances

get_all_providing_epgs(deleted=False)Get all of the EPGs providing this contract

Parameters deleted – Boolean indicating whether to get EPGs that are providing or that theproviding relationship was marked as deleted

Returns List of EPG instances

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

222 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

6.1. acitoolkit package 223

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the contract

Returns json dictionary of the contract

get_parent()

Returns Parent of this object.

get_scope()Get the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(contracts, title=”)Will create of each contract

Parameters

• title –

• contracts –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

224 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

6.1. acitoolkit package 225

acitoolkit Documentation, Release 0.1

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

set_scope(scope)Set the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’

Parameters scope – String containing one of the following ‘context’, ‘global’, ‘tenant’, or‘application-profile’

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.ContractInterface(contractif_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

226 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

ContractInterface : roughly equivalent to vzCPIf

Parameters

• contractif_name – String containing the ContractInterface name

• parent – An instance of Tenant class representing the Tenant which contains this Con-tractInterface.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

does_import_contract(contract)Check if this ContractInterface imports a specific Contract.

Parameters contract – Instance of Contract class to check if it is imported by this Contract-Interface.

Returns True or False. True if the ContractInterface does import the Contract.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

6.1. acitoolkit package 227

acitoolkit Documentation, Release 0.1

Returns List of objects

classmethod get(session, tenant=None)Gets all of the ContractInterfaces from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant used to limit the ContractInterfaces retrieved from theAPIC

Returns List of ContractInterface objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

228 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_import_contract(deleted=False)Get the specific Contract that this ContractInterface is importing.

Parameters contract – Instance of Contract class that is imported by this ContractInterface.

Returns Contract class instance or None if not importing a contract

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of vzCPIf object

Returns json dictionary of vzCPIf object

get_parent()

Returns Parent of this object.

6.1. acitoolkit package 229

acitoolkit Documentation, Release 0.1

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_import_contract()Check if the ContractInterface has any imported Contract :return: True or False. True if the ContractInter-face does import a Contract.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

import_contract(contract)Set the Contract that is imported by this ContractInterface

230 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters contract – Instance of Contract

Returns None

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

6.1. acitoolkit package 231

acitoolkit Documentation, Release 0.1

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.ContractSubject(subject_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

ContractSubject : roughly equivalent to vzSubj

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_filter(filter_obj)Add Filter to the ContractSubject, roughly equivalent to vzRsSubjFiltAtt

Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theContractSubject. Multiple Filter can be assigned to a single ContractSubject.

232 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

6.1. acitoolkit package 233

acitoolkit Documentation, Release 0.1

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

234 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_filters(deleted=False)Get all of the filters that are attached to this ContractSubject.

Returns List of Filter objects

static get_from_json(self, data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the ContractSubject or TabooContractSubject

Returns json dictionary of the ContractSubject or TabooContractSubject

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

6.1. acitoolkit package 235

acitoolkit Documentation, Release 0.1

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

236 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

6.1. acitoolkit package 237

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.EPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG

EPG : roughly equivalent to fvAEPg

Initializes the EPG with a name and, optionally, an AppProfile parent. If the parent is specified and is not anAppProfile, an error will occur.

Parameters

• epg_name – String containing the name of the EPG.

• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.

add_bd(bridgedomain)Add BridgeDomain to the EPG, roughly equivalent to fvRsBd

Parameters bridgedomain – Instance of BridgeDomain class. Represents the BridgeDo-main that this EPG will be assigned. An EPG can only be assigned to a single BridgeDo-main.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_infradomain(infradomain)Add Infrastructure Domain to the EPG

Parameters infradomain – Instance of InfraDomain class.

add_static_leaf_binding(leaf_id, encap_type, encap_id, encap_mode=’regular’, immedi-acy=’lazy’, pod=1)

Adds a static leaf binding to this EPG.

Parameters

• leaf_id – Integer containing the node ID (e.g. 101)

• encap_type – String containing the encapsulation type. Valid values are ‘vlan’, ‘vxlan’,or ‘nvgre’.

• encap_id – String containing the encapsulation specific identifier representing the vir-tual L2 network (i.e. for VXLAN, this is the numeric value of the VNID).

238 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• encap_mode – String containing the encapsulation mode. Use

“regular” for normal dot1q tagged traffic, “untagged” for traffic reaching the leaf without any dot1q tags,and “native” for traffic tagged with a 802.1P tag.

Parameters

• immediacy – String containing either “immediate” or “lazy”

• pod – Integer containing the ACI Pod where the supplied leaf is located.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

consume(contract)Make this EPG consume a Contract

Parameters contract – Contract class instance to be consumed by this EPG.

Returns True

consume_cif(contract_interface)Make this EPG consume a ContractInterface

Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.

Returns True

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

does_consume(contract)Check if this EPG consumes a specific Contract

Parameters contract – Instance of Contract class to check if it is consumed by this EPG.

Returns True or False. True if the EPG does consume the Contract.

does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract

Parameters contract_interface –

6.1. acitoolkit package 239

acitoolkit Documentation, Release 0.1

Returns True or False. True if the EPG does consume the ContractInterface.

does_protect(taboo)Check if this EPG is protected by a specific Taboo.

Parameters taboo – Instance of Taboo class to check if it protects this EPG.

Returns True or False. True if the EPG is protected by the Taboo.

does_provide(contract)Check if this EPG provides a specific Contract.

Parameters contract – Instance of Contract class to check if it is provided by this EPG.

Returns True or False. True if the EPG does provide the Contract.

dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed

Parameters contract – Instance of Contract class to be no longer consumed by this EPG.

Returns True

dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed

Parameters contract_interface –

Returns True

dont_protect(taboo)Make this EPG not protected by a Taboo

Parameters taboo – Instance of Taboo class to no longer protect this EPG.

Returns True

dont_provide(contract)Make this EPG not provide a Contract

Parameters contract – Instance of Contract class to be no longer provided by this EPG.

Returns True

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.

Parameters

240 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.

• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.

Returns List of CommonEPG instances (or EPG instances if called from EPG class)

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_consumed(deleted=False, include_any_epg=False)Get all of the Contracts consumed by this EPG

Parameters

• deleted – Boolean indicating whether to get Contracts that are consumed or that theconsumed was marked as deleted

• include_any_epg – Boolean indicating whether to include Contracts that are con-sumed due to inheritance from an AnyEPG within the same Context that this EPG is in.

Returns List of Contract objects that are consumed by the EPG.

get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG

Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted

Returns List of ContractInterface objects that are consumed by the EPG.

get_all_protected(deleted=False)Get all of the Taboos protecting this EPG

Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted

Returns List of Taboo objects that are protecting the EPG.

get_all_provided(deleted=False, include_any_epg=False)Get all of the Contracts provided by this EPG

Parameters

• deleted – Boolean indicating whether to get Contracts that are provided or that theprovided was marked as deleted

• include_any_epg – Boolean indicating whether to include Contracts that are provideddue to inheritance from an AnyEPG within the same Context that this EPG is in.

6.1. acitoolkit package 241

acitoolkit Documentation, Release 0.1

Returns List of Contract objects that are provided by the EPG.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_bd()Return the assigned BridgeDomain. There should only be one item in the returned list.

Returns List of BridgeDomain objects

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

242 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

static get_from_json(self, data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)

Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.

Returns List of Interface objects

get_json()Returns json representation of the EPG

Returns json dictionary of the EPG

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(epgs, title=”)Will create table of EPG information for a given tenant

Parameters

• epgs –

• title –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_bd()Check if a BridgeDomain has been assigned to the EPG

Returns True or False. True if the EPG has been assigned a BridgeDomain.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

6.1. acitoolkit package 243

acitoolkit Documentation, Release 0.1

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_attributed_basedGet whether the EPG is attribute based :return: True if attribute based. False otherwise.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

244 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

protect(taboo)Make this EPG protected by a Taboo

Parameters taboo – Instance of Taboo class to protect this EPG.

Returns True

provide(contract)Make this EPG provide a Contract

Parameters contract – Instance of Contract class to be provided by this EPG.

Returns True

remove_bd()Remove BridgeDomain from the EPG. Note that there should only be one BridgeDomain attached to theEPG.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_base_epg(epg)Sets the Base EPG. Used by Attribute-based EPGs to indicate that the BridgeDomain, NodeAttach, andPathAttach relations should be copied from the base EPG when generating JSON.

Parameters epg – EPG class instance of the Base EPG

Returns None

set_deployment_immediacy(immediacy)Set the deployment immediacy of the EPG

Parameters immediacy – String containing either “immediate” or “lazy”

set_dom_deployment_immediacy(immediacy)Set the deployment immediacy for PhysDomain of the EPG

Parameters immediacy – String containing either “immediate” or “lazy”

6.1. acitoolkit package 245

acitoolkit Documentation, Release 0.1

set_dom_resolution_immediacy(immediacy)Set the resolution immediacy for PhysDomain of the EPG

Parameters immediacy – String containing either “immediate” or “lazy”

set_intra_epg_isolation(isolation)Set the intra-EPG isolation of the EPG

Parameters isolation – String containing either “unenforced” or “enforced”

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.EPGDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

EPGDomain class

Parameters

246 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• name – String containing the name of a source relation to an infrastructure domain profileassociated with application endpoint groups. The domain profile can be either a VMMdomain profile or a physical domain profile.

• parent – An instance of EPG class representing the EPG which contains this DomainProfile.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)Gets all of the Physical Domains from the APIC

Parameters session – the instance of Session used for APIC communication

Returns List of Switch Profile objects

6.1. acitoolkit package 247

acitoolkit Documentation, Release 0.1

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

classmethod get_by_name(session, infra_name)Gets all of the Physical Domains from the APIC

Parameters

• infra_name –

• session – the instance of Session used for APIC communication

Returns List of Switch Profile objects

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

248 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the fvTenant object

Returns A json dictionary of fvTenant

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

6.1. acitoolkit package 249

acitoolkit Documentation, Release 0.1

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

250 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

6.1. acitoolkit package 251

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Endpoint(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

Endpoint class

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

252 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

static get(session, endpoint_name=None)Gets all of the endpoints connected to the fabric from the APIC

Parameters

• endpoint_name –

• session – Session instance used to communicate with the APIC. Assumed to be loggedin

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

classmethod get_all_by_epg(session, tenant_name, app_name, epg_name,with_interface_attachments=True)

Get all of the Endpoints for a specified EPG

Parameters

• session – Session instance used to communicate with the APIC. Assumed to be loggedin

• tenant_name – String containing the tenant name

• app_name – String containing the app name

• epg_name – String containing the epg name

• with_interface_attachments – Boolean indicating whether interfaces should beattached or not. True is default.

Returns List of Endpoint instances

6.1. acitoolkit package 253

acitoolkit Documentation, Release 0.1

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session, with_relations=True)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

254 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(endpoints, title=”)Will create table of taboo information for a given tenant

Parameters

• title –

• endpoints –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

6.1. acitoolkit package 255

acitoolkit Documentation, Release 0.1

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

256 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

6.1. acitoolkit package 257

acitoolkit Documentation, Release 0.1

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.FexInterface(if_type, pod, node, fex, module, port)Bases: acitoolkit.acibaseobject.BaseACIObject

This class describes a physical interface on a FEX device

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

258 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

6.1. acitoolkit package 259

acitoolkit Documentation, Release 0.1

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

260 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

6.1. acitoolkit package 261

acitoolkit Documentation, Release 0.1

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

classmethod is_dn_a_fex_interface(dn)

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

classmethod parse_dn(dn)Parse the pod, node, interface name from the dn :param dn: String containing the interface DN :return:Tuple consisting of if_type, pod, node, fex, module, port

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

262 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Filter(filter_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Filter : roughly equivalent to vzFilter

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

6.1. acitoolkit package 263

acitoolkit Documentation, Release 0.1

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, tenant)Gets all of the Filters for the current tenant from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant used to limit the Filters retreived from the APIC

Returns List of Filter objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

264 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

classmethod get_by_name_and_tenant(session, tenant, filter_name)Returns the Filter Object with name == filter_name and tenant == tenant

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant used to limit the search scope

• filter_name – the searched Filter Object

Returns a single Filter Object

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

6.1. acitoolkit package 265

acitoolkit Documentation, Release 0.1

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

static get_from_json(self, data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the Filter

Returns json dictionary of the Filter

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

266 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

has_entry(applyToFrag, arpOpc, dFromPort, dToPort, etherT, prot, sFromPort, sToPort, tcpRules,stateful, icmpv4T=’not-given’, icmpv6T=’not-given’)

Returns whether or not the Filter has a FilterEntry. All fields are compared except name.

Returns True if the Filter has a matching FilterEntry. False otherwise

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

6.1. acitoolkit package 267

acitoolkit Documentation, Release 0.1

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

268 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.FilterEntry(name, parent, applyToFrag=’0’, arpOpc=’0’,dFromPort=’0’, dToPort=’0’, etherT=’0’,prot=’0’, sFromPort=’0’, sToPort=’0’,tcpRules=’0’, stateful=’0’, icmpv4T=’not-given’,icmpv6T=’not-given’)

Bases: acitoolkit.acibaseobject.BaseACIObject

FilterEntry : roughly equivalent to vzEntry

Parameters

• name – String containing the name of this FilterEntry instance.

• applyToFrag – True or False. True indicates that this FilterEntry should be applied to IPfragments.

• arpOpc – ‘req’ or ‘reply’. Indicates that this FilterEntry should be applied to ARP Requestsor ARP replies.

• dFromPort – String containing the lower L4 destination port number of the L4 destinationport number range.

• dToPort – String containing the upper L4 destination port number of the L4 destinationport number range.

• etherT – String containing the EtherType of the frame to be matched by this FilterEntry.

• prot – String containing the L4 protocol number to be matched by this FilterEntry.

• sFromPort – String containing the lower L4 source port number of the L4 source portnumber range.

• sToPort – String containing the upper L4 source port number of the L4 source port num-ber range.

• tcpRules – Bit mask consisting of the TCP flags to be matched by this FilterEntry.

• stateful – True or False. True indicates that this FilterEntry should monitor the TCPACK bit.

• icmpv4T – String containing the ICMPv4 type.

• icmpv6T – String containing the ICMPv6 type.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

6.1. acitoolkit package 269

acitoolkit Documentation, Release 0.1

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

classmethod create_from_apic_json(data, parent)create from the apic json

Parameters

• data – json dictionary

• parent – parent object

Returns object created from json dictionary

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent, tenant)To get all of acitoolkit style Filter Entries APIC class.

Parameters

• session – the instance of Session used for APIC communication

• parent – Object to assign as the parent to the created objects.

270 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• tenant – Tenant object to assign the created objects.

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

6.1. acitoolkit package 271

acitoolkit Documentation, Release 0.1

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the FilterEntry

Returns json dictionary of the FilterEntry

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(filters, title=”)Will create table of filter information for a given tenant

Parameters

• title –

• filters –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

272 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

6.1. acitoolkit package 273

acitoolkit Documentation, Release 0.1

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

274 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.IPEndpoint(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

Endpoint class

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

6.1. acitoolkit package 275

acitoolkit Documentation, Release 0.1

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

static get(session)Gets all of the IP endpoints connected to the fabric from the APIC

Parameters session – Session instance assumed to be logged into the APIC

Returns List of IPEndpoint instances

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

classmethod get_all_by_epg(session, tenant_name, app_name, epg_name)Get all of the IP Endpoints for the specified EPG

Parameters

• session – Session instance assumed to be logged into the APIC

• tenant_name – String containing the Tenant name that holds the EPG

• app_name – String containing the AppProfile name that holds the EPG

• epg_name – String containing the EPG name

Returns List of IPEndpoint instances

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

276 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

6.1. acitoolkit package 277

acitoolkit Documentation, Release 0.1

get_json()Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

278 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

6.1. acitoolkit package 279

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.InputTerminal(terminal_name, parent=None)Bases: acitoolkit.acitoolkit.BaseTerminal

Input terminal for a graph. It is input with respect to the provider

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

280 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

add_filter(filter_obj)Add Filter to the Terminal, roughly equivalent to vzRsFiltAtt

Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theTerminal. Multiple Filters can be assigned to a single Terminal.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

6.1. acitoolkit package 281

acitoolkit Documentation, Release 0.1

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

282 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_filters()Get all of the filters that are attached to this Terminal.

Returns List of Filter objects

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the Terminal Object

Returns json dictionary of the ContractSubject

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

6.1. acitoolkit package 283

acitoolkit Documentation, Release 0.1

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

284 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

6.1. acitoolkit package 285

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.L2ExtDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

L2ExtDomain class

Parameters

• name – String containing the L2ExtDomain name

• parent – An instance of DomP class representing

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

286 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)Gets all of the L2Ext Domains from the APIC

Parameters session – the instance of Session used for APIC communication

Returns List of L2ExtDomain objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

classmethod get_by_name(session, infra_name)Gets all of the Physical Domainss from the APIC

6.1. acitoolkit package 287

acitoolkit Documentation, Release 0.1

Parameters

• infra_name –

• session – the instance of Session used for APIC communication

Returns List of L2ExtDomain objects

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

288 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the l2extDomP object

Returns A json dictionary of fvTenant

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

6.1. acitoolkit package 289

acitoolkit Documentation, Release 0.1

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

290 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.L2Interface(name, encap_type, encap_id, encap_mode=None)Bases: acitoolkit.acibaseobject.BaseACIObject

The L2Interface class creates an logical L2 interface that can be attached to a physical interface. This interfacedefines the L2 encapsulation i.e. VLAN, VXLAN, or NVGRE

Parameters

• name – String containing the L2Interface instance name

6.1. acitoolkit package 291

acitoolkit Documentation, Release 0.1

• encap_type – String containing the encapsulation type. Valid values are ‘VLAN’,‘VXLAN’, or ‘NVGRE’.

• encap_id – String containing the encapsulation specific identifier representing the virtualL2 network (i.e. for VXLAN, this is the numeric value of the VNID).

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

292 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

6.1. acitoolkit package 293

acitoolkit Documentation, Release 0.1

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

get_encap_id()Get the encap_id of the L2 interface. The value is returned as a string and depends on the encap_type (i.e.VLAN VID, VXLAN VNID, or NVGRE VSID)

Returns String containing encapsulation identifier value.

get_encap_type()Get the encap_type of the L2 interface. Valid values are ‘vlan’, ‘vxlan’, and ‘nvgre’

Returns String containing encap_type value.

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

294 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

6.1. acitoolkit package 295

acitoolkit Documentation, Release 0.1

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

is_interface()Returns whether this instance is considered an interface.

Returns True

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

static parse_encap(encap)Parses the encap_type and encap_id from a json encap string Examples: vlan-515 / vxlan-5000

Parameters encap – String containing the json encap format

Returns encap_type, encap_id

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

296 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.L3ExtDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

L3ExtDomain class

Parameters

• name – String containing the name of the external routed domain

• parent – An instance of DomP class

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

6.1. acitoolkit package 297

acitoolkit Documentation, Release 0.1

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)Gets all of the Physical Domains from the APIC

Parameters session – the instance of Session used for APIC communication

Returns List of L3Ext Domain objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

298 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

classmethod get_by_name(session, infra_name)Gets all of the L3Ext Domains from the APIC

Parameters

• infra_name –

• session – the instance of Session used for APIC communication

Returns List of L3Ext Domain objects

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

6.1. acitoolkit package 299

acitoolkit Documentation, Release 0.1

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the fvTenant object

Returns A json dictionary of fvTenant

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

300 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

6.1. acitoolkit package 301

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

302 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.L3Interface(name)Bases: acitoolkit.acibaseobject.BaseACIObject

Creates an L3 interface that can be attached to an L2 interface. This interface defines the L3 address i.e. IPv4

Parameters name – String containing the name of this L3Interface object.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_context(context)Add context to the EPG

Parameters context – Instance of Context class to assign to this L3Interface.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>

6.1. acitoolkit package 303

acitoolkit Documentation, Release 0.1

is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_addr()Get the L3 address assigned to this interface. The address is set via the L3Interface.set_addr() method

Returns String containing the L3 address in dotted decimal notation.

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

304 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

get_context()Return the assigned context

Returns Instance of Context class that this L3Interface is assigned. If no Context is assigned,None is returned.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

6.1. acitoolkit package 305

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of L3Interface

Returns json dictionary of L3Interface

get_l3if_type()Get the l3if_type of this L3 interface.

Returns L3 interface type. Valid values are ‘sub-interface’, ‘l3-port’, and ‘ext-svi’

get_mtu()Get the MTU of this interface

Returns MTU of the interface

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_context()Check if the context has been assigned

Returns True or False. True if a Context has been assigned to this L3Interface.

306 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

is_interface()Check if this is an interface object.

Returns True

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

6.1. acitoolkit package 307

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_context()Remove context from the EPG

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_addr(addr)Set the L3 address assigned to this interface

Parameters addr – String containing the L3 address in dotted decimal notation.

set_l3if_type(l3if_type)Set the l3if_type of this L3 interface.

Parameters l3if_type – L3 interface type. Valid values are ‘sub-interface’, ‘l3-port’, and‘ext-svi’

set_mtu(mtu)Set the L3 MTU of this interface

Parameters mtu – String containing MTU

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

308 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.LogicalModel(session=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

This is the root class for the logical part of the network. Its corollary is the PhysicalModel class. It is a containerthat can hold all of logical model instances such as Tenants.

From this class, you can populate all of the children classes.

Initialization method that sets up the Fabric. :return:

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

6.1. acitoolkit package 309

acitoolkit Documentation, Release 0.1

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session=None, parent=None)Method to get all of the LogicalModels. It will get one and return it in a list.

Parameters

• session –

• parent –

Returns list of LogicalModel

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

310 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

6.1. acitoolkit package 311

acitoolkit Documentation, Release 0.1

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

312 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

6.1. acitoolkit package 313

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.MonitorPolicy(policyType, name)Bases: acitoolkit.acitoolkit.BaseMonitorClass

This class is the top-most container for a monitoring policy that controls how statistics are gathered. It hasimmediate children, CollectionPolicy objects, that control the default behavior for any network element thatuses this monitoring policy. It may optionally have MonitorTarget objects as children that are used to overridethe default behavior for a particular target class such as Interfaces. There can be further granularity of controlthrough children of the MonitorTarget sub-objects.

314 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Children of the MonitorPolicy will be CollectionPolicy objects that define the collection policy plus optionalMonitorTarget objects that allow finer grained control over specific target APIC objects such as ‘l1PhysIf’ (layer1 physical interface).

The CollectionPolicy children are contained in a dictionary called “collection_policy” that is indexed by thegranulariy of the CollectionPolicy, e.g. ‘5min’, ‘15min’, etc.

The MonitorTarget children are contained in a dictionary called “monitor_target” that is indexed by the name ofthe target object, e.g. ‘l1PhysIf’.

To make a policy take effect for a particular port, for example, you must attach that monitoring policy to theport.

Note that the name of the MonitorPolicy is used to construct the dn of the object in the APIC. As a result, thename cannot be changed. If you read a policy from the APIC, change the name, and write it back, it will createa new policy with the new name and leave the old, original policy, in place with its original name.

A description may be optionally added to the policy.

The MonitorPolicy is initialized with simply a policy type and a name. There are two policy types: ‘fabric’ and‘access’. The ‘fabric’ monitoring policies can be applied to certain MonitorTarget types and ‘access’ monitoringpolicies can be applied to other MonitorTarget types. Initially however, both policies can have l1PhysIf astargets.

A name must be specified because it is used to build the distinguising name (dn) along with the policyType inthe APIC. The dn for “fabric” policies will be /uni/fabric/monfabric-[name] and for “access” policies it will be/uni/infra/moninfra-[name] in the APIC.

Parameters

• policyType – String specifying whether this is a fabric or access policy

• name – String specifying a name for the policy.

add_collection_policy(coll_obj)Add a collection policy.

Parameters coll_obj – A collection policy object of type CollectionPolicy

add_stats(stat_obj)Adds a stats family object.

Parameters stat_obj – Statistics family object of type MonitorStats.

add_target(target_obj)Add a target object.

Parameters target_obj – target object of type MonitorTarget

flat(target=’l1PhysIf’)This method will return a data structure that is a flattened version of the monitor policy. The flattenedversion is one that walks through the heirarchy of the policy and determines the administrative state andretention policy for each granularity of each statistics family. This is done for the target specified, i.e.‘l1PhysIf’

For example, if ‘foo’ is a MonitorPolicy object, then flatPol = foo.flat(‘l1PhysIf’) will return a dictionarythat looks like the following:

adminState = flatPol[‘counter_family’][‘granularity’].adminState retention = flat-Pol[‘counter_family’][‘granularity’].retention

The dictionary will have all of the counter families for all of the granularities and the value returned is theadministrative state and retention value that is the final result of resolving the policy hierarchy.

6.1. acitoolkit package 315

acitoolkit Documentation, Release 0.1

Parameters target – APIC target object. This will default to ‘l1PhysIf’

Returns Dictionary of statistic administrative state and retentions indexed by counter family andgranularity.

classmethod get(session)

get() will get all of the monitor policies from the APIC and return them as a list. It will get bothfabric and access (infra) policies including default policies.

Parameters session – the instance of Session used for APIC communication

Returns List of MonitorPolicy objects

get_parent()

Returns parent object

isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC

remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.

Parameters collection – CollectionPolicy to remove.

remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.

Parameters stats_family – Statistics family string.

remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.

Parameters target – target to remove.

set_description(description)

Sets the description of the MonitorStats.

Parameters description – String to use as the description

set_name(name)

Sets the name of the MonitorStats.

Parameters name – String to use as the name

class acitoolkit.acitoolkit.MonitorStats(parent, statsFamily)Bases: acitoolkit.acitoolkit.BaseMonitorClass

This class is a child of a MonitorTarget object. It is used to specify a scope for applying a monitoring policy thatis more fine grained than the MonitorTarget. Specifically, the MonitorStats object specifies a statistics familysuch as “ingress packets” or “egress bytes”.

The MonitorStats object must always be initialized with a parent object of type MonitorTarget. Itsets the scope of its children collection policies (CollectionPolicy) to a particular statistics family.

316 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

The MonitorStats object contains a dictionary of collection policies called collection_policy. This isa dictionary of children CollectionPolicy objects indexed by their granularity, e.g. ‘5min’, ‘15min’,etc.

Parameters

• parent – Parent object that this monitor stats object should be applied to. This must be anobject of type MonitorTarget.

• statsFamily – String specifying the statistics family that the children collection poli-cies should be applied to. Possible values are:[‘egrBytes’, ‘egrPkts’, ‘egrTotal’, ‘egrDropP-kts’, ‘ingrBytes’, ‘ingrPkts’, ‘ingrTotal’, ‘ingrDropPkts’, ‘ingrUnkBytes’, ‘ingrUnkPkts’,‘ingrStorm’]

add_collection_policy(coll_obj)Add a collection policy.

Parameters coll_obj – A collection policy object of type CollectionPolicy

add_stats(stat_obj)Adds a stats family object.

Parameters stat_obj – Statistics family object of type MonitorStats.

add_target(target_obj)Add a target object.

Parameters target_obj – target object of type MonitorTarget

get_parent()

Returns parent object

isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC

remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.

Parameters collection – CollectionPolicy to remove.

remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.

Parameters stats_family – Statistics family string.

remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.

Parameters target – target to remove.

set_description(description)

Sets the description of the MonitorStats.

Parameters description – String to use as the description

set_name(name)

6.1. acitoolkit package 317

acitoolkit Documentation, Release 0.1

Sets the name of the MonitorStats.

Parameters name – String to use as the name

statsDictionary = {'eqptEgrBytes': 'egrBytes', 'eqptEgrDropPkts': 'egrDropPkts', 'eqptEgrPkts': 'egrPkts', 'eqptEgrTotal': 'egrTotal', 'eqptIngrBytes': 'ingrBytes', 'eqptIngrDropPkts': 'ingrDropPkts', 'eqptIngrPkts': 'ingrPkts', 'eqptIngrStorm': 'ingrStorm', 'eqptIngrTotal': 'ingrTotal', 'eqptIngrUnkBytes': 'ingrUnkBytes', 'eqptIngrUnkPkts': 'ingrUnkPkts'}

statsFamilyEnum = ['egrBytes', 'egrPkts', 'egrTotal', 'egrDropPkts', 'ingrBytes', 'ingrPkts', 'ingrTotal', 'ingrDropPkts', 'ingrUnkBytes', 'ingrUnkPkts', 'ingrStorm']

class acitoolkit.acitoolkit.MonitorTarget(parent, target)Bases: acitoolkit.acitoolkit.BaseMonitorClass

This class is a child of a MonitorPolicy object. It is used to specify a scope for appling a monitoring policy. Anexample scope would be the Interface class, meaning that the monitoring policies specified here will apply to allInterface clas objects (l1PhysIf in the APIC) that use the parent MonitoringPolicy as their monitoring policy.

Children of the MonitorTarget will be CollectionPolicy objects that define the collection policy for the specifiedtarget plus optional MonitorStats objects that allow finer grained control over specific families of statistics suchas ingress packets, ingrPkts.

The CollectionPolicy children are contained in a dictionary called “collection_policy” that is indexed by thegranularity of the CollectionPolicy, e.g. ‘5min’, ‘15min’, etc.

The MonitorStats children are contained in a dictionary called “monitor_stats” that is indexed by the name ofthe statistics family, e.g. ‘ingrBytes’, ‘ingrPkts’, etc.

The MonitorTarget object is initialized with a parent of type MonitorPolicy, and a target string. Ini-tially, this toolkit only supports a target of type ‘l1PhysIf’. The ‘l1PhyIf’ target is a layer 1 physicalinterface or “port”. The MonitorTarget will narrow the scope of the policy specified by the childrenof the MonitorTarget to be only the target class.

Parameters

• parent – Parent object that this monitor target is a child. It must be of type MonitorPolicy

• target – String specifying the target class for the Monitor policy.

add_collection_policy(coll_obj)Add a collection policy.

Parameters coll_obj – A collection policy object of type CollectionPolicy

add_stats(stat_obj)Adds a stats family object.

Parameters stat_obj – Statistics family object of type MonitorStats.

add_target(target_obj)Add a target object.

Parameters target_obj – target object of type MonitorTarget

get_parent()

Returns parent object

isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC

remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.

318 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters collection – CollectionPolicy to remove.

remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.

Parameters stats_family – Statistics family string.

remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.

Parameters target – target to remove.

set_description(description)

Sets the description of the MonitorStats.

Parameters description – String to use as the description

set_name(name)

Sets the name of the MonitorStats.

Parameters name – String to use as the name

class acitoolkit.acitoolkit.NetworkPool(name, encap_type, mode, start_id=None,end_id=None)

Bases: acitoolkit.acibaseobject.BaseACIObject

This class defines a pool of network ids

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

6.1. acitoolkit package 319

acitoolkit Documentation, Release 0.1

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)

Parameters session – apic session

Returns list of network pools

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

320 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

6.1. acitoolkit package 321

acitoolkit Documentation, Release 0.1

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.

Parameters fmt – optional format string, default is ‘json’

Returns URL string

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

322 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

6.1. acitoolkit package 323

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OSPFInterface(name, router=None, area_id=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Creates an OSPF router interface that can be attached to a L3 interface. This interface defines the OSPF area,authentication, etc.

Parameters

• name – String containing the name of this OSPFInterface object.

• area_id – String containing the OSPF area id of this interface. Default is None.

324 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

6.1. acitoolkit package 325

acitoolkit Documentation, Release 0.1

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

326 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of OSPFInterface :returns: json dictionary of OSPFInterface

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

6.1. acitoolkit package 327

acitoolkit Documentation, Release 0.1

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

is_interface()Returns whether this instance is considered an interface. :returns: True

328 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static is_ospf()

Returns True if this interface is an OSPF interface. In the case of OSPFInterface instances, thisis always True.

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_area_type(area_type)Set the area_type for this OSPFInterface

Parameters area_type – AreaType to use for this OSPFInterface

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

6.1. acitoolkit package 329

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OSPFInterfacePolicy(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Represents the interface settings of an OSPF interface

param name: String containing the name of this OSPF interface policy param parent: Instance of the Tenantclass representing the tenant owning this OSPF interface policy

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

330 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

6.1. acitoolkit package 331

acitoolkit Documentation, Release 0.1

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

332 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of OSPFRouter

Returns json dictionary of OSPFIRouter

get_nw_type()Get the nw-type of this interface ospf policy :returns: string of the network type for this policy

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

6.1. acitoolkit package 333

acitoolkit Documentation, Release 0.1

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

334 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_nw_type(network_type)sets the L3 nw_type with some validation

Parameters network_type – string of bcast or p2p

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OSPFRouter(name)Bases: acitoolkit.acibaseobject.BaseACIObject

Represents the global settings of the OSPF Router

Parameters name – String containing the name of this OSPFRouter object.

6.1. acitoolkit package 335

acitoolkit Documentation, Release 0.1

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

336 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

6.1. acitoolkit package 337

acitoolkit Documentation, Release 0.1

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of OSPFRouter

Returns json dictionary of OSPFIRouter

get_node_id():returns string containing the Node ID

get_parent()

Returns Parent of this object.

get_router_id():returns string containing the Router ID

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

338 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

6.1. acitoolkit package 339

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_node_id(node)Sets the router id of the object

Parameters node – String containing the node id

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

set_router_id(rid)Sets the router id of the object

Parameters rid – String containing the router id

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

340 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OutputTerminal(terminal_name, parent=None)Bases: acitoolkit.acitoolkit.BaseTerminal

Input terminal for a graph. It is input with respect to the provider

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_filter(filter_obj)Add Filter to the Terminal, roughly equivalent to vzRsFiltAtt

Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theTerminal. Multiple Filters can be assigned to a single Terminal.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

6.1. acitoolkit package 341

acitoolkit Documentation, Release 0.1

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

342 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

6.1. acitoolkit package 343

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_filters()Get all of the filters that are attached to this Terminal.

Returns List of Filter objects

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the Terminal Object

Returns json dictionary of the ContractSubject

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

344 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

6.1. acitoolkit package 345

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

346 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OutsideEPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG

OutsideEPG class, roughly equivalent to l3ext:InstP

Parameters

• epg_name – String containing the name of this EPG

• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

consume(contract)Make this EPG consume a Contract

Parameters contract – Contract class instance to be consumed by this EPG.

Returns True

consume_cif(contract_interface)Make this EPG consume a ContractInterface

Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.

Returns True

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

6.1. acitoolkit package 347

acitoolkit Documentation, Release 0.1

Parameters item – Object to be detached.

does_consume(contract)Check if this EPG consumes a specific Contract

Parameters contract – Instance of Contract class to check if it is consumed by this EPG.

Returns True or False. True if the EPG does consume the Contract.

does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract

Parameters contract_interface –

Returns True or False. True if the EPG does consume the ContractInterface.

does_protect(taboo)Check if this EPG is protected by a specific Taboo.

Parameters taboo – Instance of Taboo class to check if it protects this EPG.

Returns True or False. True if the EPG is protected by the Taboo.

does_provide(contract)Check if this EPG provides a specific Contract.

Parameters contract – Instance of Contract class to check if it is provided by this EPG.

Returns True or False. True if the EPG does provide the Contract.

dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed

Parameters contract – Instance of Contract class to be no longer consumed by this EPG.

Returns True

dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed

Parameters contract_interface –

Returns True

dont_protect(taboo)Make this EPG not protected by a Taboo

Parameters taboo – Instance of Taboo class to no longer protect this EPG.

Returns True

dont_provide(contract)Make this EPG not provide a Contract

Parameters contract – Instance of Contract class to be no longer provided by this EPG.

Returns True

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>

348 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.

• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.

Returns List of CommonEPG instances (or EPG instances if called from EPG class)

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted

Returns List of Contract objects that are consumed by the EPG.

get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG

Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted

Returns List of ContractInterface objects that are consumed by the EPG.

get_all_protected(deleted=False)Get all of the Taboos protecting this EPG

Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted

Returns List of Taboo objects that are protecting the EPG.

6.1. acitoolkit package 349

acitoolkit Documentation, Release 0.1

get_all_provided(deleted=False)Get all of the Contracts provided by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted

Returns List of Contract objects that are provided by the EPG.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

350 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)

Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.

Returns List of Interface objects

get_json()Returns json representation of the EPG

Returns json dictionary of the EPG

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

6.1. acitoolkit package 351

acitoolkit Documentation, Release 0.1

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

352 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

protect(taboo)Make this EPG protected by a Taboo

Parameters taboo – Instance of Taboo class to protect this EPG.

Returns True

provide(contract)Make this EPG provide a Contract

Parameters contract – Instance of Contract class to be provided by this EPG.

Returns True

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

6.1. acitoolkit package 353

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OutsideL2(l2out_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Represents the L2Out for external connectivity

Parameters

• l2out_name – String containing the name of this OutsideL2

• parent – Instance of the Tenant class representing the tenant owning this OutsideL2.

add_bd(bd)Add BridgeDomain to the EPG

Parameters bd – Instance of BridgeDomain class to assign to this OutsideL2.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_l2extdom(extdom)Set the L2ExternalDomain for this BD

Parameters extdom –

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

354 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

6.1. acitoolkit package 355

acitoolkit Documentation, Release 0.1

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

356 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of OutsideL2

Returns json dictionary of OutsideL2

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_bd()Check if the BridgeDomain has been assigned

Returns True or False. True if a BridgeDomain has been assigned to this L2Interface.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

6.1. acitoolkit package 357

acitoolkit Documentation, Release 0.1

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_l2extdom()

Returns Boolean indicating presence of L2 External Domain Attachment

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

358 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_bd()Remove the BridgeDomain from the EPG

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

6.1. acitoolkit package 359

acitoolkit Documentation, Release 0.1

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OutsideL2EPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG

OutsideL2EPG class, roughly equivalent to l2ext:InstP

Parameters

• epg_name – String containing the name of this EPG

• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

consume(contract)Make this EPG consume a Contract

Parameters contract – Contract class instance to be consumed by this EPG.

Returns True

consume_cif(contract_interface)Make this EPG consume a ContractInterface

Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.

Returns True

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

360 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

does_consume(contract)Check if this EPG consumes a specific Contract

Parameters contract – Instance of Contract class to check if it is consumed by this EPG.

Returns True or False. True if the EPG does consume the Contract.

does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract

Parameters contract_interface –

Returns True or False. True if the EPG does consume the ContractInterface.

does_protect(taboo)Check if this EPG is protected by a specific Taboo.

Parameters taboo – Instance of Taboo class to check if it protects this EPG.

Returns True or False. True if the EPG is protected by the Taboo.

does_provide(contract)Check if this EPG provides a specific Contract.

Parameters contract – Instance of Contract class to check if it is provided by this EPG.

Returns True or False. True if the EPG does provide the Contract.

dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed

Parameters contract – Instance of Contract class to be no longer consumed by this EPG.

Returns True

dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed

Parameters contract_interface –

Returns True

dont_protect(taboo)Make this EPG not protected by a Taboo

Parameters taboo – Instance of Taboo class to no longer protect this EPG.

Returns True

dont_provide(contract)Make this EPG not provide a Contract

Parameters contract – Instance of Contract class to be no longer provided by this EPG.

Returns True

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

6.1. acitoolkit package 361

acitoolkit Documentation, Release 0.1

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.

Parameters

• session – the instance of Session used for APIC communication

• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.

• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.

Returns List of CommonEPG instances (or EPG instances if called from EPG class)

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted

Returns List of Contract objects that are consumed by the EPG.

get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG

Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted

Returns List of ContractInterface objects that are consumed by the EPG.

get_all_protected(deleted=False)Get all of the Taboos protecting this EPG

Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted

Returns List of Taboo objects that are protecting the EPG.

362 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_all_provided(deleted=False)Get all of the Contracts provided by this EPG

Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted

Returns List of Contract objects that are provided by the EPG.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

6.1. acitoolkit package 363

acitoolkit Documentation, Release 0.1

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)

Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.

Returns List of Interface objects

get_json()Returns json representation of the EPG

Returns json dictionary of the EPG

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

364 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

6.1. acitoolkit package 365

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

protect(taboo)Make this EPG protected by a Taboo

Parameters taboo – Instance of Taboo class to protect this EPG.

Returns True

provide(contract)Make this EPG provide a Contract

Parameters contract – Instance of Contract class to be provided by this EPG.

Returns True

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

366 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OutsideL3(l3out_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Represents the L3Out for external connectivity

Parameters

• l3out_name – String containing the name of this OutsideL3

• parent – Instance of the Tenant class representing the tenant owning this OutsideL3.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_context(context)Add context to the EPG

Parameters context – Instance of Context class to assign to this OutsideL3.

add_l3extdom(extdom)Set the L3ExternalDomain for this BD

Parameters extdom –

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

6.1. acitoolkit package 367

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

368 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

get_context()Return the assigned context

Returns Instance of Context class that this OutsideL3 is assigned. If no Context is assigned,None is returned.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

6.1. acitoolkit package 369

acitoolkit Documentation, Release 0.1

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of OutsideL3

Returns json dictionary of OutsideL3

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_context()Check if the context has been assigned

370 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True or False. True if a Context has been assigned to this L3Interface.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_l3extdom()

Returns Boolean indicating presence of L3 External Domain Attachment

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

6.1. acitoolkit package 371

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_context()Remove the context from the EPG

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

372 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.OutsideNetwork(name, parent, address=None)Bases: acitoolkit.acitoolkit.BaseSubnet

OutsideNetwork class, roughly equivalent to l3extSubnet in the APIC model

Parameters

• name – String containing the OutsideNetwork name

• parent – An instance of OutsideEPG class

• address – String containing the IP address of the OutsideNetwork. e.g. ‘1.2.3.0/24’

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

addrSubnet address

Returns String containing the subnet default gateway IP address and mask e.g. “1.2.3.4/24”

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

6.1. acitoolkit package 373

acitoolkit Documentation, Release 0.1

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_addr()Get the subnet address

Returns The subnet address as a string in the form of <ipaddr>/<mask>

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

374 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

6.1. acitoolkit package 375

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the OutsideNetwork object.

Returns json dictionary of OutsideNetwork

get_parent()

Returns Parent of this object.

get_scope()Get the subnet scope

Returns The subnet scope as a string

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

376 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

ipIP address of the subnet in the form of Address/mask e.g. 10.1.1.1/16

Returns String containing the IP address

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

6.1. acitoolkit package 377

acitoolkit Documentation, Release 0.1

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_addr(addr)Set the subnet address

Parameters addr – The subnet default gateway address as a string in the form of<ipaddr>/<mask>

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

set_scope(scope)Set the subnet scope

Parameters scope – String containing the scope

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

378 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.PhysDomain(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

Physical Network domain

Parameters

• name – String containing the PhysDomain name

• parent – An instance of DomP class representing

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_network(network_pool)associate network pool to the physical domain :param network_pool: vlan or vxlan pool

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>

6.1. acitoolkit package 379

acitoolkit Documentation, Release 0.1

is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)Gets all of the Physical Domains from the APIC

Parameters session – the instance of Session used for APIC communication

Returns List of PhysDomain objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

classmethod get_by_name(session, infra_name)Gets all of the Physical Domains from the APIC

Parameters

• infra_name –

• session – the instance of Session used for APIC communication

Returns List of PhysDomain objects

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

380 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the physDomP object

6.1. acitoolkit package 381

acitoolkit Documentation, Release 0.1

Returns A json dictionary of physical domain

get_network()Get the network pool for this domain

Returns Instance of NetworkPool class associated to this Domain.

get_network_from_apic(session)get network from apic :param session:

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.

Parameters fmt – optional format string, default is ‘json’

Returns URL string

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_network()Check if the network pool has been set for this physical domain

382 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True or False. True if this network pool is assigned to the domain.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

6.1. acitoolkit package 383

acitoolkit Documentation, Release 0.1

• deep – True or False. Default is False.

push_to_apic(session)Push the appropriate configuration to the APIC for this Phys Domain. All of the subobject configurationwill also be pushed.

Parameters session – the instance of Session used for APIC communication

Returns Requests Response code

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_network()removes the associated vlan or vxlan from the physical domain :return:

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

384 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.PortChannel(name)Bases: acitoolkit.acibaseobject.BaseInterface

This class defines a port channel interface.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(interface)Attach an interface to this PortChannel

Parameters interface –

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

classmethod create_from_dn(dn)Create a PortChannel instance based on the specified DN

Parameters dn – String containing the DN

Returns Instance of PortChannel class

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(interface)Detach an interface from this PortChannel

Parameters interface –

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

6.1. acitoolkit package 385

acitoolkit Documentation, Release 0.1

Parameters search_object – ACI object to search

Returns List of objects

static get(session)Gets all of the port channel interfaces from the APIC

Parameters session –

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

386 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()

Returns json representation of the PortChannel

Returns json dictionary of the PortChannel

get_parent()

Returns Parent of this object.

get_port_channel_selector_json(port_name)Get the JSON for the Port Channel selector

Parameters port_name – String containing the port name

Returns Dictonary containing the JSON for the Port Channel selector

get_port_selector_json()Returns the port selector.

6.1. acitoolkit package 387

acitoolkit Documentation, Release 0.1

Returns

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

static get_url(fmt=’json’)Get the URLs used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.

Parameters fmt – optional format string, default is ‘json’

Returns URL string

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

388 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_dn_vpc(dn)Check if the DN is a VPC

Parameters dn – String containing the DN

Returns True if the the DN is a VPC. False otherwise.

is_interface()Returns True since a PortChannel is an interface

is_vpc()Returns True if the PortChannel is a VPC

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

6.1. acitoolkit package 389

acitoolkit Documentation, Release 0.1

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.SearchBases: acitoolkit.acibaseobject.BaseACIObject

This is an empty class used to create a search object for use with the “find” method.

Attaching attributes to this class and then invoking find will return all objects with matching attributes in theobject hierarchy at and below where the find is invoked.

add_child(obj)Add a child to the children list.

390 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

6.1. acitoolkit package 391

acitoolkit Documentation, Release 0.1

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

392 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

6.1. acitoolkit package 393

acitoolkit Documentation, Release 0.1

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

394 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

6.1. acitoolkit package 395

acitoolkit Documentation, Release 0.1

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Subnet(subnet_name, parent=None)Bases: acitoolkit.acitoolkit.BaseSubnet

Subnet : roughly equivalent to fvSubnet

Parameters

• subnet_name – String containing the name of this Subnet instance.

• parent – An instance of BridgeDomain class representing the BridgeDomain which con-tains this Subnet.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

addrSubnet address

Returns String containing the subnet default gateway IP address and mask e.g. “1.2.3.4/24”

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

396 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, bridgedomain, tenant)Gets all of the Subnets from the APIC for a particular tenant and bridgedomain.

Parameters

• session – the instance of Session used for APIC communication

• bridgedomain – the instance of BridgeDomain used to limit the Subnet instances re-treived from the APIC

• tenant – the instance of Tenant used to limit the Subnet instances retreived from theAPIC

Returns List of Subnet objects

get_addr()Get the subnet address

Returns The subnet address as a string in the form of <ipaddr>/<mask>

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

6.1. acitoolkit package 397

acitoolkit Documentation, Release 0.1

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

398 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the subnet

Returns json dictionary of subnet

get_parent()

Returns Parent of this object.

get_scope()Get the subnet scope

Returns The subnet scope as a string

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

6.1. acitoolkit package 399

acitoolkit Documentation, Release 0.1

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

ipIP address of the subnet in the form of Address/mask e.g. 10.1.1.1/16

Returns String containing the IP address

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

400 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_addr(addr)Set the subnet address

Parameters addr – The subnet default gateway address as a string in the form of<ipaddr>/<mask>

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

set_scope(scope)Set the subnet scope

Parameters scope – The scope of the subnet. Use “public” when the subnet

needs to be advertised externally, “private” when no external routing for the subnet is required (onlyinternal), and “shared” when a route for the subnet needs to be leaked to a different VRF within the fabric.Note that “public” and “private” are mutually exclusive, but “shared” can be appended to any of them(“e.g. set_scope(“public,shared”)).

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

6.1. acitoolkit package 401

acitoolkit Documentation, Release 0.1

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Taboo(contract_name, parent=None)Bases: acitoolkit.acitoolkit.BaseContract

Taboo : Class for Taboos

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

402 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_filter_entries(direction=’bidirectional-only’)Get all of the filter entries contained within this Contract/Taboo

Parameters direction – String containing the type of filter entries to gather Valid values are‘bidirectional-only’, ‘input-only’, ‘output-only’, ‘all’ Default is ‘bidirectional-only’

Returns List of FilterEntry instances

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

6.1. acitoolkit package 403

acitoolkit Documentation, Release 0.1

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

404 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the contract

Returns json dictionary of the contract

get_parent()

Returns Parent of this object.

get_scope()Get the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(taboos, title=”)Will create table of taboo information for a given tenant

Parameters

• title –

• taboos –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

6.1. acitoolkit package 405

acitoolkit Documentation, Release 0.1

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

406 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

set_scope(scope)Set the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’

Parameters scope – String containing one of the following ‘context’, ‘global’, ‘tenant’, or‘application-profile’

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

6.1. acitoolkit package 407

acitoolkit Documentation, Release 0.1

Returns List of subscribed classes

class acitoolkit.acitoolkit.Tag(name=None, parent=None)Bases: acitoolkit.acibaseobject._Tag

Tag class.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None, tenant=None)Gets all of the Tags from the APIC.

Parameters

• session – the instance of Session used for APIC communication

408 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• parent – Instance of the possible Tag parent classes used to limit the Tags retreived fromthe APIC.

• tenant – Instance of Tenant class used to limit the Tags retreived from the APIC.

Returns List of Tag instances

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

6.1. acitoolkit package 409

acitoolkit Documentation, Release 0.1

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

410 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

6.1. acitoolkit package 411

acitoolkit Documentation, Release 0.1

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

412 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.Tenant(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject

The Tenant class is used to represent the tenants within the acitoolkit object model. In the APIC model, thisclass is roughly equivalent to the fvTenant class.

Parameters

• name – String containing the Tenant name

• parent – None or An instance of Fabric class representing the Pod which contains thisTenant.

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

6.1. acitoolkit package 413

acitoolkit Documentation, Release 0.1

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

classmethod exists(session, tenant)Check if a tenant exists on the APIC.

Parameters

• session – the instance of Session used for APIC communication

• tenant – the instance of Tenant to check if exists on the APIC

Returns True or False

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session, parent=None)Gets all of the tenants from the APIC.

Parameters

• parent – Parent object of the Tenant

• session – the instance of Session used for APIC communication

Returns a list of Tenant objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

414 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(session, names=(), limit_to=(), subtree=’full’, config_only=False, par-ent=None)

Get the Tenant objects and all of the children objects.

Parameters

• session – the instance of Session used for APIC communication

• names – list of strings containing the tenant names. If no list is given, all tenants will becollected. It should be noted that if relations extend across tenants, the relation will onlybe populated if the tenants are included in this list.

• limit_to – list of strings containing the APIC classes to limit the collection to i.e.[‘fvTenant’, ‘fvBD’]. If no list is given, all classes will be collected.

• subtree – String containing the rsp-subtree option. Default is ‘full’.

• config_only – Boolean containing whether to collect only configurable parameters

• parent – The parent instance to assign to the tenant objects. If None, a Fabric instancewill be created.

Returns Requests Response code

6.1. acitoolkit package 415

acitoolkit Documentation, Release 0.1

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the fvTenant object

Returns A json dictionary of fvTenant

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(tenants, title=”)Will create table of switch context information

Parameters

• title –

• tenants –

get_tags()Get the tags assigned to this object.

Returns List of tag instances

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.

Parameters fmt – optional format string, default is ‘json’

416 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns URL string

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

6.1. acitoolkit package 417

acitoolkit Documentation, Release 0.1

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

push_to_apic(session)Push the appropriate configuration to the APIC for this Tenant. All of the subobject configuration will alsobe pushed.

Parameters session – the instance of Session used for APIC communication

Returns Requests Response code

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

418 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.TunnelInterface(if_type, pod, node, tunnel)Bases: object

This class describes a tunnel interface

class acitoolkit.acitoolkit.VMM(name, ipaddr, credentials, vswitch_info, network_pool)Bases: acitoolkit.acibaseobject.BaseACIObject

This class defines an instance of connectivity to a Virtual Machine Manager (such as VMware vCenter)

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

6.1. acitoolkit package 419

acitoolkit Documentation, Release 0.1

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

420 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

6.1. acitoolkit package 421

acitoolkit Documentation, Release 0.1

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.

Parameters fmt – optional format string, default is ‘json’

Returns URL string

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

422 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

6.1. acitoolkit package 423

acitoolkit Documentation, Release 0.1

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

424 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.VMMCredentials(name, uid, pwd)Bases: acitoolkit.acibaseobject.BaseACIObject

This class defines the credentials used to login to a Virtual Machine Manager

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

6.1. acitoolkit package 425

acitoolkit Documentation, Release 0.1

classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)

Generic classmethod to get all of a particular APIC class.

Parameters

• session – the instance of Session used for APIC communication

• toolkit_class – acitoolkit class to return

• apic_class – String containing class name from the APIC object model.

• parent – Object to assign as the parent to the created objects.

• tenant – Tenant object to assign the created objects.

• query_target_type – type of the query either self,children,subtree

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

426 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Get the JSON representation of this class in the actual APIC Object Model.

Parameters

• obj_class – Object Class Name within the APIC model.

• attributes – Additional attributes that should be set in the JSON.

• children – Children objects to traverse as well.

• get_children – Indicates whether the children objects should be included.

Returns JSON dictionary to be pushed to the APIC.

6.1. acitoolkit package 427

acitoolkit Documentation, Release 0.1

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

428 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

6.1. acitoolkit package 429

acitoolkit Documentation, Release 0.1

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

class acitoolkit.acitoolkit.VMMvSwitchInfo(vendor, container_name, vswitch_name)Bases: object

This class contains the information necessary for creating the vSwitch on the Virtual Machine Manager

class acitoolkit.acitoolkit.VmmDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject

VMMDomain class

Parameters

• name – String containing the VMM Domain name

• parent – An instance of DomP class

add_child(obj)Add a child to the children list.

Parameters obj – Child object to add to the children list of the called object.

add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.

Parameters tag – string containing the tag to assign to this object or an instance of _Tag

430 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

attach(item)Attach the object to the other object.

Parameters item – Object to be attached.

static check_session(session)This will check that the session is of type Session and raise exception if it not

Parameters session – the session to check

Returns

delete_tag(tag)Mark a particular tag as being deleted from this object.

Parameters tag – string containing the tag to delete from this object or an instance of _Tag

detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.

Parameters item – Object to be detached.

find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.

The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.

If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.

Parameters search_object – ACI object to search

Returns List of objects

classmethod get(session)Gets all of the VMM Domains from the APIC

Parameters session – the instance of Session used for APIC communication

Returns List of VMM Domain objects

get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.

Parameters

• attached_class – The class that is the subject of the search.

• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

6.1. acitoolkit package 431

acitoolkit Documentation, Release 0.1

get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.

Note that attributes that start with _ (underbar) will NOT be included unless explicitly named

This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.

This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.

Parameters name – optional name of attribute to return

Returns dictionary of attributes and their values

classmethod get_by_name(session, infra_name)Gets all of the VMM Domains from the APIC

Parameters

• infra_name –

• session – the instance of Session used for APIC communication

Returns List of VMM Domain objects

get_child(child_type, child_name)Gets a specific immediate child of this object

Parameters

• child_type – Class of the child to return

• child_name – Name of the child to return

Returns The specific instance of child_type or None if not found

get_children(only_class=None)Get a list of the immediate child objects of this object.

Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.

Returns List of children objects.

classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)

Gets all instances of this class from the APIC and gets all of the children as well.

Parameters

• full_data –

• working_data –

• parent –

• limit_to –

• subtree –

• config_only –

classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes

432 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None

Parameters attributes –

Returns String containing dn or None

classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.

Parameters session – the instance of Session used for APIC communication

get_from_json(data, parent=None)returns a Tenant object from a json

get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.

Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.

Returns List of interfaces that this object has relations and the status matches.

get_json()Returns json representation of the vmmDomP object

Returns A json dictionary of vmmDomP

get_parent()

Returns Parent of this object.

get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.

static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object

Parameters

• aci_object –

• title – String containing the table title

Returns list of Table objects

get_tags()Get the tags assigned to this object.

Returns List of tag instances

has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.

has_child(obj)Check for existence of a child in the children list

6.1. acitoolkit package 433

acitoolkit Documentation, Release 0.1

Parameters obj – Child object that is the subject of the check.

Returns True or False, True indicates that it does indeed have the obj object as a child.

has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.

classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

Returns True or False. True if there are events pending.

has_parent()returns True if this object has a parent

Returns bool

has_tag(tag)Checks whether this object has a particular tag assigned.

Parameters tag – string containing the tag name or an instance of _Tag

Returns True or False. True indicates the object has this tag assigned.

has_tags()Checks whether this object has any tags assigned at all.

Returns True or False. True indicates the object has at least one tag assigned.

info()Node information summary.

Returns Formatted string that has a summary of all of the info gathered about the node.

infoList()Node information. Returns a list of (attr, value) tuples.

Returns list of [(attr, value),]

is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.

is_deleted()Check if the object has been deleted.

Returns True or False, True indicates the object has been deleted.

is_detached(item)Indicates whether the item is detached from this object.

Returns True or False, True indicates the item is detached.

static is_interface()Indicates whether this object is considered an Interface. The default is False.

Returns False

mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.

classmethod mask_class_from_graphs()Mask (hide) this class from graph creation

434 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

Returns False indicating that this class should not be masked.

populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.

If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.

Parameters

• include_concrete – True or False. Default is False

• deep – True or False. Default is False.

remove_child(obj)Remove a child from the children list

Parameters obj – Child object that is to be removed.

remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.

Parameters tag – string containing the tag to remove from this object or an instance of _Tag

set_parent(parent_obj)Set the parent object

Parameters parent_obj – Instance of the parent object

Returns None

classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.

Parameters

• session – the instance of Session used for APIC communication

• extension – Optional string that can be used to extend the URL

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.

Parameters session – the instance of Session used for APIC communication

update_db(session, subscribed_classes, deep=False)

6.1. acitoolkit package 435

acitoolkit Documentation, Release 0.1

Parameters

• session – Session class instance representing the connection to the APIC

• subscribed_classes – List of subscribed classes

• deep – Boolean indicating whether to go deep or not. Default is False

Returns List of subscribed classes

acitoolkit.acitoolkit.build_object_dictionary(objs)Will build a dictionary indexed by object class that contains all the objects of that class

Parameters objs –

Returns

6.1.1.5 acitoolkitlib module

Collection of utility classes to make getting credentials and configuration easier.

class acitoolkit.acitoolkitlib.AcitoolkitGraphBuilderBases: object

Class to build class hierarchy diagrams for the ACI toolkit Physical and Logical Models

static build_graph_from_parent(root_parent_name)Create a graph starting from the root class name

Parameters root_parent_name – String containing the class name to use as the root of theclass hierarchy graph

Returns None

build_graphs()Build the graphs starting with the various parent class names

class acitoolkit.acitoolkitlib.Credentials(qualifier=’apic’, description=”)Bases: object

Used to get the APIC and MySQL login credentials from the command line (–help gives usage).

The login credentials are taken in the following order

• Command line arguments

• Environment variables

• File named credentials.py

• From an interactive prompt

These are done in a per credential basis so it is possible to specify only some of the arguments. For instance,the username and URL can be specified in credentials.py but the password can be taken from the user throughthe interactive prompt. Another example is using the command line argument to override the URL specified incredentials.py to temporarily connect to a different APIC.

add_argument(*args, **kwargs)Pass through function to allow the underlying parser to be extended.

add_argument_group(*args, **kwargs)Pass through function to allow the underlying parser to be extended.

add_mutually_exclusive_group(*args, **kwargs)Pass through function to allow the underlying parser to be extended.

436 Chapter 6. API Reference

acitoolkit Documentation, Release 0.1

get()Get the arguments and verify them

print_help(*args, **kwargs)Pass through function to allow the underlying parser to be extended.

verify()Verify that the arguments have been passed in some way. If not, ask the user through interactive prompt.

6.1.1.6 aciFaults module

This module deals with Fault objects.

class acitoolkit.aciFaults.FaultsBases: acitoolkit.acibaseobject.BaseACIObject

A class for Fault objects

classmethod get_fault(session, extension=”)Not implemented for this class. Use get_faults() instead

Parameters

• session – Not used

• extension – Not used

Raises AttributeError

classmethod get_faults(session, fault_filter=None, tenant_name=None)Gets the fault that is pending for this class. Faults are returned in the form of objects.

Parameters

• session – the instance of Session used for APIC communication

• fault_filter – fault_filter is used to filter the attributes of a fault. given in a hashformat with domain, types, severity

• tenant_name – tenant_name is a string

get_faults_by_filter(fault_filter=None)filters a fault obj based on the keys given in fault_filter

Parameters fault_filter – fault_filter is used to filter the attributes of a fault. given in ahash format with domain, types, severity

Returns fault obj if it satisfies fault_filter

classmethod has_faults(session, fault_filter=None)Check for pending events from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• fault_filter – fault_filter is used to filter the attributes of a fault. given in a hashformat with domain, types, severity

Returns True or False. True if there are events pending.

is_deleted()Not supported

Raises AttributeError

6.1. acitoolkit package 437

acitoolkit Documentation, Release 0.1

mark_as_deleted()Not supported

Raises AttributeError

classmethod subscribe_faults(session, fault_filter=None, only_new=False)Subscribe to faults from the APIC that pertain to instances of this class.

Parameters

• session – the instance of Session used for APIC communication

• fault_filter – fault_filter is used to filter the attributes of a fault. given in a hashformat with domain, types, severity

• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.

classmethod validate_fault_filter(fault_filter=None)validates the fault_filter with the schema

Parameters fault_filter – fault_filter is used to filter the attributes of a fault. given in ahash format with domain, types, severity

438 Chapter 6. API Reference

CHAPTER 7

Applications

7.1 ACI Endpoint Tracker

The ACI Endpoint Tracker application tracks all of the attachment, detachment, and movement of Endpoints on theACI fabric. It stores all of this activity in a database that allows administrators to examine and query the data to gaindeep visibility into what is happening in the network. The database also provides a foundation for visualization andquerying tools.

Some sample questions that can be answered with the ACI Endpoint Tracker:

• What are all of the current Endpoints on the network ?

• Where is a specific Endpoint ?

• What was connected to the network last Thursday between 3:30 and 4:00 ?

• What are all of the Endpoints belonging to a given Tenant ?

• What Endpoints are on this subnet ?

• What is the history of a given Endpoint (i.e. movement, etc.)?

7.1.1 Installation

7.1.1.1 acitoolkit

This application uses the acitoolkit. The installation steps for the acitoolkit can be found at http://datacenter.github.io/acitoolkit/.

7.1.1.2 MySQL database

The ACI Endpoint Tracker uses the open source MySQL database to store the Endpoint data. MySQL is installedseparately and the installation steps are dependent on the platform. It is recommended that MySQL be installed in thesame machine as the ACI Endpoint Tracker.

439

acitoolkit Documentation, Release 0.1

MySQL installation instructions for most platforms can be found here: MySQL installation instructions.

For Ubuntu, the installation instructions can be found here: Ubuntu MySQL installation instructions.

Once the above package is installed, you should verify that the MySQL database is running. In Linux and Mac OS X,this can be done by entering the following command:

mysqladmin -u root -p status

If the database is running, the output should be similar to below:

Uptime: 358118 Threads: 3 Questions: 5767 Slow queries: 0Opens: 109 Flush tables: 1 Open tables: 61 Queries per secondavg: 0.016

If the database is not running, the output should be similar to below:

mysqladmin: connect to server at 'localhost' failed

7.1.1.3 MySQL Connector

In order for the ACI Endpoint Tracker to communicate with the MySQL database, the MySQL Connector/Python mustbe installed. This is available for most platforms at http://dev.mysql.com/downloads/connector/python/.

7.1.1.4 Flask

Flask is required for the optional GUI frontend. The installation steps for Flask can be found at http://flask.pocoo.org/.

7.1.2 Usage

The ACI Endpoint Tracker serves as a conduit between the APIC and the MySQL database. It requires login credentialsto both, namely the username, password, and IP address or URL.

The user can choose any one of 3 ways to specify the login credentials. If multiple ways are used, they are taken inthe following priority order:

1. Command Line Arguments

The login credentials can be passed directly as command line arguments. The command is shown below:

python aci-endpoint-tracker.py [[ -u | --url] <apicurl>][[ -l | --login ] <apicusername>] [[ -p | --password ]<apicpassword>] [[ -i | --mysqlip ] <mysqlip> [[ -a| --mysqladminlogin ] <mysqladminlogin] [[ -s | --mysqlpassword ]<mysqlpassword> ]

where the parameters are as follows:

440 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

apicurl The URL used to communicate with the APIC.

apicusername The username used to login to the APIC.

apicpassword The password used to login to the APIC.

mysqlip The IP address of the MySQL DB host.

mysqladminlogin The username used to login to the MySQL DB

mysqlpassword The password used to login to the MySQL DB

An example would be the following:

python aci-endpoint-tracker.py -u https://172.35.200.100 -ladmin -p apicpassword -i 127.0.0.1 -a root -s mysqlpassword

2. Environment Variables

The login credentials can be pulled from environment variables in operating systems such as Mac OS X andvarious Linux distributions.

The environmental variables are as follows:

APIC_URLAPIC_LOGINAPIC_PASSWORDAPIC_MYSQLIPAPIC_MYSQLLOGINAPIC_MYSQLPASSWORD

These variables should be set to the correct value. Setting the environment variable is OS dependent. Forexample, in Mac OS X, environment variables can be set in your ~/.bash_profile as follows:

export APIC_URL=https://172.35.200.100export APIC_LOGIN=adminexport APIC_PASSWORD=apicpasswordexport APIC_MYSQLIP=127.0.0.1export APIC_MYSQLLOGIN=rootexport APIC_MYSQLPASSWORD=mysqlpassword

If environmental variables are used to specify the credentials, then the following command will execute the ACIEndpoint Tracker.:

python aci-endpoint-tracker.py

3. Importing a credentials.py file

Alternatively, the login credentials can be pulled from a python file named credentials.py. In this file, itis assumed that the following variables will be set appropriately for your environment.:

URL = 'https://172.35.200.100'LOGIN = 'admin'PASSWORD = 'apicpassword'MYSQLIP = '127.0.0.1'

(continues on next page)

7.1. ACI Endpoint Tracker 441

acitoolkit Documentation, Release 0.1

(continued from previous page)

MYSQLLOGIN = 'root'MYSQLPASSWORD = 'mysqlpassword'

If a credentials.py file is used to specify the credentials, then the following command will execute the ACIEndpoint Tracker.:

python aci-endpoint-tracker.py

7.1.3 What’s it doing ?

Once the ACI Endpoint Tracker is running, it will connect to the APIC and pull all of the existing static and dynamicendpoints that are currently connected to the fabric along with the relevant associated information such as:

• Tenant, Application Profile, and EPG membership

• Interface to which it is connected

• Timestamp of when it connected to the fabric

This data is then inserted into a database called acitoolkit that the ACI Endpoint Tracker will create. Within thedatabase, it creates a single table called endpoints where all of the endpoint information will be inserted.

Once all of this information is collected, the ACI Endpoint Tracker subscribes through the web socket interface to anyupdates to both static and dynamic endpoints. When these updates such as endpoint attachment, detachment, or moveoccurs, the database will be immediately updated with the live data.

Note that updates to the database will only occur when the ACI Endpoint Tracker is running.

7.1.4 Direct Database Query

Once the data is in the database, the MySQL client can be used to query the data directly. Using this method, the fullpower of SQL can be used to provide deep insight into the network endpoint behavior.

To connect to the MySQL database, you can execute the following command locally on the same host where thedatabase is running.:

mysql -u <mysqllogin> -p

The client will then prompt for the MySQL database password. After successfully entering the password, the MySQLprompt will come up as shown in the screenshot below:

$ mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 145Server version: 5.6.22 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

442 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

At this point, the acitoolkit database should be available. The available databases can be shown by entering thefollowing command at the prompt.:

mysql> show databases;

A sample output is shown below.:

+--------------------+| Database |+--------------------+| information_schema || acitoolkit || mysql || performance_schema || test |+--------------------+5 rows in set (0.00 sec)

To switch to the acitoolkit database, enter the following command.:

mysql> use acitoolkit;

The endpoint data is stored in a single table called endpoints. You can then display all of the endpoint data by thefollowing query (shown with a snippet of the output).:

mysql> select * from endpoints;+-------------------+---------------+--------------+--------------+-------------+-----→˓-----------+---------------------+---------------------+| mac | ip | tenant | app | epg |→˓interface | timestart | timestop |+-------------------+---------------+--------------+--------------+-------------+-----→˓-----------+---------------------+---------------------+| 74:26:AC:76:80:5B | 192.168.1.133 | Tenant1 | Application1 | WEB |→˓VPC1 | 2014-12-09 19:08:27 | 0000-00-00 00:00:00 || 00:50:56:94:D8:73 | 0.0.0.0 | Tenant1 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-13 23:48:15 | 0000-00-00 00:00:00 || 00:50:56:94:07:7E | 0.0.0.0 | Tenant1 | Application1 | WEB | eth→˓1/103/1/11 | 2014-12-19 00:58:16 | 0000-00-00 00:00:00 || 00:50:56:94:9A:1C | 192.168.0.5 | Tenant5 | Application1 | USER | eth→˓1/102/1/12 | 2015-01-05 15:29:13 | 0000-00-00 00:00:00 || 00:50:56:94:F3:CD | 0.0.0.0 | Tenant5 | Application1 | USER | eth→˓1/102/1/12 | 2015-01-13 23:49:33 | 0000-00-00 00:00:00 || 00:50:56:94:17:5E | 0.0.0.0 | Tenant5 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-10 01:55:40 | 0000-00-00 00:00:00 || 00:50:56:94:A9:B5 | 10.0.0.5 | Tenant5 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-05 15:29:13 | 0000-00-00 00:00:00 || 00:50:56:94:93:6F | 0.0.0.0 | Tenant5 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-10 01:55:40 | 0000-00-00 00:00:00 |

At this point, we can query the data using the SQL SELECT command. If you haven’t used SQL before, you maywant to spend some time learning some of the basic syntax related to the SQL SELECT command as it forms the basisfor all queries in the database.

Here are just a few example queries that are possible.

Various fields can be used to filter the results.

Show all of the endpoint information for a specific tenant:

7.1. ACI Endpoint Tracker 443

acitoolkit Documentation, Release 0.1

mysql> select * from endpoints where tenant='cisco';

Show all of the endpoints for a given EPG within a certain tenant:

mysql> select * from endpoints where tenant='cisco' and epg='WEB';

Show all of the endpoints that were on the network on 2014-12-25:

mysql> select * from endpoints where timestart <= '2014-12-25'and timestop > '2014-12-24';

Show all of the history (attach, detach, move) for a particular endpoint:

mysql> select * from endpoints where ip='10.1.1.1' andtenant='cisco';

Output can be limited to certain fields

Show the current location of a given endpoint:

mysql> select interface from endpoints where ip='10.1.1.1' andtenant='cisco';

Unique fields can be shown using the distinct keyword.

Show the EPGs with active endpoints on 2014-12-25:

mysql> select distinct tenant,app,epg from endpoints wheretimestart <= '2014-12-25' and timestop > '2014-12-24';

Counts can be provided for filtered data using the count keyword.

Show the number of Endpoints active on 2014-12-25:

mysql> select count(*) from endpoints where timestart <='2014-12-25' and timestop > '2014-12-24';

Wildcarding can be used with the % wildcard.

Show the endpoints belonging to a given subnet:

mysql> select * from endpoints where ip like '10.10.%';

7.1.5 GUI FrontEnd

In addition to the very powerful MySQL interface, there is also a GUI frontend that allows quick simple searching onthe database using a web browser. The GUI frontend leverages the DataTables package.

7.1.5.1 Demo

The usage of this GUI should be fairly intuitive and a live demo with fake endpoint data can be found at the link below.Please give it a try, specifically the Search function to get a feel for how it works.

ACI Endpoint Tracker GUI Demo

444 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

For instance, to see all of the endpoints for tenant ‘cisco’ simply type cisco in the Search box. To narrow the searchfurther to the endpoints owned by tenant ‘cisco’ on leaf 102, type ‘cisco 102’ in the Search box. Also, each columncan be sorted by clicking on the arrows found in each of the column headers.

7.1.5.2 Usage

To use the GUI front end locally on your own database, you simply need to execute theaci-endpoint-tracker-gui.py file assuming you have installed the Flask package as mentioned inthe Installation section.

The GUI front end deals exclusively with the MySQL database and does not communicate with the APIC, so it onlyrequires the MySQL credentials. These can be passed in the same manner as described for the ACI Endpoint Trackercredentials.

python aci-endpoint-tracker-gui.py -i 127.0.0.1 -a root -smysqlpassword

It should be noted that while the GUI does not communicate with the APIC, as long as the Endpoint Tracker is running,the database will contain the live data for the APIC.

7.1.6 License

Copyright 2015 Cisco Systems, Inc.

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except incompliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is dis-tributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, eitherexpress or implied. See the License for the specific language governing permissions and limitations underthe License.

7.2 ACI Lint

acilint is a static analysis tool for Cisco ACI fabrics. Some example use cases for such a tool include the following:

• Configuration Analysis

In this purpose, it can be used to examine the APIC configuration and determine whether any of theconfiguration could be possibly problematic or suspicious. It examines the configuration much likestatic code analysis tools such as the original lint checker did for software development in C or pylintfor Python. It generates Warnings and Errors that give indications that the configuration should beexamined. Often these Warnings are not problems, but incomplete or stale configuration that is notcurrently in use.

• Compliance, Governance, and Auditing

In this purpose, it can be used to determine whether the configuration meets higher level goveranceand compliance rules. These rules are similar to lint style rules but exploit the APIC ability to provideadditional classification tags on objects. Tags provide a simple and flexible way to classify any APICobject in one or more user-defined groups.

7.2. ACI Lint 445

acitoolkit Documentation, Release 0.1

For example, EPGs can be tagged as secure and non-secure. A compliance rule can be defined thatspecifies that secure EPGs cannot consume a contract from a non-secure EPG. Upon violation of thisrule, a warning or an error can be raised.

7.2.1 Usage

acilint can be run against the current running APIC configuration or a previously saved set of configuration snap-shot files.

7.2.1.1 Running using Live APIC configuration

When acilint collects the configuration directly from the APIC, it needs the proper login credentials. These canbe passed via the command line arguments, a credentials.py file, environment variables, or if none of these, theuser will be directly queried.

The following example shows how to run using the command line arguments for credentials:

python acilint.py -l admin -p password -u https://1.2.3.4

where admin is the APIC login username, password is the APIC password, and https://1.2.3.4 is the URLused to login to the APIC.

7.2.1.2 Running using Configuration Snapshot files

The snapback application provides the ability to save snapshots of the APIC configuration into JSON files.acilint can use these snapshot files as input rather than connecting to a live APIC.

This can be useful in debugging as it lets the user compare the acilint output of the live APIC to the outputof a previous configuration snapshot. acilint can also be used to perform some “What If” scenarios. A singleconfiguration snapshot actually consists of multiple snapshot files. These configuration files are then fed as input intoacilint. These snapshot files fed into acilint can actually be from different configuration snapshot versionscreating an entirely new configuration that may have never existed on the APIC, but we can run acilint against thisconfiguration to check for possible errors and warnings that would occur if this configuration were to be deployed.

The following example shows how to run with configuration snapahot files as input:

python acilint.py --snapshotfiles infra.json tenant-cisco.json fabric.json

7.2.1.3 Customization

By default, all checks will be performed. However, like many static code analysis tools, acilint is customizableand only the desired warnings and errors can be issued.

To customize acilint, generate a configuration file with the following command:

python acilint.py --generateconfigfile acilint.cfg

or even shorter:

python acilint.py -g acilint.cfg

446 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

where acilint.cfg is the filename you wish to create.

The generated configuration file will contain a list of all of the current checks being performed.

An example config file is shown below:

# acilint configuration file# Remove or comment out any warnings or errors that you no longer wish to seeerror_001error_002warning_001warning_002warning_003

To remove checks, either:

• Delete the line containing the check, or

• Comment it out by prepending a # in front of the check

7.2.2 Errors and Warnings

The following list of Errors and Warnings are performed by acilint. Since acilint is written on top ofthe acitoolkit package, the checks are limited to the functionality exposed by that package. However as theacitoolkit expands, so shall acilint.

7.2.2.1 Warnings

warning_001 Tenant has no app profilewarning_002 Tenant has no contextwarning_003 AppProfile has no EPGswarning_004 Context has no BridgeDomainwarning_005 BridgeDomain has no EPGs assignedwarning_006 Contract is not provided at allwarning_007 Contract is not consumed at allwarning_008 EPG providing contracts but in a Context with no enforcementwarning_010 EPG providing contract but consuming EPG is in a different contextwarning_011 Contract contains bi-directional TCP Subjectswarning_012 Contract contains bi-directional UDP Subjectswarning_013 Contract has no Subjectswarning_014 Contract has Subjects with no Filters

7.2.2.2 Errors

error_001 BridgeDomain has no contexterror_002 EPG has no BD assignederror_005 Duplicate or overlapping subnets in Contexterror_006 ExternalNetwork Subnets duplicated in fabric

7.2. ACI Lint 447

acitoolkit Documentation, Release 0.1

7.2.2.3 Critical

critical_001 Compliance check example

critical_001 is a compliance check example that will perform the following:

• Ensure that all of the EPGs in the system have been classified as secure and nonsecure using the tagging capa-bility provided by the acitoolkit.

• Ensures that none of the secure EPGs can communicate with the nonsecure EPGs by checking that no contractprovided by secure EPGs is consumed by nonsecure EPGs.

7.2.3 Developing Checks

Additional checks can be added through new methods on the Checker class. If the method begins with warning_or error_ or critical_, it will automatically be executed as part of the acilint execution. The new checks willalso automatically inherit the customization capability through the usage of the configuration file. Some familiaritywith the acitoolkit object model is necessary to write additional checks.

7.3 Cableplan Application

The Cable Plan module allows the programmer to easily import existing cable plans from XML files, import thecurrently running cable plan from an APIC controller, export previously imported cable plans to a file, and comparecable plans.

More advanced users can use the Cable Plan to easily build a cable plan XML file, query a cable plan, and modify acable plan.

7.3.1 Using the Cable Plan

7.3.1.1 Invoking

The Cable Plan module is imported from cableplan.py which can be found in the acitoolkit/applications/cableplan directory.

It can be incorporated directly into a python script, or it can be used from the command-line.

>>>from cableplan import CABLEPLAN

When you want to create a cable plan from the current running topology of an ACI fabric, simply do the following:

>>>cp = CABLEPLAN.get(session)

Where session is an ACI session object generated using the acitoolkit. cp will be the cable plan object.

You can export that cable plan by opening a file and calling the export() method as follows:

>>>cpFile = open('cableplan1.xml','w')>>>cp.export(cpFile)>>>cpFile.close()

The cable plan will be written to the cableplan1.xml file.

Reading an existing cable plan xml file is equally easy.:

448 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

>>>fileName = 'cableplan2.xml'>>>cp2 = CABLEPLAN.get(fileName)

Note that you don’t have to explicitly open or close the file. The get(fileName) method will take care of that foryou.

Comparing cable plans is one of the more interesting cabablilities of the Cable Plan module and is very easy to dousing the “difference” methods. When generating the difference between two cable plans, the module will return thoseitems that exist in the first cable plan, but not in the second.

For example, assume that in the above example, the second cable plan read from the cableplan2.xml file doesnot have switch “Spine3” and the first cable plan does have it. The following example will print all of the switches inthe first cable plan and not in the second.:

>>>missing_switches = cp1.difference_switch(cp2)>>>for switch in missing_switches :>>> print switch.get_name()Spine3

Similiarly, the following example will print all of the missing links:

>>>missing_links = cp1.difference_link(cp2)>>>for link in missing_links :>>> print link.get_name()

To understand all of the differences between two cable plans it is necessary to compare them in both directions

>>>missing_links = cp1.difference_link(cp2)>>>extra_links = cp2.difference_link(cp1)>>>print('The following links are missing from the second cable plan')>>>for link in missing_links :>>> print link.get_name()>>>print('The following links are extra links in the second cable plan')>>>for link in extra_links:>>> print link.get_name()

If multiple ports are specified in the link object with minPorts and maxPorts attributes (see Cable Plan XML Syntaxbelow), it is possible that a link object in the first cable plan is only partially met by the link objects in the second cableplan. The remaining_need() method of the CpLink object.:

>>>missing_links = cp1.difference_link(cp2)>>>for link in missing_links :>>> print('Link',link.get_name(), 'still needs',link.remaining_need(),'links to→˓satisfy its mimimum requirement')

There is a similar method,

>>>missing_links = cp1.difference_link(cp2) >>>for link in missing_links : >>>print(‘Link’,link.get_name(), ‘still needs’,link.remaining_need(),’links to satisfy its mimimum re-quirement’)

There is a similar method,

>>>missing_links = cp1.difference_link(cp2) >>>for link in missing_links : >>>print(‘Link’,link.get_name(), ‘still needs’,link.remaining_need(),’links to satisfy its mimimum re-quirement’)

There is a similar method, remaining_avail() that returns the number of physical links the link object couldmatch.

7.3. Cableplan Application 449

acitoolkit Documentation, Release 0.1

The remaining_need() and remaining_avail() values are reset when the difference_link()methodis invoked.

It might be necessary to compare cable plans when the names of the switches are different, but the topologies arethe same. This can easily done by simply changing the names of the switches that are different and then doing thecomparisons.:

>>>switch = cp1.get_switch('Spine1')>>>switch.set_name('Spine1_new_name')

This will automatically also fix-up all of the link names that are connected to the switch whose name is being changed.Note that this is also an easy way to change the name of a switch in a cable plan file. Simply read it in, change theswitch name, and export it out. The following example will read in cable_plan2.xml, change the name of ‘Leaf1’to ‘Leaf35’, and then export to the same file the modified cable plan:

>>>fileName = 'cable_plan2.xml'>>>cp2 = CABLEPLAN.get(fileName)>>>switch = cp2.get_switch('Leaf1')>>>switch.set_name('Leaf35')>>>f = open(fileName,'w')>>>cp2.export(f)>>>f.close()

7.3.2 Cable Plan from the Command Line

Invoking the cable plan application from the command line is very simple.

From the command prompt do the following:: > python cableplan.py -h

This will then return usage instructions that explain each of the command line options.

There are two primary functions that can be invoked from the command-line: ‘export’ and ‘compare’.

The ‘export’ function, selected with the ‘-e’ option, will create a cable plan by reading the state of the ACI fabric fromthe APIC controller. This cable plan will be either displayed on the monitor or, if a filename is specified, will be placedin a file. It will be in nicely formatted XML.

The ‘compare’ function will compare two cable plans. One of those must be in a file that is specified at the commandline and the second one can come either directly from the APIC or from a second file. If only the ‘-c1 file_name’option is used, then the content of file_name is compared to the actual running configuration of the ACI fabric.:

> python cableplan.py -c1 netwrk1.xml

If you want to compare two files, then both the ‘-c1 file_name1’ and ‘-c2 file_name2’ options must be used.:

> python cableplan.py -c1 netwrk1.xml -c2 netwrk2.xml

This comparison will list all of the links in the first cable plan that are not in the second and vice-versa.

7.3.3 Cable Plan XML Syntax

The cable plan XML looks like the following

<?xml version="1.0" encoding="UTF-8"?><?created by cable.py?><CISCO_NETWORK_TYPES version="None" xmlns="http://www.cisco.com/cableplan/Schema2"→˓xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="nxos-→˓cable-plan-schema.xsd"> (continues on next page)

450 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

(continued from previous page)

<DATA_CENTER networkLocation="None" idFormat="hostname"><CHASSIS_INFO sourceChassis="spine1" type="n9k">

<LINK_INFO sourcePort="eth2/35" destChassis="leaf1" destPort="eth1/50"/><LINK_INFO sourcePort="eth2/3" destChassis="leaf3" destPort="eth1/50"/><LINK_INFO sourcePort="eth2/2" destChassis="leaf2" destPort="eth1/50"/>

</CHASSIS_INFO><CHASSIS_INFO sourceChassis="spine2" type="n9k">

<LINK_INFO sourcePort="eth2/1" destChassis="leaf1" destPort="eth1/49"/><LINK_INFO sourcePort="eth2/3" destChassis="leaf3" destPort="eth1/49"/><LINK_INFO sourcePort="eth2/2" destChassis="leaf2" destPort="eth1/49"/>

</CHASSIS_INFO></DATA_CENTER>

</CISCO_NETWORK_TYPES>

The CHASSIS_INFO tag normally identifies the spine switches and the leaf switches are contained in theLINK_INFO. When the XML is read in, both leaf and spine switch objects will be created and the get_switch()and get_link() methods can be used to access them.

The LINK_INFO syntax also allows more flexible and loose specifications of the links. If the sourcePort ordestPort attributes are left out, then any port on that corresponding switch can be used. The sourcePort anddestPort attributes can also take port ranges, and lists as shown here:

<LINK_INFO sourcePort="eth1/1-eth1/15, eth1/20" destChassis ="leaf3"/>

In addition, you can add minPorts and maxPorts attributes to specify the minimum number of ports or maximumnumber of ports when multiple are defined.:

<LINK_INFO sourcePort="eth2/3, eth3/4 - eth3/10",destChassis="leaf2", destPort="eth1/1 - eth1/8", minPorts=3,maxPorts=5>

If minPorts is omitted, the default will be 1. If maxPorts is omitted, the default will be unlimited.

When comparing two cable plans using the difference_link() method, if the minimum number of links in thefirst cable plan can be met with second cable plan, then the difference will show no difference. Note that it is possiblethat requirements of several links specified in one cable plan may be met by one or more links in the other. Basically,the difference is calculated such that the minimum requirements of the first cable plan are met without exceeding themaximum capacity of the second cable plan.

7.3.4 Cable Plan API Reference

class cableplan.CpPort(port_set)This class holds the information for a link’s port. Since the port can be a single port, a list or a range, putting itin a class allows more flexible operations on it.

list()

name()

remove_available_port(port)

reset_accounting()

class cableplan.CpLink(source_chassis, dest_chassis, source_port=None, dest_port=None,min_ports=None, max_ports=None)

7.3. Cableplan Application 451

acitoolkit Documentation, Release 0.1

export(chassis, level)Will return string of XML describing the LINK_INFO. It will use ‘chassis’ to determine which is thesource chassis so that it will be omitted from the XML and the other chassis will become the destination.‘level’ is the indentation level.

Parameters

• chassis – Chassis that is the parent of the LINK_INFO xml

• level – Indentation level

Returns str

get_name()

has_port_in_common(link)Returns True if link has any ports that match self. It will compare all ports included expanded lists of portsets.

Parameters link – link to check to see if matches, or overlaps, with self

Returns Boolean

is_connected(switch1, switch2=None)Returns True if switch1 is one of the switch endpoints of the link and switch2 is unspecified otherwise iswill return True if both switch1 and switch2 are switch endpoints of the link. If switch1 is the same asswitch2, it will return False.

Parameters

• switch1 – first switch to check if it an end-point of the link

• switch2 – optional second switch to check if it an end-point of the link

Returns True if switch1 (and optional switch2) is an end-point of the link

static match_links(link1, link2)This will match-up link1 and link2 and increment the reference count in each link for each of the matchesthat happen. It will do this until the minimum number of links has been reached for link1. It will returnthe number of matches that occurred.

Parameters

• link1 – first link of type CpLink that is part of the matching

• link2 – second link of type CpLink that is part of the matching

Returns number of matches that occured.

order()Calculates the order of the link defined by the maximum number of physical links this link can represent

Returns int

remaining_avail()returns the remaining number of physical links available to match against The parameters used to cal-culate this value are reset by the reset_accounting() method which is typically invoked when invoking adifference_link() method on the CABLEPLAN parent object.

Returns int

remaining_need()returns the remaining number of physical links needed to match against self to satisfy requirements. Theparameters used to calculate this value are reset by the reset_accounting() method which is typically in-voked when invoking a difference_link() method on the CABLEPLAN parent object.

452 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

Returns int

reset_accounting()Resets account on the source and dest ports as well as reference count

class cableplan.CpSwitch(name, chassis_type=None, spine=False, parent=None)Bases: object

class holding a switch

export(level)

get_links()returns a list of CP_LINKS from the parent CABLEPLAN that are connected to self.

Returns list of CP_LINKS

get_name()Gets the name of the chassis.

Returns str

get_type()Gets the chassis type. Examples of chassis types are ‘n7k’ or ‘n9k’

Returns str

is_spine()Checks if the ‘spine’ flag is set.

Returns True if the spine flag is set, otherwise False

merge(new_switch)Merges the content of new_switch with self. If self has variables set, then they will not be changed. If theyhave not been set, then they will be assigned the value from new_switch.

Parameters new_switch – switch object to merge with self

set_name(name)Sets the switch name. This will over-ride any preexisting name. Note that this new name will now becomepart of the link name for all the links attached to this switch.

Parameters name – name string to set in the switch

set_parent(parent)Sets the parent of the switch. Parent must be of type CABLEPLAN. If a parent CABLEPLAN was alreadyset and it is differnt from parent, then an error is raised.

Parameters parent – parent object of type CABLEPLAN

class cableplan.CABLEPLAN(version=None)

add_link(new_link)Will add a link to the CABLEPLAN. Duplicates will not be allow, but overlapping will be.

Parameters new_link – Link to be added of type CpLink

Returns None

add_switch(new_switch)This will new_switch to the CABLEPLAN. If the switch already exists, it will merge the new_switch withthe existing one. It will also set the parent of the switch to be the CABLEPLAN. It will return the finalswitch, i.e. new_switch if no merge occurred or the newly merged switch if a merge did occur.

Parameters new_switch – switch to be added of type CpSwitch

7.3. Cableplan Application 453

acitoolkit Documentation, Release 0.1

Returns CpSwitch

delete_link(link)

delete_switch(old_switch)

difference_link(cp)returns a list of links that are in self, but not in cp.

Parameters cp – cable plan of type CABLEPLAN

Returns list of CpLink

difference_switch(cp)Will return a list of switches that are in self, but not in cp.

Parameters cp – cable plan

Returns list of CpSwitch

exists_link(link)

exists_switch(switch)

export(out_file=None, level=0)Will generate XML text of the entire CABLEPLAN and return it as a string. If out_file is specified, itwill write the XML to that file. out_file should be opened for writing before calling this method. ‘level’specifies the amount of indentation to start with.

export_data_center(level=0)Will generate the XML of the CABLEPLAN with DATA_CENTER as the root. This will then be returneda string. ‘level’ specifies the indentation level to start with.

Parameters level – optional indention level, integer

Returns string that is the DATA_CENTER xml

classmethod get(source)This will get input a cable plan from ‘source’. If source is a string, it will get the cable plan from XML ina file whose name is source. If it is a Session, it will read the corresponding APIC to get the cable plan.

Parameters source – filename of type string or Session of type Session

Returns CABLEPLAN

get_links(switch1=None, switch2=None)Returns a list of links. If switch is unspecified, it will return all links. If switch is specified, it will returnall of the links that are connected to switch. If both switch1 and swithc2 are specified, it will return alllinks that are connected between the two switches.

Parameters

• switch1 – optional first switch of type CpSwitch

• switch2 – optional second switch of type CpSwitch

Returns list of links of type CpLink

get_spines()Will return list of switches that are spines

Returns list of CpSwitch

get_switch(switch_name=None)

reset_accounting()clears the refernce count on each link :rtype : None

454 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

sorted_links(switch1, switch2)returns a sorted list of links between switch1 and switch2. They are sorted by specificity from most specificto least specific. The specificity is determined by which list of ports is the minimum between source anddestination and which is the minimum across links. :rtype : list :param switch1: :param switch2:

7.4 Snapback : Configuration Snapshot and Rollback

SummaryGeneral OverviewInstallationWeb based Usage

CredentialsSchedule SnapshotsSnapshotsVersion DiffsAboutFeedback

Command Line UsageVersion Repository

7.4.1 Summary

Snapback is a Configuration Snapshot and Rollback tool for ACI fabrics. Specifically, the tool allows an administratorto perform the following tasks:

• Live snapshots of the running ACI fabric configuration

• One-time and recurring snapshots, both immediate and scheduled

• Versioned storage of the configuration

• Full viewing of any snapshot configuration including the differences between snapshots

• Rollback to any previous configuration snapshot; Full or Partial

• Web based or Command Line administration

7.4.2 General Overview

Snapback provides the ability to generate configuration snapshots of the APIC configuration.

7.4.2.1 Snapshot Files

The configuration snapshots consist of text files containing the system configuration at the time of the snapshot storedin JSON format. Each snapshot is stored in a versioned repository along with a version identifier. The version identifieris automatically generated by concatenating the date with the time of the snapshot.

A single configuration snapshot contains a number of files. All of the configuration under the managed object calledfabric is placed in the file fabric.json. Similarly, all of the configuration under the managed object called infrais placed in the file infra.json. Each tenant has their own configuration file with the file name formatted astenant-<tenantname>.json where <tenantname> is replaced with the actual name of the tenant.

7.4. Snapback : Configuration Snapshot and Rollback 455

acitoolkit Documentation, Release 0.1

Each snapshot will only record the differences between the previous snapshot and the current APIC configurationat the time of the snapshot. This ensures that the minimal amount of state is stored on disk to represent the actualconfiguration. This also means that even though a snapshot make occur, it may not create a new version of everyconfiguration file. In fact, if there have been no changes at all since the previous snapshot, no new files will be created.

7.4.2.2 Rollback

Rollback is when a previous configuration snapshot is used to replace the current APIC configuration. This can be doneon the granularity of a snapshot file. This means that a single tenant can be moved back to a previous configurationwhile the other tenants keep their current configuration state. This is often referred to as partial rollback. When all ofthe configuration files for a particular version are used to replace the current APIC configuration, this is referred to asa full rollback.

7.4.3 Installation

Snapback is part of the acitoolkit and will be installed at the same time. The installation details can be found here.

7.4.4 Web based Usage

Snapback can be run as a web application. Running Snapback as a web application is done by switching to thesnapback directory and running the application:

cd acitoolkit/applications/snapbackpython snapback.py

By default, snapback will run locally on the loopback address. Accessing the tool is done by running a web browserlocally and pointing to the following URL:

http://127.0.0.1:5000/

Upon pointing the web browser to the Snapback URL, the Snapback welcome screen along with the navigation menuon the left hand side.

7.4.4.1 Credentials

Entering the APIC credentials is necessary for Snapback to be able to perform configuration snapshots. Selecting theCredentials in the navigation menu will bring up the Credentials screen where the APIC credentials can be entered.

456 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

A number of fields allow the entry of the APIC credentials. These fields are:

APIC IP Address: This field is the IP address used to communicate with the APIC.

Use secure connection: When selected, this checkbox indicates that the APIC communication uses httpsinstead of http.

APIC Username: The username used when logging in to the APIC.

APIC Password: The password used when logging in to the APIC.

The credentials are stored with Snapback by selecting the Save button. Once the credentials are entered, they willbe saved as part of the user session on that browser. This means that another window or tab using Snapback can beopened on the same machine without having to reenter the credentials.

When entered, the current credentials are shown as in the screenshot below. Note that for security purposes, thepassword is not displayed. Clicking the Reset button will cause Snapback to forget the current credentials, but willnot impact the APIC in any way.

7.4.4.2 Schedule Snapshots

Once the credentials have been entered, configuration snapshots can be taken. Snapshots are configured by setting asnapshot schedule. By selecting the Schedule Snapshots in the navigation menu, the following screen will appear.

7.4. Snapback : Configuration Snapshot and Rollback 457

acitoolkit Documentation, Release 0.1

The snapshot can be a one time occurrence or recurring. The Start date and Start time fields will be used as the dateand time that will be used to create the snapshot. If the time has passed, the snapshot will be triggered immediately.

Selecting the radio button labeled One time will schedule a single configuration snapshot.

Selecting the radio button labeled Every will schedule a recurring configuration snapshot starting at the specified Startdate and Start time. Immediately below the Every radio button is the field to enter the time interval for the snapshot.This is entered as a numeric value within the text box and selecting the granularity of the interval from the drop downbox. The granularity options are minutes, hours, or days.

Selecting the Schedule Snapshot button will cause the schedule to be submitted to Snapback. Below the ScheduleSnapshot button, the last successful snapshot time is shown.

Once a configuration snapshot has been scheduled, the option to cancel the current snapshot schedule is shown as inthe screenshot below.

7.4.4.3 Snapshots

Selecting Snapshots in the navigation window will bring up the following screen.

458 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

The existing snapshots will be shown in a table format. Each row in the table represents a snapshot file. The columnsconsist of the following:

Version: This is the timestamp of the configuration file. The format is YY-MM-DD_HH:MM:SS

Filename: The name of the configuration file as described in section Snapshot Files.

Changes: The Changes column gives the number of lines that have changed in this version as comparedto the previous version. The changes are represented as additions/deletions. The additions are shown ingreen text and the deletions are shown in red text.

Latest: This column shows whether the configuration file is the most recent version of configuration. Acheckmark indicates that this file is the latest. Since a configuration snapshot file is only created whenthere are changes in the configuration, the latest version of different configuration filenames may bedifferent.

Each of the columns can be sorted by clicking on the column title.

The Search text box can be used to filter the table rows shown to the text entered into the box. The filter matching willbe performed on the data contained within the Version and Filename columns.

Filters can be added by selecting the Add Filter pulldown menu in the top right corner of the screen. Filters can beadded for the Version, Filename, and/or Latest columns.

Each row has a checkbox as the leftmost column. Rows can be selected individually or all rows can be selected bychecking the checkbox in the column title row. Rows that have been selected can be subject to the actions containedwithin the With Selected pulldown menu. The following options are available within as With Selected options:

• Rollback Selecting Rollback will cause the selected configuration snapshot files to be pushed to the APICoverwriting the current existing configuration. Since this can be a disruptive operation, a confirmationdialog box will appear to confirm the user’s intent.

• View Selecting View will open the selected files in a separate screen showing the entire JSON configuration.

7.4. Snapback : Configuration Snapshot and Rollback 459

acitoolkit Documentation, Release 0.1

• View Diffs Selecting View Diffs requires 2 and only 2 files to be selected. In this view, the 2 files are opened ina new screen and shown side-by-side. The 2 files should be of the same file name but different versions.

File differences are shown highlighted in green for additions, red for deletions, and yellow for small intra-line changes. The left-most column allows quick navigation between the changes by clicking on the letterwithin the column. The letter f moves to the first change. The letter n moves to the next change. The lastchange will be marked with the letter t which when clicked will move to the first change in the file.

460 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

7.4.4.4 Version Diffs

Selecting Version Diffs in the navigation will show a visual representation of the differences between the variousversions of configuration snapshots.

Within this view, the number of lines changed per version are shown as a stacked bar chart with Additions marked asgreen and Deletions marked as red.

Since many configuration snapshots may not contain any changes, there is a button that can be selected to hide or showthe versions that have no changes.

7.4. Snapback : Configuration Snapshot and Rollback 461

acitoolkit Documentation, Release 0.1

Since there may be huge change differences between different configuration versions, it may be useful to narrow thegraph to a specific date range. For instance, the very first snapshot will likely have a large number of additions whichmay visually hide the subsequent changes due to scale. By adjusting the date range, the initial snapshot can be removedfrom the bar chart.

Hovering the mouse pointer over the bar will show the actual value.

The value is the cumulative changes from all snapshot files within that version. Clicking on the bar will open up theSnapshots view with only the files from that configuration version. In the Snapshots view, the changes are shown onper configuration file.

7.4.4.5 About

This is a simple summary screen with a link to the documentation and a description of the software license.

7.4.4.6 Feedback

This screen provides the ability for the users to submit comments, suggestions, feature requests, and bug reportsdirectly to the authors of the tool.

7.4.5 Command Line Usage

Snapback can also be run as a command line application. This is done by switching to the snapback directory andrunning the application:

cd acitoolkit/applications/snapback

The application is run with options provided in the command line. The help for this command is shown by:

python aciconfigdb.py --help

The output for this command is shown below:

usage: aciconfigdb.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][-s | -ls | -lc [VERSION [VERSION ...]] | --rollbackVERSION [CONFIGFILE ...] | --show VERSION CONFIGFILE]

Configuration Snapshot and Rollback tool for APIC.

optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC IP address.-l LOGIN, --login LOGIN

APIC login ID.-p PASSWORD, --password PASSWORD

APIC login password.-s, --snapshot Take a snapshot of the APIC configuration-ls, --list-snapshots

List all of the available snapshots-lc [VERSION [VERSION ...]], --list-configfiles [VERSION [VERSION ...]]

List all of the available configuration files.--rollback VERSION [CONFIGFILE ...]

Rollback the configuration to the specified version.Optionally only for certain configuration files.

(continues on next page)

462 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

(continued from previous page)

--show VERSION CONFIGFILEShow the contents of a particular configfile from aparticular snapshot version.

The APIC credentials are provided with the –url, –login, and –password options.

An immediate snapshot is taken by passing the –snapshot option.

All of the snapshot versions can be shown by passing the –list-snapshots option.

All of the snapshot files can be listed by passing the –list-configfiles option. If the optional version is passed, the filesfrom those versions will be listed. If no version is passed, the files from the most recent configuration snapshot will belisted.

Configuration snapshot files can be used to rollback the running APIC configuration by issuing the –rollback option.This can be issued for all snapshot files in the version or if the optional list of configuration files is given, the rollbackwill only occur for the specified files.

The file aciconfigdb.py serves a dual purpose. It is both a standalone tool and provides the back end to the GUI. It canbe imported as a library and used in your own applications in the same way as used by the GUI.

7.4.6 Version Repository

The core of the configuration snapshot engine is the Git repository. This is automatically created by Snapback andhidden from the user if so desired. The actual repository is created in the directory named apic-config-db. All of thesnapshot files can be found in this directory and all of the regular git commands can be used on this repository. Eachversion is stored as a git tag. This allows easy access to any version directly from the command line. If you wish toview the repository directly, the following commands will likely be useful:

* git tag

This will show all of the configuration snapshot versions.

* git show <version>:<filename>

This will show the contents of the specific version of thespecified configuration file.

* git diff <version>:<filename> <version>:<filename>

This can be used to view the differences between 2 versions ofthe same configuration file.

7.5 Visualization Examples

This directory contains a number of visualization examples that can be used to display information collected usingthe acitoolkit. Many of the examples are meant to run alongside the ACI Endpoint Tracker applicationand interact with the MySQL database that the ACI Endpoint Tracker populates. Most of the visualizationexamples are interactive.

7.5.1 Installation

To run the visualizations, the python package Flask is required. This can be installed using pip as follows:

7.5. Visualization Examples 463

acitoolkit Documentation, Release 0.1

pip install flask

It is also recommended that the ACI Endpoint Tracker is installed.

7.5.2 Usage

Run the visualizations as follows (supplying your own MySQL credentials):

python acitoolkit-visualizations.py --mysqlip 127.0.0.1 --mysqllogin root --→˓mysqlpassword password

Alternatively, you can create a credentials.py file in the same directory with the following:

MYSQLIP='127.0.0.1'MYSQLLOGIN='root'MYSQLPASSWORD='password'

If the credentials.py file is used, run the visualizations as follows:

python acitoolkit-visualizations.py

Once the visualizations are running, you should see the following displayed:

* Running on http://127.0.0.1:5000/

* Restarting with reloader

Simply point your favorite web browser to the following URL and explore:

http://127.0.0.1:5000/

7.6 EventFeeds: ACI Events to Atom Feed

The EventFeeds application subscribes to APIC Managed Objects and records any updates to the objects over a web-socket connection. These updates can be viewed in a variety of Atom Feeds provided over HTTP.

Some sample use cases for the ACI Events to Atom Feed app:

• Display recent endpoints in a NOC

• Display updated tenants on an IPTV

• Monitor EPG changes in a feed client

7.6.1 Installation

7.6.1.1 acitoolkit

This application uses the acitoolkit. The installation steps for the acitoolkit can be found at http://datacenter.github.io/acitoolkit/.

464 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

7.6.1.2 Flask

Flask is required. Flask should be installed automatically as a dependency of acitoolkit. If not the installation steps forFlask can be found at http://flask.pocoo.org/.

7.6.2 Usage

1. Command Line Arguments

The login credentials can be passed directly as command line arguments. The command is shown below:

python eventfeeds.py --helpusage: eventfeeds.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD]

[--snapshotfiles SNAPSHOTFILES [SNAPSHOTFILES ...]] [--ip IP][--port PORT] [--test]

where the parameters are as follows:

URL The URL used to communicate with the APIC.

LOGIN The username used to login to the APIC.

PASSWORD The password used to login to the APIC.

IP The IP address the webserver should bind to

PORT The PORT the webserver should bind to

An example would be the following:

python eventfeeds.py -u https://172.35.200.100 -ladmin -p apicpassword --ip 127.0.0.1 --port 5000

2. Configuration

The application can be configured via the GUI at http://[ip]:[port]/config/

Under Record Events For. . . select the classes that you would like the app to monitor.

Only select the classes that you are interested in to save on network and database usage.

Log Filename and Events Database can be used to set where the log files are saved to and wherethe sqlite3 event database will be stored. The path is relative to the working directory of the app.

Clicking Save Configuration will write out the configuration to config.json

You must restart the process for the changes to take effect.

7.6.3 What’s it doing ?

Once the application is running, it will connect to the APIC and subscribes (over a websocket) to any requested classesin the configuration file.

Whenever an update is received a row is inserted into a local database table named events. Each row has the ClassName, Name, Timestamp, and JSON representation of the object.

7.6. EventFeeds: ACI Events to Atom Feed 465

acitoolkit Documentation, Release 0.1

When you request a feed the Flask web application will query the database for the relevant events and then dynamicallygenerate an Atom compatable feed.

Note that updates to the database will only occur when the ACI Events to Atom Feed is running.

7.6.4 Feed Details

The feed produced by this application is compatable with the Atom Syndication Format standard

Each feed entry consists of the following fields:

<entry xml:base="http://[ip]:[port]/events/class/[Class]/[Filter]/"><title type="text">[Class]</title><id>[Name]</id><updated>[Timestamp]</updated><author><name>APIC</name>

</author><content type="text">[JSON]</content>

</entry>

Note: The JSON body will have the following characters escaped ” ‘ < > &

7.6.5 Screenshots

Head to the root of the application to get a list of available feeds e.g. http://127.0.0.1:5000/

466 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

Configuration is available at the /config/ URL e.g. http://127.0.0.1:5000/config/

7.6. EventFeeds: ACI Events to Atom Feed 467

acitoolkit Documentation, Release 0.1

7.6.6 License

Copyright 2015 Cisco Systems, Inc.

Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except incompliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is dis-tributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, eitherexpress or implied. See the License for the specific language governing permissions and limitations underthe License.

7.7 Intersite Application

7.7.1 Overview

The Intersite application allows application policies to be applied across ACI fabrics. This is configured on an EndpointGroup (EPG) basis. When endpoints appear in an EPG that is configured as an intersite EPG, the endpoint (EP) andEPG information is propagated to the remote sites as per the intersite policy.

On the remote sites, the EP and EPG information is used at the ingress L3out interface to reclassify the endpoint trafficinto the appropriate EPG. Since multiple sites may be involved, the information may be propagated to more than 1remote site as per the intersite policy. Likewise, each site may use more than 1 L3out interface to communicate withthe other sites so the endpoint and EPG information may be installed on more than 1 L3out interface within the site.

468 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

7.7.2 Installation

The Intersite application runs on top of the acitoolkit and comes as part of its applications suite. Installation of theacitoolkit can be performed as per the instructions here. It is recommended that the acitoolkit be installed usingthe git clone commands. Once installed, the Intersite application can be found in the directory acitoolkit/applications/multisite.

7.7.3 Usage

For each site, a single instance of the Intersite application is to be run. This instance will handle exporting the EP andEPG information from the local site to the remote sites as per the Intersite policy. Since most communication will bebidirectional, this implies that there will be a similar policy on the remote site application exporting the EPs on thedesired EPGs back to the local site. The Intersite application is run as a standard python script and can be called asshown below:

python intersite.py -h

usage: intersite.py [-h] [--config CONFIG] [--generateconfig][--debug [{verbose,warnings,critical}]]

ACI Multisite Tool

optional arguments:-h, --help show this help message and exit--config CONFIG Configuration file--generateconfig Generate an empty example configuration file--maxlogfiles MAXLOGFILES

Maximum number of log files (default is 10)--debug [{verbose,warnings,critical}]

Enable debug messages.

The Intersite policy that defines the operation of the tool is provided using the --config command line option. Thisoption is followed by the configuration filename that contains the intersite policy. The intersite policy is describedusing JSON and the details are described in the Configuration File section.

A sample configuration file can be generated by using the --generateconfig command line option. Specifyingthis option will produce the following output and quit the application. The sample JSON will be found in the filenamed sample_config.json and the contents are described in the Configuration File section.

python intersite.py --generateconfig

Sample configuration file written to sample_config.jsonReplicate the site JSON for each site.

Valid values for use_https and local are 'True' and 'False'One site must have local set to 'True'

Replicate the export JSON for each exported contract.

The --debug and --maxlogfiles options are described in the Logging section.

7.7.4 Configuration File

The configuration file defines the policy that is used to configure the tool, connect to the local and remote APICs, andthe EPG export policies. The sample configuration file generated by the --generateconfig command line optiondescribed in the Usage section is shown below.

7.7. Intersite Application 469

acitoolkit Documentation, Release 0.1

{"config": [

{"site": {

"username": "","name": "","ip_address": "","password": "","local": "","use_https": ""

}},{

"export": {"epg": "","app": "","tenant": "","remote_epg": "","remote_sites": [

{"site": {

"interfaces": [{

"l3out": {"consumes_interface": [

{"cif_name": ""

}],"name": "","protected_by": [

{"taboo_name": ""

}],"provides": [

{"contract_name": ""

}],"consumes": [

{"contract_name": ""

}],"tenant": ""

}}

],"name": ""

}}

]}

}]

}

470 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

It should be noted that the configuration consists of site and EPG export policies.

7.7.4.1 Site Policy

The site policy defines how the tool will communicate with the APIC of each fabric. There is a single site object inthe JSON configuration for each site that the tool will communicate. Each site consists of the following items:

• username: The username used to login to the APIC of this site

• name: The name of this Site used in the context of the tool to correlate which site the EPG export policy isreferring.

• ip_address: The IP address of the APIC of this site

• password: The password used to login to the APIC of this site

• local: True or False. True if this site is considered the local site for this tool. Endpoints are only exported fromthe local site.

• use_https: True or False. True if the tool should use https to login to the APIC.

7.7.4.2 EPG Export Policy

The EPG export policy defines which EPG to export EPs and where the EPs should be exported. There is at most asingle EPG export policy for any EPG. The EPG policy contains the following items:

• epg: The name of the EPG to export endpoints

• app: The name of the Application Profile that contains the EPG.

• tenant: The name of the tenant that contains the EPG.

• remote_epg: The name to be used as the EPG (l3extInstP) on the remote site outside L3 interface (l3extOut).

• remote_sites: The remote site policy for this exported EPG.

The remote_sites policy contains one or more remote site policies where the EPG will be exported. Each remotesite policy contains the following items:

• name: The name of the remote site. This should correspond to one of the sites defined in the Site policies.

• interfaces: The list of remote L3out interface policies on the remote site to install the endpoints for this EPG.

Each L3out interface policy contains the following items which describes how the endpoints should be configured onthat particular L3out interface.

• name: The name of this L3out interface. This should match the name configured in the remote site APIC.

• tenant: The tenant name that contains the L3out interface. This should match the name configured in the remotesite APIC. It should be noted that this may be a different tenant than the EPG on the local site.

• provides: This contains a list of zero or more contract names that the EP should provide when configured on theremote site.

• consumes: This contains a list of zero or more contract names that the EP should consume when configured onthe remote site.

• consumes_interface: This contains a list of zero or more contract interface names that the EP should consumewhen configured on the remote site.

• protected_by: This contains a list of zero or more taboo names that the EP should be protected by when config-ured on the remote site.

7.7. Intersite Application 471

acitoolkit Documentation, Release 0.1

• noclean: True of False value that determines whether ‘stale’ contracts should be removed from a remote EPGon script start up (default False, stale contracts are removed).

7.7.5 Command Shell

When the Intersite application is running, there is a small simple command line shell that provides basic interactionwith the tool. The following commands are available at the command prompt.

configfile <filename> Set the configuration filename to the specified filename.show configfile Show the current setting of the configuration filename.show config Show the current JSON configuration that the tool is using.reloadconfig Reload the JSON configuration from the configuration file.→˓This is used to enable new configuration additions, changes, or deletions.show debug Show the current level setting of the debug messages.debug critical Sets the debug message level to critical.debug warnings Sets the debug message level to warnings.debug verbose Sets the debug message level to verbose.help [cmd] Displays help for any command.quit Quit the Intersite tool.

7.7.6 REST API

The Intersite application can be accessed through a simple server application using a REST API. When run as a server,the application usage is run as follows:

python intersite_rest_server.py -husage: intersite_rest_server.py [-h] [--config CONFIG]

[--maxlogfiles MAXLOGFILES] [--generateconfig][--debug [{verbose,warnings,critical}]]

ACI Multisite Tool

optional arguments:-h, --help show this help message and exit--config CONFIG Configuration file--maxlogfiles MAXLOGFILES

Maximum number of log files (default is 10)--generateconfig Generate an empty example configuration file--debug [{verbose,warnings,critical}]

Enable debug messages.--ip IP IP address to listen on.--port PORT Port number to listen on.

An example of running the application would be:

python intersite_rest_server.py --config my_config.json

By default, the server runs on the loopback IP address 127.0.0.1 and the port 5000. This can be changed via the --ipand --port command line options.

The REST API allows retrieving and setting the configuration of the tool. This is done through a single URL, namely/config.

By sending HTTP GET requests to /config, the configuration can be retrieved.

472 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

By sending JSON configuration in an HTTP POST or HTTP PUT to /config, the configuration can be changed.This JSON configuration is the same format as decribed in the Configuration File section. If the configuration is notvalid JSON, a 400 error response code will be returned.

The REST API is protected by basic HTTP authentication with the default username set to admin and the defaultpassword set to acitoolkit.

Some examples using the REST API via curl:

curl -i -u admin:acitoolkit -H “Content-Type: application/json” -X PUT -d@my_config.→˓json http://localhost:5000/configcurl -i -u admin:acitoolkit -X GET http://localhost:5000/config

7.7.7 Automator

The intersite application can be run in a basic automated fashion which will identify EPG’s with an assigned tag andautomatically create the appropriate L3out objects and contracts from the templated configuration. The usefulness ofthis utility is limited by the requirement of tenant’s needing to exist in both sites (APIC’s) consistantly.

python intersite_automator.py -husage: intersite_automator.py [-h] [--config CONFIG] [--generateconfig]

[--debug [{verbose,info,warnings,critical}]][--stdout]

ACI Multisite Automation Tool

optional arguments:-h, --help show this help message and exit--config CONFIG Configuration file in JSON format--generateconfig Generate an empty example configuration file--debug [{verbose,info,warnings,critical}]

Enable printing of debug messages--stdout Output all log events to stdout

To make use of this modified version of the intersite application, you will need to use a different configuration file.The automator removes the need for statically defining the individual export policies but requires a new ‘automator’specific configuration.

{"config": [

{"site": {

"name": "","username": "","password": "","ip_address": "","use_https": "","local": ""

}},{

"site": {"name": "","username": "","password": "","ip_address": "",

(continues on next page)

7.7. Intersite Application 473

acitoolkit Documentation, Release 0.1

(continued from previous page)

"use_https": "","local": ""

}}

],

"automator": {"check_interval": "60","search_filter": "replicated",

"remote_l3out": {"tenant": "Layer3OutTenant","interface_name": "L3Out.Site1-Site2.SERVER","network_name": "Site2.%{tenant}.%{app}.%{epg}"

},

"remote_contracts": {"consume_contract": [{

"name": "CT.%{tenant}.%{app}.%{epg}.to.Site2","default_filter": "east-west-allow-all",

"export_to_epg_owner": "True","export_name": "x.CT.%{tenant}.%{app}.%{epg}.to.Site2"

}],"provide_contract": [{

"name": "CT.%{tenant}.%{app}.%{epg}.to.Site2","default_filter": "east-west-allow-all",

"export_to_epg_owner": "True","export_name": "x.CT.%{tenant}.%{app}.%{epg}.to.Site2"

}],"consume_int_contract": []

}}}

The site specific configuration hasn’t changed, and matches the definition in the previous section of this documentation

• check_interval: integer - The time in seconds that intersite_automator will sleep between searching for EPG’swith the search_filter tag (this should be a >0 value to reduce API calls on the APIC)

• search_filter: string - The tag that intersite_automator will search for (on EPG’s) to identify which EPG’s toreplicate.

• remote_l3out->tenant: string - The tenant that owns the L3out object that will have the ‘remote EPGs’ createdunder.

• remote_l3out->interface_name: string - The interface that will have the ‘remote EPGs’ created under.

• remote_l3out->network_name: string - The network name pattern (see pattern information below) that will beused to create the new remote EPG.

• remote_contracts-><contract type>->name: string - The contract name pattern (see pattern information below)that will be attached to the newly created remote EPG (this will be created if it does not exist)

• remote_contracts-><contract type>->default_filter: string - A default filter that will be attached to a contractthat is created by the intersite automator

• remote_contracts-><contract type>->export_to_epg_owner: boolean string - Determines whether or not theintersite automator script should export this contract to the EPG owner. This is useful if your L3out object sits

474 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

in a different tenant as the EPG but also assumes that there is some level of consistancy across multiple APICs.

• remote_contracts-><contract type>->export_name: string - The pattern to use when exporting the contract tothe EPG owner.

Patterns Certain configuration fields allow the use of a very primitive variable substitution. This enables you to createEPGs and Contracts with dynamic names. The following variables are currently supported:

• ${tenant} - The name of the tenant that owns the EPG

• ${app} - The name of the application that the EPG belongs to

• ${epg} - The name of the EPG that is being replicated

7.7.8 Logging

The Intersite application supports logging of various debug messages. The messages are categorized by levels and theapplication allows the level to be set by the user through the --debug option. The lowest level is critical andwill only log the most critical messages. The next level is warnings and will log all of the critical messages aswell as those deemed suspect. The verbose level gives the previous levels plus additional information that providesdeep insight into what has occurred in the tool.

The debug messages are stored in the file intersite.log. When the file reaches 5 MB in size, the log file willrollover to a new file up to the configured maximum number of log files. By default, this maximum is 10 but thenumber can be changed by the user via the --maxlogfiles command line option. Once the maximum number oflog files has been reached, the oldest log file will be deleted.

7.7.9 APIC Object Model

The following objects are used from the APIC Object Model to enable the functionality of the Intersite tool.

The EPG that is configured to have its endpoints exported to the remote sites is defined using the classes fvTenant,fvAp, and fvAEPg.

The endpoints are tracked by subscribing to notifications from the fvCEp and fvStCEp classes and examining the EPGmembership of those endpoints.

The endpoints are installed on the remote site by using the classes l3extInstP and l3extSubnet under l3extOut. Theendpoint address is installed as a /32 entry within the l3extSubnet. The l3extInstP contains the children fvRsProv,fvRsCons, fvRsConsIf, and fvRsProtBy to associate the endpoint with the appropriate contracts, taboos, and contractinterfaces.

Additionally, a tagInst object is placed on every l3extInstP that contains specially formatted string within the opaquetagInst name field. This string is formatted as follows: isite:tenant_name:app_name:epg_name:site_name where thetenant, app, and epg names are that where the original endpoint is connected and the site_name is that of the site thatinstalled the l3extInstP.

7.7.10 Importing within other applications

Each instance of the tool is represented by the Collector class. Within the Collector class, there will be multipleinstances of the Site class, namely the LocalSite and RemoteSite classes.

If you wish to include the Intersite application in your own app, the policies can be defined as python dictionariesdirectly and passed to the LocalSite instance using the add_policy() function. This will allow the Monitor classto begin exporting the EP of the specified EPG according to the policy. Similarly, the external configuration file canbe updated and the reload_config() function can be called within the Collector class.

7.7. Intersite Application 475

acitoolkit Documentation, Release 0.1

7.8 Connection Search : Configured Connection Search Tool

SummaryGeneral OverviewInstallationWeb based Usage

CredentialsPerforming a SearchExamplesAboutFeedback

Command Line Usage

7.8.1 Summary

Connection Search is an application that allows the user to search for connections between endpoints on the ACIfabric.

7.8.2 General Overview

The Connection Search GUI provides a simple search bar. The user can enter a query into this search bar and theresults are then displayed.

The results are in the format of a table where set of IP addresses or subnets in the first column corresponds to connectionsources, a set of IP addresses or subnets in the second column corresponds to connection destinations, and a finalcolumn that shows which filters are applied to these connections.

Each row of the table is for a unique source-dest combination.

A search query consists of a set of attribute=value tuples. Any attribute can be used at most one time in a given search.If an attribute is not specified, then the search will assume those omitted attributes should not be used to qualify theresults. For example, if NO attributes are specified, then ALL connections will be reported. If sip=10.11.12/24 isspecified, then only connections that have a source that is covered by the subnet 10.11.12.0/24 will be reported.

7.8.3 Installation

Connection Search is part of the acitoolkit and will be installed at the same time. The installation details can be foundhere.

7.8.4 Web based Usage

Connection Search should be run as a web application. Running Connection Search as a web application is done byswitching to the connection_search directory and running the application:

cd acitoolkit/applications/connection_searchpython aciConSearchGui.py

By default, Connection Search will run locally on the loopback address. Accessing the tool is done by running a webbrowser locally and pointing to the following URL:

476 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

http://127.0.0.1:5001/

Upon pointing the web browser to the Connection Search URL, the Connection Search welcome screen along with thenavigation menu on the left hand side will be displayed.

7.8.4.1 Credentials

Entering the APIC credentials is necessary for Connection Search to be able to perform searches. Selecting theCredentials in the navigation menu will bring up the Credentials screen where the APIC credentials can be entered.

A number of fields allow the entry of the APIC credentials. These fields are:

APIC IP Address: This field is the IP address used to communicate with the APIC.

Use secure connection: When selected, this checkbox indicates that the APIC communication uses httpsinstead of http.

APIC Username: The username used when logging in to the APIC.

APIC Password: The password used when logging in to the APIC.

The credentials are stored with Connection Search by selecting the Save button. Once the credentials are entered, theywill be saved as part of the user session on that browser. This means that another window or tab using ConnectionSearch can be opened on the same machine without having to re-enter the credentials.

When entered, the current credentials are shown as in the screenshot below. Note that for security purposes, thepassword is not displayed. Clicking the Reset button will cause Connection Search to forget the current credentials,

7.8. Connection Search : Configured Connection Search Tool 477

acitoolkit Documentation, Release 0.1

but will not impact the APIC in any way.

7.8.4.2 Performing a Search

Selecting Search from the navigation menu will bring up the main search screen. Note that when this item is initiallyselected the Connection Search application will read in the configuration of the APIC. This may take some timedepending upon the size of your configuration as well as the speed of your network connection. Your browser mayindicate that it is “waiting on 127.0.0.1” while the configuration is loading. Please be patient.

A search consists of entering the search filter criteria in the search bar and then pressing the SEARCH button. If nocriteria is entered, all connections will be displayed.

The search criteria consists of a set of attribute=value tuples separated by spaces. Each attribute can only be usedonce. If it is used more than once, the last one is the only one that will take effect.

The Attributes are as follows:

tenant: The name of the tenant to conduct the search in. Note that this will be the tenant used for both thesource and the destination so it will not find connections that are end-points using services shared from adifferent tenant. A search that does not specify the tenant should be used when looking for these kinds ofconnections.

478 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

The tenant name can also contain a simple “*” as a wild-card. For example, tenant=foo* will match ontenants with the name foo, foobar, and foo_xyz. tenant=foo*bar will match on tenants with the namefoobar and foohellobar, but not foobar5.

context: The name of the context to conduct the search in. Like the tenant attribute, this one will apply toboth the source and destination and can contain wild-cards. The context attribute would typically be usedin conjunction with the tenant attribute, but that is not required.

contract: The name of a contract can be specified and only connections that use contract(s) with that namewill be selected. Note that the contact name cannot be further qualified with the tenant name. However,the tenant name can be one of the attributes, but that will limit the result to only endpoints that are underthat tenant.

sip: The source IP address or source subnet. When entering an address, it should be in the defacto standardform of a.b.c.d. For example, 10.2.5.8. When entering a subnet, it should take the form of a.b.c.d/s where“s” is the length of the subnet mask. Any of the prefix digits that are omitted are assumed to be zero. Forexample, 192/8 is equivalent to 192.0.0.0/8 and 192/16 is equivalent to 192.0.0.0/16. The sip attributedoes not accept the “*” wild-card.

Note that when doing a search where the matching criteria can be either more or less specific than thefield in the policy, the result displayed with be value in the policy. For example, if a search is done forsip=1.2.3.0/24 and there is a L3Out that has the address 1.2/16 that matches that sip, the output result willshow 1.2/16. Similarly, if there is an EPG with addresses 1.2.3.4/32 and 1.2.3.89/32, the result displayedin the source column will be 1.2.3.4/32 and 1.2.3.89/32.

dip: The destination IP address or destination subnet. See sip above for how this attribute works.

dport: The layer 4 destination port or port range. This attribute implies that the prot field is tcp udp andthe etherT field is ip unless otherwise specified. The format is either a single value or a range. Whenentering a range, the minimum value should be separated from the maximum value by a dash “-“. Forexample, dport=80 or dport=20-45. A limited set of common protocol acronyms can also be used. Thecurrently supported set is:

‘http’, ‘https’, ‘ftp-data’, ‘smtp’, ‘dns’, ‘pop3’, ‘rtsp’, and ‘any’

sport: The layer 4 source port or port range. This attribute works just like the dport attribute above.

prot: The layer 4 protocol type. This attributes allows the user to select which protocol to search for.Possible values are:’icmp’, ‘igmp’, ‘tcp’, ‘egp’, ‘igp’, ‘udp’, ‘icmpv6’, ‘eigrp’, ‘ospfigp’, ‘pim’, ‘l2tp’and ‘any’.

If the prot attribute is specified, then the etherT attribute is assumed to be ip unless otherwise specified.If the prot attribute is specified as any, then the etherT is not assumed. Note, that there is really no reasonto specify prot=any as this is the default anyway.

etherT: The Ethertype of the protocol. Typical values for the etherT attribute are ip or arp. Specificnumeric values can also be used, however they will be matched against the actual string value providedby the APIC filterEntry object, so a value of 800 will not match ip.

The etherT field is assumed to be ip if the prot field is specified to be an IP protocol. It is assumed to bearp if the arpOpc attribute is specified.

arpOpc: The ARP opcode. Possible values are req, reply and any. The default is any. When the arpOpcis specifed, the etherT is assumed to be arp.

applyToFrag: Apply to fragments attribute. Possible values are yes, no and any. The default is any.

tcpRules: TCP rules. This allows the user to specify the TCP rules to match. Use of this field in Con-nection Search has not been fully validated and so should be used with caution (it will do no harm so youmay play around with it, just be aware the results may not be what you expect). It must be entered exacty

7.8. Connection Search : Configured Connection Search Tool 479

acitoolkit Documentation, Release 0.1

the way the APIC specifies it the FilterEntry object. If tcpRules are specified, then the prot attribute isassumed to be tcp.

When the search results are displayed, placing the cursor over a table cell will cause a fully qualified name of the EPGor OutsideEPG to be displayed and the contract.

For communication within an EPG, i.e. between two end-points that are in the same EPG, Connection Search willcreate an “implied” contract that is both provided and consumed by that EPG. The filter in that contract will allow allcommunication. When the cursor hovers over the filter cell for such a connection, the contract name will begin with“implied” followed by a number that makes it unique. This contract does not actually exist in the APIC.

7.8.4.3 Examples

The following are a few examples of searches and explanation of the results.

Example 1

Find all the connections whose source IP address is in the subnet “192.0.0.0/8”.

Here we see how the search is contructed, sip=192/8. This tells the application to find all connections whose sourceIP address has the first 8-bits equal to “192”.

The results show three connections. The first shows traffic from 0.0.0.0/0 to 0.0.0.0/0. This shows that alltraffic from the mgmt tenant can be switched to Tenant1 L3Out-FW-outside as long as it is TCP traffic. It hasa filter of ip tcp any-any any-any both which should be interpreted as:

• EtherType = IP

• IP protocol = TCP

• L4 destination port minimum = any

• L4 destination port maximum = any

• L4 source port minimum = any

• L4 source port maximum = any

• Direction with respect to destination = both

480 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

The following two rows show connections from Tenant1 to Tenant1, i.e. they correspond to different traffic thanthe first row.

Note that there were additional results that are not shown in the above image.

Example 2

This next example shows a search looking for traffic in a tenant named “Tenant1”, whose destination is to anything inthe 192.168.0.0/16 subnet on any layer 4 destination port number in the range of 80 to 500.

The results show 3 connection groups. The first one is from a host IP of 0.0.0.0/32. This looks funny and isprobably a configuration error in the APIC. The destination here is 0.0.0.0/0 and the filter is for any TCP traffic.0.0.0.0/0 in the destination column covers the search criteria of dip=192.168.0.0/16, and the filter of any-any for the destination port range covers the search criteria of dport=80-500.

Example 3

In this query, the user wants to see all of the destinations that host 192.168.1.133 in tenant “Tenant1” can sendtraffic to.

7.8. Connection Search : Configured Connection Search Tool 481

acitoolkit Documentation, Release 0.1

Here there are two results. The first shows that this host can send traffic to default route of 0/0 for any TCP traffic.The second row shows that this host can communicate with itself using any protocol. This second one has a fully openfilter of any any any-any any-any both. When we place the cursor over this row we can see that this wasan “implied” filter. The implied filter is created by the connection search tool to show that end-points within an EPGcan communicate with each other without any constraint.

7.8.4.4 About

This is a simple summary screen with a link to the documentation and a description of the software license.

7.8.4.5 Feedback

This screen provides the ability for the users to submit comments, suggestions, feature requests, and bug reportsdirectly to the authors of the tool.

7.8.5 Command Line Usage

Connection Search can also be run as a command line application. This is done by switching to the Connection Searchdirectory and running the application:

cd acitoolkit/applications/connection_search

The application is run with options provided in the command line. The help for this command is shown by:

python aciConSearch.py --help

The output for this command is shown below:

usage: aciConSearch.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][--snapshotfiles SNAPSHOTFILES [SNAPSHOTFILES ...]][-tenant TENANT] [-context CONTEXT] [-sip SIP][-dip DIP] [-dport DPORT] [-sport SPORT][-etherT ETHERT] [-prot PROT] [-arpOpc ARPOPC][-applyToFrag APPLYTOFRAG] [-tcpRules TCPRULES]

Connection Search tool for APIC.

optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC IP address.-l LOGIN, --login LOGIN

APIC login ID.-p PASSWORD, --password PASSWORD

APIC login password.--snapshotfiles SNAPSHOTFILES [SNAPSHOTFILES ...]

APIC configuration files-tenant TENANT Tenant name (wildcards, "*", accepted), default "*"-context CONTEXT Context name (wildcards, "*", accepted), default "*"-sip SIP Source IP or subnet - e.g. 1.2.3.4/24, default: "0/0"-dip DIP Destination IP or subnet - e.g. 1.2.3.4/24, default:

"0/0"-dport DPORT Destination L4 Port value or range, e.g. 20-25 or 80.

Default: "any"-sport SPORT Source L4 Port value or range, e.g. 20-25 or 80.

(continues on next page)

482 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

(continued from previous page)

Default: "any"-etherT ETHERT EtherType, e.g. "ip", "arp", "icmp". Default: "any"-prot PROT Protocol, e.g. "tcp", "udp". Default: "any"-arpOpc ARPOPC ARP Opcode, e.g. "req", "ack". Default: "any"-applyToFrag APPLYTOFRAG

Apply to fragment, e.g. "yes", "no". Default: "any"-tcpRules TCPRULES TCP rules, e.g. "syn", "fin". Default: "any"

The APIC credentials are provided with the –url, –login, and –password options.

The remaining fields follow the attributes described above for the GUI version of the tool. Note that when aciCon-Search.py is used from the command line in this manner, the APIC configuration will be loaded and a single searchconducted. When the GUI version is used, the APIC configuration is loaded and multiple searches can be made againstit without doing a re-load.

7.9 Fake APIC

7.9.1 Purpose

• The Fake APIC is designed for users to view Managed Objects (and their properties) based on JSON configura-tion files

• The Fake APIC works as an offline-tool for users who may not have access to the APIC, but still want to seecertain (or all) Managed Objects on the network.

7.9.2 Usage

1. To generate JSON configuration files, use the snapback application located at acitoolkit/applications/snapback

2. Run the aciconfigdb.py file

python aciconfigdb.py -u <APIC url> -l <login> -p <password> -s --v1 -a

• The -s option takes the snapshot of the configuration from the APIC

• The --v1 option takes the snapshot using direct HTTP queries rather than the configuration import and exportpolicies. This is important to be able to simulate HTTP responses.

• The -a option ensures the configuration includes all properties of the class objects

– It’s very important to give the -a because the Fake APIC depends on the all properities of the classobjects

• The JSON files will be located at: acitoolkit/applications/snapback/apic-config-db

• Depending on the APIC, getting all the data may take around 5 - 8 seconds

• Modify a sample file such as aci-show-epgs.py to use the FakeSession class from the Fake APIC

• Pass in the JSON files to the FakeSession constructor

from os import listdirfrom acitoolkit.acifakeapic import FakeSession...

(continues on next page)

7.9. Fake APIC 483

acitoolkit Documentation, Release 0.1

(continued from previous page)

...# Set the directory to the location of the JSON filesdirectory = 'applications/snapback/apic-config-db/'filenames = [directory + file for file in listdir(directory)

if file.endswith('.json')]

# Create the sessionsession = FakeSession(filenames)

• Run the file

python aci-show-epgs.py -u <dummy url> -l <dummy login> -p <dummy password>

• Since this file will be using the Fake APIC, you can pass in any value for the url, login, and password

• The Fake APIC works by retrieving data from the JSON files to mimick responses from the real APIC

• Users can pass in queries such as /api/mo/uni/tn-tenant1/BD-Br1.json?query-target=children to get back responses.

7.9.3 How to pass in queries to the Fake APIC

...

...# to print the data nicelyimport json

session = FakeSession(filenames)query = '/api/mo/uni/tn-tenant1/BD-1.json?query-target=children'fake_ret = fake_session.get(query)fake_data = fake_ret.json()['imdata']data = fake_ret.json()['imdata']# print the data from the Fake APICprint json.dumps(data, indent=4)

7.9.4 What queries the Fake APIC supports

• Any queries starting with api/mo/ can have the scoping filters of

• query-target

• rsp-subtree

• target-subtree-class

• Queries starting with api/node/class can only have the query-target with the value of self

– values of rsp-subtree and target-subtree-class are supported

• For more information regarding scoping filters see page 12 of the Cisco APIC REST API User Guide under thesection “Applying Query Scoping Filters”

7.9.5 Dependencies

• Python 2.7

484 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

• Data in the JSON configuration files

• The Fake APIC can only retrieve data that are in the JSON files, it cannot retrieve any data from the real APIC

• The Fake APIC does not check for bad queries

7.10 ACI Reports

The ACI Reports is a collection of reporting tools for the APIC logical and physical model.

7.10.1 ACI ReportView GUI

Reports can be generated using a GUI based application. Switch reports or Tenant reports can be generated using thisapplication.

7.10.1.1 Installation

This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.

7.10.1.2 Usage

The application is started from the command line. In its simplest form, it can be invoked by the following command:

python aciReportGui.py

The full command help is shown below:

python aciReportGui.py -husage: aciReportGui.py [-h] [--ip IP] [--port PORT] [--test]

[--debug [{verbose,warnings}]]

ACI Report Viewer Tool.

optional arguments:-h, --help show this help message and exit--ip IP IP address to listen on.--port PORT Port number to listen on.--test Enable functions for lab testing.--debug [{verbose,warnings}]

Enable debug messages.

By default, the reporting application runs on port 5000. This port can be changed by passing the --port commandline option.

By default, the IP address used is the 127.0.0.1 loopback address. This allows the application to be accessedlocally. If the application needs to be accessed from web browsers on different machines, it should be run on the actualIP address of the local machine. This can be specified using the --ip command line option.

Once invoked, the GUI is displayed by connecting to http://127.0.0.1:5000 (assuming that the IP and Portare using the default values).

7.10. ACI Reports 485

acitoolkit Documentation, Release 0.1

Credentials

Before the application can generate reports, the application needs to have the credentials required to login to the APIC.This is done by selecting the Credentials menu item in the main ReportsView application.

Selecting the Credentials menu item will display the following form for entering credentials.

The IP address, username, and password of the desired APIC are entered. If the APIC requires HTTPS, the Usesecure connection checkbox should be selected.

Once the credentials have been entered and the Save button is cliecked, the credentials will be displayed as havingbeen set.

486 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

The credentials can be purged by clicking on the Reset button.

Switch Reports

Once credentials have been entered, the switch reports can be displayed by selecting the Switch Reports menuoption. Depending on the size of the ACI fabric, it may take a few seconds for the switch reports to load.

7.10. ACI Reports 487

acitoolkit Documentation, Release 0.1

The switch report screen contains a pulldown menu to select the individual switch to provide a report.

There are a number of report types that are available. These are selected by using the Report Type pulldown menu.The available report types are:

• Basic

• Supervisor Card

• Linecard

• Power Supply

• Fan Tray

• Overlay

• Context

• Bridge (L2) Domain

• Endpoint

• SVI (Router Interface)

• Access Rule

• ARP

• Port Channel (incl. VPC)

Tenant Reports

Once credentials have been entered, the tenant reports can be displayed by selecting the Tenant Reports menuoption. Depending on the size of the ACI fabric, it may take a few seconds for the tenant reports to load.

488 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

The tenant report screen contains a pulldown menu to select the individual tenant to provide a report.

There are a number of report types that are available. These are selected by using the Report Type pulldown menu.The available report types are:

• Context

• Bridge Domain

• Contract

• Taboo

• Filter

• Application Profile

• Endpoint Group

• Endpoint

7.10.2 ACI Logical Reports

Logical Tenant level reporting can be dome via this command line application.

7.10.2.1 Installation

This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.

7.10.2.2 Usage

The application is started from the command line. In its simplest form, it can be invoked by the following command:

python aci-report-logical.py

The full command help is shown below:

7.10. ACI Reports 489

acitoolkit Documentation, Release 0.1

python aci-report-logical.py -h

usage: aci-report-logical.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][-t TENANT] [-all] [-basic] [-context][-bridgedomain] [-contract] [-taboo] [-filter][-app_profile] [-epg] [-endpoint]

Simple application that logs on to the APIC and displays reports for thelogical model.

optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC URL e.g. http://1.2.3.4-l LOGIN, --login LOGIN

APIC login ID.-p PASSWORD, --password PASSWORD

APIC login password.-t TENANT, --tenant TENANT

Specify a particular tenant name-all Show all detailed information-basic Show basic tenant info-context Show Context info-bridgedomain Show Bridge Domain info-contract Show Contract info-taboo Show Taboo (Deny) info-filter Show Filter info-app_profile Show Application Profile info-epg Show Endpoint Group info-endpoint Show End Point info

7.10.2.3 Notes

The reporting application can generate a large amount of data. It may take some time to collect all of the data dependingon the size of the ACI fabric. This is especially true when executing the -all command line option.

7.10.3 ACI Switch Reports

Switch level reporting can be dome via this command line application.

7.10.3.1 Installation

This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.

7.10.3.2 Usage

The application is started from the command line. In its simplest form, it can be invoked by the following command:

python aci-report-switch.py

The full command help is shown below:

490 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

python aci-report-switch.py -h

Simple application that logs on to the APIC and displays reports for theswitches.usage: aci-report-switch.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD] [-s SWITCH]

[-all] [-basic] [-linecard] [-supervisor][-fantray] [-powersupply] [-arp] [-context][-bridgedomain] [-svi] [-accessrule] [-endpoint][-portchannel] [-overlay] [-tablefmt TABLEFMT]

optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC URL e.g. http://1.2.3.4-l LOGIN, --login LOGIN

APIC login ID.-p PASSWORD, --password PASSWORD

APIC login password.-s SWITCH, --switch SWITCH

Specify a particular switch id, e.g. "102"-all Show all detailed information-basic Show basic switch info-linecard Show Lincard info-supervisor Show Supervisor Card info-fantray Show Fantray info-powersupply Show Power Supply info-arp Show ARP info-context Show Context (VRF) info-bridgedomain Show Bridge Domain info-svi Show SVI info-accessrule Show Access Rule and Filter info-endpoint Show End Point info-portchannel Show Port Channel and Virtual Port Channel info-overlay Show Overlay info-tablefmt TABLEFMT Table format [fancy_grid, plain, simple, grid, pipe,

orgtbl, rst, mediawiki, latex, latex_booktabs]

7.10.3.3 Notes

The reporting application can generate a large amount of data. It may take some time to collect all of the data dependingon the size of the ACI fabric. This is especially true when executing the -all command line option.

7.10.4 ACI Security Report

This application provides simple audit reports that can be used for compliance checks or security audits.

7.10.4.1 Installation

This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.

7.10.4.2 Usage

The application is started from the command line. In its simplest form, it can be invoked by the following command:

7.10. ACI Reports 491

acitoolkit Documentation, Release 0.1

python aci-report-security-audit.py

The full command help is shown below:

python aci-report-security-audit.py -h

usage: aci-report-security-audit.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][--csv CSV]

Simple application that logs on to the APIC and produces a report that can beused for security compliance auditing.

optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC URL e.g. http://1.2.3.4-l LOGIN, --login LOGIN

APIC login ID.-p PASSWORD, --password PASSWORD

APIC login password.--csv CSV Output to a CSV file.

7.10.4.3 Output

By default, the audit report is displayed on the screen as comma separated values. If the --csv command line optionis provided, the output will be sent to the specified filename in proper CSV format.

Each row of the report contains the following information:

* Tenant name

* Context (VRF) name

* Bridge Domain name

* Application Profile name

* EPG name

* Number of Consumer EPG Endpoints

* Provided Contract name

* Number of Providing EPG Endpoints

* Consumed Contract name

* Protocol specified in the Filter entry

* Source port range specified in the Filter entry

* Destination port range specified in the Filter entry

7.11 APIC Test Harness

7.11.1 Purpose

• The APIC Test Harness wraps the Fake APIC into an application server so that toolkit applications can runagainst the test harness with no modification whatsoever.

• It can be used to execute toolkit scripts and applications against an APIC snapshot rather than a live APIC. Forinstance, the sample script acitoolkit/samples/aci-show-endpoints.py could be run against thelive APIC, a snapshot file, yesterday’s snapshot file, or even last year’s snapshot file.

• It can be used to generate conditions that are very difficult to create in real systems such as communicationfailures, connection resets, slow responses, and response timeouts.

492 Chapter 7. Applications

acitoolkit Documentation, Release 0.1

7.11.2 Usage

1. To generate JSON configuration files, use the snapback application located at acitoolkit/applications/snapback

2. Run the aciconfigdb.py file

python aciconfigdb.py -u <APIC url> -l <login> -p <password> -s --v1 -a

• The -s option takes the snapshot of the configuration from the APIC

• The --v1 option takes the snapshot using direct HTTP queries rather than the configuration import andexport policies. This is important to be able to simulate HTTP responses.

• The -a option ensures the configuration includes all properties of the class objects

– It’s very important to give the -a because the Fake APIC depends on the all properities of the classobjects

• The JSON files will be located at: acitoolkit/applications/snapback/apic-config-db

• Depending on the APIC, getting all the data may take around 5 - 8 seconds

3. The APIC test harness is located in the acitoolkit/applications/testharness directory.

• Run the apic_test_harness.py file

python apic_test_harness.py --directory <snapshot directory>

– The --directory option provides the directory where the snapshot files are located. If the snapshotwas created in the snapback directory, the command would be issued as follows

python apic_test_harness.py --directory ../snapback/apic-config-db/

• At this point, the APIC test harness is running as an application server. By default, this service runs on theloopback address 127.0.0.1 on port 5000.

4. Use the APIC test harness

• Leave the APIC test harness running and execute applications against it.

• Here is an example usage taken from the acitoolkit/samples directory showing the usage of theaci-show-endpoints.py.

python aci-show-endpoints.py -l admin -p password -u http://127.0.0.1:5000

• Most of the show commands found in the acitoolkit/samples directory can be executed againstthe APIC Test Harness and many applications can be as well.

7.11.3 Full command line options

• The full list of command line arguments is available through the --help command line argument.

python apic_test_harness.py -husage: apic_test_harness.py [-h] [--directory DIRECTORY]

[--maxlogfiles MAXLOGFILES][--debug [{verbose,warnings,critical}]] [--ip

→˓IP][--port PORT]

(continues on next page)

7.11. APIC Test Harness 493

acitoolkit Documentation, Release 0.1

(continued from previous page)

ACI APIC Test Harness Tool

optional arguments:-h, --help show this help message and exit--directory DIRECTORY

Directory containing the Snapshot files--maxlogfiles MAXLOGFILES

Maximum number of log files (default is 10)--debug [{verbose,warnings,critical}]

Enable debug messages.--ip IP IP address to listen on.--port PORT Port number to listen on.

– Log files are stored locally within the directory where the APIC Test Harness is run. For themost complete logs, use the --debug verbose command line argument.

– If communication is local only, the default IP address of 127.0.0.1 should be used. If com-munication will be originated from external sources, the IP address of the interface connectingto the outside world should be used.

7.11.4 What APIC Test Harness supports

• The APIC Test Harness is not a full blown APIC. It can only respond with the information found in the snapshotJSON files. It will accept configuration but the configuration will not change the snapshot JSON files.

• The APIC Test Harness sits on top of the Fake APIC and is limited to what the Fake APIC supports.

7.11.5 Known Issues

• WebSockets and Event Subscriptions are not supported.

• Statistics support is limited.

• No configuration changes are supported.

494 Chapter 7. Applications

CHAPTER 8

Indices and tables

• genindex

• modindex

• search

495

acitoolkit Documentation, Release 0.1

496 Chapter 8. Indices and tables

Python Module Index

aacitoolkit.acibaseobject, 53acitoolkit.aciFaults, 437acitoolkit.aciphysobject, 62acitoolkit.acisession, 154acitoolkit.acitoolkit, 157acitoolkit.acitoolkitlib, 436

ccableplan, 451

497

acitoolkit Documentation, Release 0.1

498 Python Module Index

Index

Aacitoolkit.acibaseobject (module), 53acitoolkit.aciFaults (module), 437acitoolkit.aciphysobject (module), 62acitoolkit.acisession (module), 154acitoolkit.acitoolkit (module), 157acitoolkit.acitoolkitlib (module), 436AcitoolkitGraphBuilder (class in aci-

toolkit.acitoolkitlib), 436add() (acitoolkit.aciphysobject.WorkingData method),

154add_argument() (acitoolkit.acitoolkitlib.Credentials

method), 436add_argument_group() (aci-

toolkit.acitoolkitlib.Credentials method),436

add_bd() (acitoolkit.acitoolkit.EPG method), 238add_bd() (acitoolkit.acitoolkit.OutsideL2 method),

354add_child() (acitoolkit.acibaseobject.BaseACIObject

method), 53add_child() (acitoolkit.acibaseobject.BaseACIPhysObject

method), 59add_child() (acitoolkit.aciphysobject.Cluster

method), 62add_child() (acitoolkit.aciphysobject.ExternalSwitch

method), 68add_child() (acitoolkit.aciphysobject.Fabric

method), 74add_child() (acitoolkit.aciphysobject.Fan method),

79add_child() (acitoolkit.aciphysobject.Fantray

method), 85add_child() (acitoolkit.aciphysobject.Interface

method), 91add_child() (acitoolkit.aciphysobject.Linecard

method), 98add_child() (acitoolkit.aciphysobject.Link method),

104

add_child() (acitoolkit.aciphysobject.Node method),111

add_child() (acitoolkit.aciphysobject.PhysicalModelmethod), 118

add_child() (acitoolkit.aciphysobject.Pod method),123

add_child() (acitoolkit.aciphysobject.Powersupplymethod), 129

add_child() (acitoolkit.aciphysobject.Processmethod), 135

add_child() (acitoolkit.aciphysobject.Supervisorcardmethod), 141

add_child() (acitoolkit.aciphysobject.Systemcontrollermethod), 147

add_child() (acitoolkit.acitoolkit.AnyEPG method),157

add_child() (acitoolkit.acitoolkit.AppProfilemethod), 164

add_child() (acitoolkit.acitoolkit.AttributeCriterionmethod), 170

add_child() (acitoolkit.acitoolkit.BaseContractmethod), 181

add_child() (acitoolkit.acitoolkit.BaseSubnetmethod), 187

add_child() (acitoolkit.acitoolkit.BaseTerminalmethod), 193

add_child() (acitoolkit.acitoolkit.BGPSessionmethod), 175

add_child() (acitoolkit.acitoolkit.BridgeDomainmethod), 199

add_child() (acitoolkit.acitoolkit.CommonEPGmethod), 208

add_child() (acitoolkit.acitoolkit.Context method),215

add_child() (acitoolkit.acitoolkit.Contract method),221

add_child() (acitoolkit.acitoolkit.ContractInterfacemethod), 227

add_child() (acitoolkit.acitoolkit.ContractSubjectmethod), 232

499

acitoolkit Documentation, Release 0.1

add_child() (acitoolkit.acitoolkit.Endpoint method),252

add_child() (acitoolkit.acitoolkit.EPG method), 238add_child() (acitoolkit.acitoolkit.EPGDomain

method), 247add_child() (acitoolkit.acitoolkit.FexInterface

method), 258add_child() (acitoolkit.acitoolkit.Filter method), 263add_child() (acitoolkit.acitoolkit.FilterEntry

method), 269add_child() (acitoolkit.acitoolkit.InputTerminal

method), 280add_child() (acitoolkit.acitoolkit.IPEndpoint

method), 275add_child() (acitoolkit.acitoolkit.L2ExtDomain

method), 286add_child() (acitoolkit.acitoolkit.L2Interface

method), 292add_child() (acitoolkit.acitoolkit.L3ExtDomain

method), 297add_child() (acitoolkit.acitoolkit.L3Interface

method), 303add_child() (acitoolkit.acitoolkit.LogicalModel

method), 309add_child() (acitoolkit.acitoolkit.NetworkPool

method), 319add_child() (acitoolkit.acitoolkit.OSPFInterface

method), 324add_child() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 330add_child() (acitoolkit.acitoolkit.OSPFRouter

method), 335add_child() (acitoolkit.acitoolkit.OutputTerminal

method), 341add_child() (acitoolkit.acitoolkit.OutsideEPG

method), 347add_child() (acitoolkit.acitoolkit.OutsideL2

method), 354add_child() (acitoolkit.acitoolkit.OutsideL2EPG

method), 360add_child() (acitoolkit.acitoolkit.OutsideL3

method), 367add_child() (acitoolkit.acitoolkit.OutsideNetwork

method), 373add_child() (acitoolkit.acitoolkit.PhysDomain

method), 379add_child() (acitoolkit.acitoolkit.PortChannel

method), 385add_child() (acitoolkit.acitoolkit.Search method),

390add_child() (acitoolkit.acitoolkit.Subnet method),

396add_child() (acitoolkit.acitoolkit.Taboo method),

402

add_child() (acitoolkit.acitoolkit.Tag method), 408add_child() (acitoolkit.acitoolkit.Tenant method),

413add_child() (acitoolkit.acitoolkit.VMM method), 419add_child() (acitoolkit.acitoolkit.VMMCredentials

method), 425add_child() (acitoolkit.acitoolkit.VmmDomain

method), 430add_collection_policy() (aci-

toolkit.acitoolkit.BaseMonitorClass method),186

add_collection_policy() (aci-toolkit.acitoolkit.CollectionPolicy method),207

add_collection_policy() (aci-toolkit.acitoolkit.MonitorPolicy method),315

add_collection_policy() (aci-toolkit.acitoolkit.MonitorStats method),317

add_collection_policy() (aci-toolkit.acitoolkit.MonitorTarget method),318

add_context() (acitoolkit.acitoolkit.BridgeDomainmethod), 199

add_context() (acitoolkit.acitoolkit.L3Interfacemethod), 303

add_context() (acitoolkit.acitoolkit.OutsideL3method), 367

add_filter() (acitoolkit.acitoolkit.BaseTerminalmethod), 193

add_filter() (acitoolkit.acitoolkit.ContractSubjectmethod), 232

add_filter() (acitoolkit.acitoolkit.InputTerminalmethod), 280

add_filter() (acitoolkit.acitoolkit.OutputTerminalmethod), 341

add_infradomain() (acitoolkit.acitoolkit.EPGmethod), 238

add_ip_address() (aci-toolkit.acitoolkit.AttributeCriterion method),170

add_l2extdom() (acitoolkit.acitoolkit.OutsideL2method), 354

add_l3extdom() (acitoolkit.acitoolkit.OutsideL3method), 367

add_l3out() (acitoolkit.acitoolkit.BridgeDomainmethod), 199

add_link() (cableplan.CABLEPLAN method), 453add_mutually_exclusive_group() (aci-

toolkit.acitoolkitlib.Credentials method), 436add_network() (acitoolkit.acitoolkit.PhysDomain

method), 379add_static_leaf_binding() (aci-

500 Index

acitoolkit Documentation, Release 0.1

toolkit.acitoolkit.EPG method), 238add_stats() (acitoolkit.acitoolkit.BaseMonitorClass

method), 186add_stats() (acitoolkit.acitoolkit.CollectionPolicy

method), 207add_stats() (acitoolkit.acitoolkit.MonitorPolicy

method), 315add_stats() (acitoolkit.acitoolkit.MonitorStats

method), 317add_stats() (acitoolkit.acitoolkit.MonitorTarget

method), 318add_subnet() (acitoolkit.acitoolkit.BridgeDomain

method), 199add_switch() (cableplan.CABLEPLAN method), 453add_tag() (acitoolkit.acibaseobject.BaseACIObject

method), 53add_tag() (acitoolkit.aciphysobject.Cluster method),

62add_tag() (acitoolkit.aciphysobject.ExternalSwitch

method), 68add_tag() (acitoolkit.aciphysobject.Fabric method),

74add_tag() (acitoolkit.aciphysobject.Fan method), 79add_tag() (acitoolkit.aciphysobject.Fantray method),

85add_tag() (acitoolkit.aciphysobject.Interface

method), 91add_tag() (acitoolkit.aciphysobject.Linecard

method), 99add_tag() (acitoolkit.aciphysobject.Link method), 105add_tag() (acitoolkit.aciphysobject.Node method),

112add_tag() (acitoolkit.aciphysobject.PhysicalModel

method), 118add_tag() (acitoolkit.aciphysobject.Pod method), 123add_tag() (acitoolkit.aciphysobject.Powersupply

method), 129add_tag() (acitoolkit.aciphysobject.Process method),

135add_tag() (acitoolkit.aciphysobject.Supervisorcard

method), 141add_tag() (acitoolkit.aciphysobject.Systemcontroller

method), 148add_tag() (acitoolkit.acitoolkit.AnyEPG method), 157add_tag() (acitoolkit.acitoolkit.AppProfile method),

164add_tag() (acitoolkit.acitoolkit.AttributeCriterion

method), 170add_tag() (acitoolkit.acitoolkit.BaseContract

method), 181add_tag() (acitoolkit.acitoolkit.BaseSubnet method),

187add_tag() (acitoolkit.acitoolkit.BaseTerminal

method), 193

add_tag() (acitoolkit.acitoolkit.BGPSession method),175

add_tag() (acitoolkit.acitoolkit.BridgeDomainmethod), 199

add_tag() (acitoolkit.acitoolkit.CommonEPGmethod), 208

add_tag() (acitoolkit.acitoolkit.Context method), 215add_tag() (acitoolkit.acitoolkit.Contract method), 221add_tag() (acitoolkit.acitoolkit.ContractInterface

method), 227add_tag() (acitoolkit.acitoolkit.ContractSubject

method), 232add_tag() (acitoolkit.acitoolkit.Endpoint method),

252add_tag() (acitoolkit.acitoolkit.EPG method), 239add_tag() (acitoolkit.acitoolkit.EPGDomain method),

247add_tag() (acitoolkit.acitoolkit.FexInterface method),

258add_tag() (acitoolkit.acitoolkit.Filter method), 263add_tag() (acitoolkit.acitoolkit.FilterEntry method),

269add_tag() (acitoolkit.acitoolkit.InputTerminal

method), 281add_tag() (acitoolkit.acitoolkit.IPEndpoint method),

275add_tag() (acitoolkit.acitoolkit.L2ExtDomain

method), 286add_tag() (acitoolkit.acitoolkit.L2Interface method),

292add_tag() (acitoolkit.acitoolkit.L3ExtDomain

method), 297add_tag() (acitoolkit.acitoolkit.L3Interface method),

303add_tag() (acitoolkit.acitoolkit.LogicalModel

method), 309add_tag() (acitoolkit.acitoolkit.NetworkPool method),

319add_tag() (acitoolkit.acitoolkit.OSPFInterface

method), 325add_tag() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 330add_tag() (acitoolkit.acitoolkit.OSPFRouter method),

336add_tag() (acitoolkit.acitoolkit.OutputTerminal

method), 341add_tag() (acitoolkit.acitoolkit.OutsideEPG method),

347add_tag() (acitoolkit.acitoolkit.OutsideL2 method),

354add_tag() (acitoolkit.acitoolkit.OutsideL2EPG

method), 360add_tag() (acitoolkit.acitoolkit.OutsideL3 method),

367

Index 501

acitoolkit Documentation, Release 0.1

add_tag() (acitoolkit.acitoolkit.OutsideNetworkmethod), 373

add_tag() (acitoolkit.acitoolkit.PhysDomain method),379

add_tag() (acitoolkit.acitoolkit.PortChannel method),385

add_tag() (acitoolkit.acitoolkit.Search method), 391add_tag() (acitoolkit.acitoolkit.Subnet method), 396add_tag() (acitoolkit.acitoolkit.Taboo method), 402add_tag() (acitoolkit.acitoolkit.Tag method), 408add_tag() (acitoolkit.acitoolkit.Tenant method), 413add_tag() (acitoolkit.acitoolkit.VMM method), 419add_tag() (acitoolkit.acitoolkit.VMMCredentials

method), 425add_tag() (acitoolkit.acitoolkit.VmmDomain

method), 430add_target() (aci-

toolkit.acitoolkit.BaseMonitorClass method),186

add_target() (acitoolkit.acitoolkit.CollectionPolicymethod), 207

add_target() (acitoolkit.acitoolkit.MonitorPolicymethod), 315

add_target() (acitoolkit.acitoolkit.MonitorStatsmethod), 317

add_target() (acitoolkit.acitoolkit.MonitorTargetmethod), 318

addr (acitoolkit.acitoolkit.BaseSubnet attribute), 188addr (acitoolkit.acitoolkit.OutsideNetwork attribute),

373addr (acitoolkit.acitoolkit.Subnet attribute), 396AnyEPG (class in acitoolkit.acitoolkit), 157AppProfile (class in acitoolkit.acitoolkit), 164attach() (acitoolkit.acibaseobject.BaseACIObject

method), 53attach() (acitoolkit.aciphysobject.Cluster method),

62attach() (acitoolkit.aciphysobject.ExternalSwitch

method), 68attach() (acitoolkit.aciphysobject.Fabric method), 74attach() (acitoolkit.aciphysobject.Fan method), 79attach() (acitoolkit.aciphysobject.Fantray method),

85attach() (acitoolkit.aciphysobject.Interface method),

91attach() (acitoolkit.aciphysobject.Linecard method),

99attach() (acitoolkit.aciphysobject.Link method), 105attach() (acitoolkit.aciphysobject.Node method), 112attach() (acitoolkit.aciphysobject.PhysicalModel

method), 118attach() (acitoolkit.aciphysobject.Pod method), 123attach() (acitoolkit.aciphysobject.Powersupply

method), 129

attach() (acitoolkit.aciphysobject.Process method),135

attach() (acitoolkit.aciphysobject.Supervisorcardmethod), 141

attach() (acitoolkit.aciphysobject.Systemcontrollermethod), 148

attach() (acitoolkit.acitoolkit.AnyEPG method), 157attach() (acitoolkit.acitoolkit.AppProfile method),

164attach() (acitoolkit.acitoolkit.AttributeCriterion

method), 170attach() (acitoolkit.acitoolkit.BaseContract method),

181attach() (acitoolkit.acitoolkit.BaseSubnet method),

188attach() (acitoolkit.acitoolkit.BaseTerminal method),

194attach() (acitoolkit.acitoolkit.BGPSession method),

175attach() (acitoolkit.acitoolkit.BridgeDomain

method), 199attach() (acitoolkit.acitoolkit.CommonEPG method),

208attach() (acitoolkit.acitoolkit.Context method), 216attach() (acitoolkit.acitoolkit.Contract method), 221attach() (acitoolkit.acitoolkit.ContractInterface

method), 227attach() (acitoolkit.acitoolkit.ContractSubject

method), 233attach() (acitoolkit.acitoolkit.Endpoint method), 252attach() (acitoolkit.acitoolkit.EPG method), 239attach() (acitoolkit.acitoolkit.EPGDomain method),

247attach() (acitoolkit.acitoolkit.FexInterface method),

258attach() (acitoolkit.acitoolkit.Filter method), 263attach() (acitoolkit.acitoolkit.FilterEntry method),

270attach() (acitoolkit.acitoolkit.InputTerminal method),

281attach() (acitoolkit.acitoolkit.IPEndpoint method),

275attach() (acitoolkit.acitoolkit.L2ExtDomain method),

286attach() (acitoolkit.acitoolkit.L2Interface method),

292attach() (acitoolkit.acitoolkit.L3ExtDomain method),

298attach() (acitoolkit.acitoolkit.L3Interface method),

303attach() (acitoolkit.acitoolkit.LogicalModel method),

309attach() (acitoolkit.acitoolkit.NetworkPool method),

319

502 Index

acitoolkit Documentation, Release 0.1

attach() (acitoolkit.acitoolkit.OSPFInterfacemethod), 325

attach() (acitoolkit.acitoolkit.OSPFInterfacePolicymethod), 330

attach() (acitoolkit.acitoolkit.OSPFRouter method),336

attach() (acitoolkit.acitoolkit.OutputTerminalmethod), 341

attach() (acitoolkit.acitoolkit.OutsideEPG method),347

attach() (acitoolkit.acitoolkit.OutsideL2 method),354

attach() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 360

attach() (acitoolkit.acitoolkit.OutsideL3 method),367

attach() (acitoolkit.acitoolkit.OutsideNetworkmethod), 373

attach() (acitoolkit.acitoolkit.PhysDomain method),379

attach() (acitoolkit.acitoolkit.PortChannel method),385

attach() (acitoolkit.acitoolkit.Search method), 391attach() (acitoolkit.acitoolkit.Subnet method), 396attach() (acitoolkit.acitoolkit.Taboo method), 402attach() (acitoolkit.acitoolkit.Tag method), 408attach() (acitoolkit.acitoolkit.Tenant method), 413attach() (acitoolkit.acitoolkit.VMM method), 419attach() (acitoolkit.acitoolkit.VMMCredentials

method), 425attach() (acitoolkit.acitoolkit.VmmDomain method),

430AttributeCriterion (class in acitoolkit.acitoolkit),

169

BBaseACIObject (class in acitoolkit.acibaseobject), 53BaseACIPhysModule (class in aci-

toolkit.acibaseobject), 59BaseACIPhysObject (class in aci-

toolkit.acibaseobject), 59BaseContract (class in acitoolkit.acitoolkit), 181BaseInterface (class in acitoolkit.acibaseobject), 60BaseMonitorClass (class in acitoolkit.acitoolkit),

186BaseRelation (class in acitoolkit.acibaseobject), 61BaseSubnet (class in acitoolkit.acitoolkit), 187BaseTerminal (class in acitoolkit.acitoolkit), 193BGPSession (class in acitoolkit.acitoolkit), 175BridgeDomain (class in acitoolkit.acitoolkit), 199build_graph_from_parent() (aci-

toolkit.acitoolkitlib.AcitoolkitGraphBuilderstatic method), 436

build_graphs() (aci-toolkit.acitoolkitlib.AcitoolkitGraphBuildermethod), 436

build_object_dictionary() (in module aci-toolkit.acitoolkit), 436

build_vnid_dictionary() (aci-toolkit.aciphysobject.WorkingData method),154

CCABLEPLAN (class in cableplan), 453cableplan (module), 451check_parent() (aci-

toolkit.acibaseobject.BaseACIPhysObjectclass method), 59

check_parent() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 68

check_parent() (acitoolkit.aciphysobject.Fan classmethod), 79

check_parent() (acitoolkit.aciphysobject.Fantrayclass method), 85

check_parent() (acitoolkit.aciphysobject.Linecardclass method), 99

check_parent() (acitoolkit.aciphysobject.Link classmethod), 105

check_parent() (acitoolkit.aciphysobject.Nodeclass method), 112

check_parent() (acitoolkit.aciphysobject.Pod classmethod), 123

check_parent() (aci-toolkit.aciphysobject.Powersupply classmethod), 129

check_parent() (acitoolkit.aciphysobject.Processclass method), 135

check_parent() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 141

check_parent() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 148

check_session() (aci-toolkit.acibaseobject.BaseACIObject staticmethod), 53

check_session() (acitoolkit.aciphysobject.Clusterstatic method), 62

check_session() (aci-toolkit.aciphysobject.ExternalSwitch staticmethod), 68

check_session() (acitoolkit.aciphysobject.Fabricstatic method), 74

check_session() (acitoolkit.aciphysobject.Fanstatic method), 79

Index 503

acitoolkit Documentation, Release 0.1

check_session() (acitoolkit.aciphysobject.Fantraystatic method), 85

check_session() (acitoolkit.aciphysobject.Interfacestatic method), 91

check_session() (acitoolkit.aciphysobject.Linecardstatic method), 99

check_session() (acitoolkit.aciphysobject.Linkstatic method), 105

check_session() (acitoolkit.aciphysobject.Nodestatic method), 112

check_session() (aci-toolkit.aciphysobject.PhysicalModel staticmethod), 118

check_session() (acitoolkit.aciphysobject.Podstatic method), 123

check_session() (aci-toolkit.aciphysobject.Powersupply staticmethod), 129

check_session() (acitoolkit.aciphysobject.Processstatic method), 135

check_session() (aci-toolkit.aciphysobject.Supervisorcard staticmethod), 141

check_session() (aci-toolkit.aciphysobject.Systemcontroller staticmethod), 148

check_session() (acitoolkit.acitoolkit.AnyEPGstatic method), 157

check_session() (acitoolkit.acitoolkit.AppProfilestatic method), 164

check_session() (aci-toolkit.acitoolkit.AttributeCriterion staticmethod), 170

check_session() (aci-toolkit.acitoolkit.BaseContract static method),181

check_session() (acitoolkit.acitoolkit.BaseSubnetstatic method), 188

check_session() (aci-toolkit.acitoolkit.BaseTerminal static method),194

check_session() (acitoolkit.acitoolkit.BGPSessionstatic method), 176

check_session() (aci-toolkit.acitoolkit.BridgeDomain static method),199

check_session() (aci-toolkit.acitoolkit.CommonEPG static method),208

check_session() (acitoolkit.acitoolkit.Contextstatic method), 216

check_session() (acitoolkit.acitoolkit.Contractstatic method), 221

check_session() (aci-

toolkit.acitoolkit.ContractInterface staticmethod), 227

check_session() (aci-toolkit.acitoolkit.ContractSubject staticmethod), 233

check_session() (acitoolkit.acitoolkit.Endpointstatic method), 252

check_session() (acitoolkit.acitoolkit.EPG staticmethod), 239

check_session() (acitoolkit.acitoolkit.EPGDomainstatic method), 247

check_session() (acitoolkit.acitoolkit.FexInterfacestatic method), 258

check_session() (acitoolkit.acitoolkit.Filter staticmethod), 263

check_session() (acitoolkit.acitoolkit.FilterEntrystatic method), 270

check_session() (aci-toolkit.acitoolkit.InputTerminal static method),281

check_session() (acitoolkit.acitoolkit.IPEndpointstatic method), 275

check_session() (aci-toolkit.acitoolkit.L2ExtDomain static method),286

check_session() (acitoolkit.acitoolkit.L2Interfacestatic method), 292

check_session() (aci-toolkit.acitoolkit.L3ExtDomain static method),298

check_session() (acitoolkit.acitoolkit.L3Interfacestatic method), 303

check_session() (aci-toolkit.acitoolkit.LogicalModel static method),309

check_session() (acitoolkit.acitoolkit.NetworkPoolstatic method), 319

check_session() (aci-toolkit.acitoolkit.OSPFInterface staticmethod), 325

check_session() (aci-toolkit.acitoolkit.OSPFInterfacePolicy staticmethod), 330

check_session() (acitoolkit.acitoolkit.OSPFRouterstatic method), 336

check_session() (aci-toolkit.acitoolkit.OutputTerminal staticmethod), 341

check_session() (acitoolkit.acitoolkit.OutsideEPGstatic method), 347

check_session() (acitoolkit.acitoolkit.OutsideL2static method), 354

check_session() (aci-toolkit.acitoolkit.OutsideL2EPG static

504 Index

acitoolkit Documentation, Release 0.1

method), 360check_session() (acitoolkit.acitoolkit.OutsideL3

static method), 367check_session() (aci-

toolkit.acitoolkit.OutsideNetwork staticmethod), 373

check_session() (acitoolkit.acitoolkit.PhysDomainstatic method), 379

check_session() (acitoolkit.acitoolkit.PortChannelstatic method), 385

check_session() (acitoolkit.acitoolkit.Search staticmethod), 391

check_session() (acitoolkit.acitoolkit.Subnet staticmethod), 396

check_session() (acitoolkit.acitoolkit.Taboo staticmethod), 402

check_session() (acitoolkit.acitoolkit.Tag staticmethod), 408

check_session() (acitoolkit.acitoolkit.Tenant staticmethod), 413

check_session() (acitoolkit.acitoolkit.VMM staticmethod), 419

check_session() (aci-toolkit.acitoolkit.VMMCredentials staticmethod), 425

check_session() (acitoolkit.acitoolkit.VmmDomainstatic method), 431

close() (acitoolkit.acisession.Session method), 155Cluster (class in acitoolkit.aciphysobject), 62CollectionPolicy (class in acitoolkit.acitoolkit),

206CommonEPG (class in acitoolkit.acitoolkit), 208consume() (acitoolkit.acitoolkit.AnyEPG method), 157consume() (acitoolkit.acitoolkit.CommonEPG

method), 208consume() (acitoolkit.acitoolkit.EPG method), 239consume() (acitoolkit.acitoolkit.OutsideEPG method),

347consume() (acitoolkit.acitoolkit.OutsideL2EPG

method), 360consume_cif() (acitoolkit.acitoolkit.AnyEPG

method), 157consume_cif() (acitoolkit.acitoolkit.CommonEPG

method), 209consume_cif() (acitoolkit.acitoolkit.EPG method),

239consume_cif() (acitoolkit.acitoolkit.OutsideEPG

method), 347consume_cif() (acitoolkit.acitoolkit.OutsideL2EPG

method), 360Context (class in acitoolkit.acitoolkit), 215Contract (class in acitoolkit.acitoolkit), 221ContractInterface (class in acitoolkit.acitoolkit),

226

ContractSubject (class in acitoolkit.acitoolkit), 232CpLink (class in cableplan), 451CpPort (class in cableplan), 451CpSwitch (class in cableplan), 453create_from_apic_json() (aci-

toolkit.acitoolkit.FilterEntry class method),270

create_from_dn() (aci-toolkit.acitoolkit.PortChannel class method),385

create_from_name() (aci-toolkit.aciphysobject.Interface class method),91

Credentials (class in acitoolkit.acitoolkitlib), 436

Ddelete_link() (cableplan.CABLEPLAN method),

454delete_switch() (cableplan.CABLEPLAN method),

454delete_tag() (aci-

toolkit.acibaseobject.BaseACIObject method),54

delete_tag() (acitoolkit.aciphysobject.Clustermethod), 62

delete_tag() (aci-toolkit.aciphysobject.ExternalSwitch method),68

delete_tag() (acitoolkit.aciphysobject.Fabricmethod), 74

delete_tag() (acitoolkit.aciphysobject.Fan method),79

delete_tag() (acitoolkit.aciphysobject.Fantraymethod), 85

delete_tag() (acitoolkit.aciphysobject.Interfacemethod), 91

delete_tag() (acitoolkit.aciphysobject.Linecardmethod), 99

delete_tag() (acitoolkit.aciphysobject.Linkmethod), 105

delete_tag() (acitoolkit.aciphysobject.Nodemethod), 112

delete_tag() (aci-toolkit.aciphysobject.PhysicalModel method),118

delete_tag() (acitoolkit.aciphysobject.Pod method),124

delete_tag() (acitoolkit.aciphysobject.Powersupplymethod), 129

delete_tag() (acitoolkit.aciphysobject.Processmethod), 136

delete_tag() (aci-toolkit.aciphysobject.Supervisorcard method),142

Index 505

acitoolkit Documentation, Release 0.1

delete_tag() (aci-toolkit.aciphysobject.Systemcontrollermethod), 148

delete_tag() (acitoolkit.acitoolkit.AnyEPGmethod), 158

delete_tag() (acitoolkit.acitoolkit.AppProfilemethod), 164

delete_tag() (aci-toolkit.acitoolkit.AttributeCriterion method),170

delete_tag() (acitoolkit.acitoolkit.BaseContractmethod), 181

delete_tag() (acitoolkit.acitoolkit.BaseSubnetmethod), 188

delete_tag() (acitoolkit.acitoolkit.BaseTerminalmethod), 194

delete_tag() (acitoolkit.acitoolkit.BGPSessionmethod), 176

delete_tag() (acitoolkit.acitoolkit.BridgeDomainmethod), 200

delete_tag() (acitoolkit.acitoolkit.CommonEPGmethod), 209

delete_tag() (acitoolkit.acitoolkit.Context method),216

delete_tag() (acitoolkit.acitoolkit.Contractmethod), 221

delete_tag() (acitoolkit.acitoolkit.ContractInterfacemethod), 227

delete_tag() (acitoolkit.acitoolkit.ContractSubjectmethod), 233

delete_tag() (acitoolkit.acitoolkit.Endpointmethod), 252

delete_tag() (acitoolkit.acitoolkit.EPG method),239

delete_tag() (acitoolkit.acitoolkit.EPGDomainmethod), 247

delete_tag() (acitoolkit.acitoolkit.FexInterfacemethod), 258

delete_tag() (acitoolkit.acitoolkit.Filter method),264

delete_tag() (acitoolkit.acitoolkit.FilterEntrymethod), 270

delete_tag() (acitoolkit.acitoolkit.InputTerminalmethod), 281

delete_tag() (acitoolkit.acitoolkit.IPEndpointmethod), 275

delete_tag() (acitoolkit.acitoolkit.L2ExtDomainmethod), 286

delete_tag() (acitoolkit.acitoolkit.L2Interfacemethod), 292

delete_tag() (acitoolkit.acitoolkit.L3ExtDomainmethod), 298

delete_tag() (acitoolkit.acitoolkit.L3Interfacemethod), 303

delete_tag() (acitoolkit.acitoolkit.LogicalModelmethod), 309

delete_tag() (acitoolkit.acitoolkit.NetworkPoolmethod), 319

delete_tag() (acitoolkit.acitoolkit.OSPFInterfacemethod), 325

delete_tag() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 330

delete_tag() (acitoolkit.acitoolkit.OSPFRoutermethod), 336

delete_tag() (acitoolkit.acitoolkit.OutputTerminalmethod), 342

delete_tag() (acitoolkit.acitoolkit.OutsideEPGmethod), 347

delete_tag() (acitoolkit.acitoolkit.OutsideL2method), 354

delete_tag() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 360

delete_tag() (acitoolkit.acitoolkit.OutsideL3method), 367

delete_tag() (acitoolkit.acitoolkit.OutsideNetworkmethod), 373

delete_tag() (acitoolkit.acitoolkit.PhysDomainmethod), 379

delete_tag() (acitoolkit.acitoolkit.PortChannelmethod), 385

delete_tag() (acitoolkit.acitoolkit.Search method),391

delete_tag() (acitoolkit.acitoolkit.Subnet method),396

delete_tag() (acitoolkit.acitoolkit.Taboo method),402

delete_tag() (acitoolkit.acitoolkit.Tag method), 408delete_tag() (acitoolkit.acitoolkit.Tenant method),

414delete_tag() (acitoolkit.acitoolkit.VMM method),

419delete_tag() (acitoolkit.acitoolkit.VMMCredentials

method), 425delete_tag() (acitoolkit.acitoolkit.VmmDomain

method), 431deregister_login_callback() (aci-

toolkit.acisession.Session method), 155detach() (acitoolkit.acibaseobject.BaseACIObject

method), 54detach() (acitoolkit.aciphysobject.Cluster method),

63detach() (acitoolkit.aciphysobject.ExternalSwitch

method), 68detach() (acitoolkit.aciphysobject.Fabric method), 74detach() (acitoolkit.aciphysobject.Fan method), 79detach() (acitoolkit.aciphysobject.Fantray method),

86

506 Index

acitoolkit Documentation, Release 0.1

detach() (acitoolkit.aciphysobject.Interface method),92

detach() (acitoolkit.aciphysobject.Linecard method),99

detach() (acitoolkit.aciphysobject.Link method), 105detach() (acitoolkit.aciphysobject.Node method), 112detach() (acitoolkit.aciphysobject.PhysicalModel

method), 118detach() (acitoolkit.aciphysobject.Pod method), 124detach() (acitoolkit.aciphysobject.Powersupply

method), 130detach() (acitoolkit.aciphysobject.Process method),

136detach() (acitoolkit.aciphysobject.Supervisorcard

method), 142detach() (acitoolkit.aciphysobject.Systemcontroller

method), 148detach() (acitoolkit.acitoolkit.AnyEPG method), 158detach() (acitoolkit.acitoolkit.AppProfile method),

165detach() (acitoolkit.acitoolkit.AttributeCriterion

method), 170detach() (acitoolkit.acitoolkit.BaseContract method),

181detach() (acitoolkit.acitoolkit.BaseSubnet method),

188detach() (acitoolkit.acitoolkit.BaseTerminal method),

194detach() (acitoolkit.acitoolkit.BGPSession method),

176detach() (acitoolkit.acitoolkit.BridgeDomain

method), 200detach() (acitoolkit.acitoolkit.CommonEPG method),

209detach() (acitoolkit.acitoolkit.Context method), 216detach() (acitoolkit.acitoolkit.Contract method), 221detach() (acitoolkit.acitoolkit.ContractInterface

method), 227detach() (acitoolkit.acitoolkit.ContractSubject

method), 233detach() (acitoolkit.acitoolkit.Endpoint method), 252detach() (acitoolkit.acitoolkit.EPG method), 239detach() (acitoolkit.acitoolkit.EPGDomain method),

247detach() (acitoolkit.acitoolkit.FexInterface method),

258detach() (acitoolkit.acitoolkit.Filter method), 264detach() (acitoolkit.acitoolkit.FilterEntry method),

270detach() (acitoolkit.acitoolkit.InputTerminal method),

281detach() (acitoolkit.acitoolkit.IPEndpoint method),

275detach() (acitoolkit.acitoolkit.L2ExtDomain method),

286detach() (acitoolkit.acitoolkit.L2Interface method),

292detach() (acitoolkit.acitoolkit.L3ExtDomain method),

298detach() (acitoolkit.acitoolkit.L3Interface method),

303detach() (acitoolkit.acitoolkit.LogicalModel method),

309detach() (acitoolkit.acitoolkit.NetworkPool method),

319detach() (acitoolkit.acitoolkit.OSPFInterface

method), 325detach() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 330detach() (acitoolkit.acitoolkit.OSPFRouter method),

336detach() (acitoolkit.acitoolkit.OutputTerminal

method), 342detach() (acitoolkit.acitoolkit.OutsideEPG method),

347detach() (acitoolkit.acitoolkit.OutsideL2 method),

355detach() (acitoolkit.acitoolkit.OutsideL2EPG

method), 360detach() (acitoolkit.acitoolkit.OutsideL3 method),

368detach() (acitoolkit.acitoolkit.OutsideNetwork

method), 373detach() (acitoolkit.acitoolkit.PhysDomain method),

379detach() (acitoolkit.acitoolkit.PortChannel method),

385detach() (acitoolkit.acitoolkit.Search method), 391detach() (acitoolkit.acitoolkit.Subnet method), 397detach() (acitoolkit.acitoolkit.Taboo method), 402detach() (acitoolkit.acitoolkit.Tag method), 408detach() (acitoolkit.acitoolkit.Tenant method), 414detach() (acitoolkit.acitoolkit.VMM method), 419detach() (acitoolkit.acitoolkit.VMMCredentials

method), 425detach() (acitoolkit.acitoolkit.VmmDomain method),

431difference_link() (cableplan.CABLEPLAN

method), 454difference_switch() (cableplan.CABLEPLAN

method), 454disable_cdp() (acitoolkit.aciphysobject.Interface

method), 92disable_lldp() (acitoolkit.aciphysobject.Interface

method), 92does_consume() (acitoolkit.acitoolkit.AnyEPG

method), 158does_consume() (acitoolkit.acitoolkit.CommonEPG

Index 507

acitoolkit Documentation, Release 0.1

method), 209does_consume() (acitoolkit.acitoolkit.EPG method),

239does_consume() (acitoolkit.acitoolkit.OutsideEPG

method), 348does_consume() (aci-

toolkit.acitoolkit.OutsideL2EPG method),361

does_consume_cif() (acitoolkit.acitoolkit.AnyEPGmethod), 158

does_consume_cif() (aci-toolkit.acitoolkit.CommonEPG method),209

does_consume_cif() (acitoolkit.acitoolkit.EPGmethod), 239

does_consume_cif() (aci-toolkit.acitoolkit.OutsideEPG method), 348

does_consume_cif() (aci-toolkit.acitoolkit.OutsideL2EPG method),361

does_import_contract() (aci-toolkit.acitoolkit.ContractInterface method),227

does_protect() (acitoolkit.acitoolkit.AnyEPGmethod), 158

does_protect() (acitoolkit.acitoolkit.CommonEPGmethod), 209

does_protect() (acitoolkit.acitoolkit.EPG method),240

does_protect() (acitoolkit.acitoolkit.OutsideEPGmethod), 348

does_protect() (aci-toolkit.acitoolkit.OutsideL2EPG method),361

does_provide() (acitoolkit.acitoolkit.AnyEPGmethod), 158

does_provide() (acitoolkit.acitoolkit.CommonEPGmethod), 209

does_provide() (acitoolkit.acitoolkit.EPG method),240

does_provide() (acitoolkit.acitoolkit.OutsideEPGmethod), 348

does_provide() (aci-toolkit.acitoolkit.OutsideL2EPG method),361

dont_consume() (acitoolkit.acitoolkit.AnyEPGmethod), 158

dont_consume() (acitoolkit.acitoolkit.CommonEPGmethod), 209

dont_consume() (acitoolkit.acitoolkit.EPG method),240

dont_consume() (acitoolkit.acitoolkit.OutsideEPGmethod), 348

dont_consume() (aci-

toolkit.acitoolkit.OutsideL2EPG method),361

dont_consume_cif() (acitoolkit.acitoolkit.AnyEPGmethod), 158

dont_consume_cif() (aci-toolkit.acitoolkit.CommonEPG method),209

dont_consume_cif() (acitoolkit.acitoolkit.EPGmethod), 240

dont_consume_cif() (aci-toolkit.acitoolkit.OutsideEPG method), 348

dont_consume_cif() (aci-toolkit.acitoolkit.OutsideL2EPG method),361

dont_protect() (acitoolkit.acitoolkit.AnyEPGmethod), 158

dont_protect() (acitoolkit.acitoolkit.CommonEPGmethod), 209

dont_protect() (acitoolkit.acitoolkit.EPG method),240

dont_protect() (acitoolkit.acitoolkit.OutsideEPGmethod), 348

dont_protect() (aci-toolkit.acitoolkit.OutsideL2EPG method),361

dont_provide() (acitoolkit.acitoolkit.AnyEPGmethod), 158

dont_provide() (acitoolkit.acitoolkit.CommonEPGmethod), 210

dont_provide() (acitoolkit.acitoolkit.EPG method),240

dont_provide() (acitoolkit.acitoolkit.OutsideEPGmethod), 348

dont_provide() (aci-toolkit.acitoolkit.OutsideL2EPG method),361

Eenable_cdp() (acitoolkit.aciphysobject.Interface

method), 92enable_lldp() (acitoolkit.aciphysobject.Interface

method), 92Endpoint (class in acitoolkit.acitoolkit), 252EPG (class in acitoolkit.acitoolkit), 238EPGDomain (class in acitoolkit.acitoolkit), 246exists() (acitoolkit.acibaseobject.BaseACIPhysObject

class method), 59exists() (acitoolkit.aciphysobject.ExternalSwitch

class method), 68exists() (acitoolkit.aciphysobject.Fan class method),

79exists() (acitoolkit.aciphysobject.Fantray class

method), 86

508 Index

acitoolkit Documentation, Release 0.1

exists() (acitoolkit.aciphysobject.Linecard classmethod), 99

exists() (acitoolkit.aciphysobject.Link class method),105

exists() (acitoolkit.aciphysobject.Node classmethod), 112

exists() (acitoolkit.aciphysobject.Pod class method),124

exists() (acitoolkit.aciphysobject.Powersupply classmethod), 130

exists() (acitoolkit.aciphysobject.Process classmethod), 136

exists() (acitoolkit.aciphysobject.Supervisorcardclass method), 142

exists() (acitoolkit.aciphysobject.Systemcontrollerclass method), 148

exists() (acitoolkit.acitoolkit.Tenant class method),414

exists_link() (cableplan.CABLEPLAN method),454

exists_switch() (cableplan.CABLEPLAN method),454

export() (cableplan.CABLEPLAN method), 454export() (cableplan.CpLink method), 451export() (cableplan.CpSwitch method), 453export_data_center() (cableplan.CABLEPLAN

method), 454ExternalSwitch (class in acitoolkit.aciphysobject),

67

FFabric (class in acitoolkit.aciphysobject), 74Fan (class in acitoolkit.aciphysobject), 79Fantray (class in acitoolkit.aciphysobject), 85Faults (class in acitoolkit.aciFaults), 437FexInterface (class in acitoolkit.acitoolkit), 258Filter (class in acitoolkit.acitoolkit), 263FilterEntry (class in acitoolkit.acitoolkit), 269find() (acitoolkit.acibaseobject.BaseACIObject

method), 54find() (acitoolkit.aciphysobject.Cluster method), 63find() (acitoolkit.aciphysobject.ExternalSwitch

method), 68find() (acitoolkit.aciphysobject.Fabric method), 74find() (acitoolkit.aciphysobject.Fan method), 80find() (acitoolkit.aciphysobject.Fantray method), 86find() (acitoolkit.aciphysobject.Interface method), 92find() (acitoolkit.aciphysobject.Linecard method), 99find() (acitoolkit.aciphysobject.Link method), 105find() (acitoolkit.aciphysobject.Node method), 112find() (acitoolkit.aciphysobject.PhysicalModel

method), 118find() (acitoolkit.aciphysobject.Pod method), 124

find() (acitoolkit.aciphysobject.Powersupply method),130

find() (acitoolkit.aciphysobject.Process method), 136find() (acitoolkit.aciphysobject.Supervisorcard

method), 142find() (acitoolkit.aciphysobject.Systemcontroller

method), 148find() (acitoolkit.acitoolkit.AnyEPG method), 159find() (acitoolkit.acitoolkit.AppProfile method), 165find() (acitoolkit.acitoolkit.AttributeCriterion

method), 170find() (acitoolkit.acitoolkit.BaseContract method),

181find() (acitoolkit.acitoolkit.BaseSubnet method), 188find() (acitoolkit.acitoolkit.BaseTerminal method),

194find() (acitoolkit.acitoolkit.BGPSession method), 176find() (acitoolkit.acitoolkit.BridgeDomain method),

200find() (acitoolkit.acitoolkit.CommonEPG method),

210find() (acitoolkit.acitoolkit.Context method), 216find() (acitoolkit.acitoolkit.Contract method), 221find() (acitoolkit.acitoolkit.ContractInterface

method), 227find() (acitoolkit.acitoolkit.ContractSubject method),

233find() (acitoolkit.acitoolkit.Endpoint method), 252find() (acitoolkit.acitoolkit.EPG method), 240find() (acitoolkit.acitoolkit.EPGDomain method), 247find() (acitoolkit.acitoolkit.FexInterface method), 258find() (acitoolkit.acitoolkit.Filter method), 264find() (acitoolkit.acitoolkit.FilterEntry method), 270find() (acitoolkit.acitoolkit.InputTerminal method),

281find() (acitoolkit.acitoolkit.IPEndpoint method), 275find() (acitoolkit.acitoolkit.L2ExtDomain method),

287find() (acitoolkit.acitoolkit.L2Interface method), 292find() (acitoolkit.acitoolkit.L3ExtDomain method),

298find() (acitoolkit.acitoolkit.L3Interface method), 303find() (acitoolkit.acitoolkit.LogicalModel method),

310find() (acitoolkit.acitoolkit.NetworkPool method), 320find() (acitoolkit.acitoolkit.OSPFInterface method),

325find() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 330find() (acitoolkit.acitoolkit.OSPFRouter method), 336find() (acitoolkit.acitoolkit.OutputTerminal method),

342find() (acitoolkit.acitoolkit.OutsideEPG method), 348find() (acitoolkit.acitoolkit.OutsideL2 method), 355

Index 509

acitoolkit Documentation, Release 0.1

find() (acitoolkit.acitoolkit.OutsideL2EPG method),361

find() (acitoolkit.acitoolkit.OutsideL3 method), 368find() (acitoolkit.acitoolkit.OutsideNetwork method),

373find() (acitoolkit.acitoolkit.PhysDomain method), 379find() (acitoolkit.acitoolkit.PortChannel method), 385find() (acitoolkit.acitoolkit.Search method), 391find() (acitoolkit.acitoolkit.Subnet method), 397find() (acitoolkit.acitoolkit.Taboo method), 403find() (acitoolkit.acitoolkit.Tag method), 408find() (acitoolkit.acitoolkit.Tenant method), 414find() (acitoolkit.acitoolkit.VMM method), 420find() (acitoolkit.acitoolkit.VMMCredentials method),

425find() (acitoolkit.acitoolkit.VmmDomain method), 431flat() (acitoolkit.acitoolkit.MonitorPolicy method),

315

Gget() (acitoolkit.acibaseobject.BaseACIObject class

method), 54get() (acitoolkit.aciphysobject.Cluster class method),

63get() (acitoolkit.aciphysobject.ExternalSwitch class

method), 69get() (acitoolkit.aciphysobject.Fabric class method),

74get() (acitoolkit.aciphysobject.Fan class method), 80get() (acitoolkit.aciphysobject.Fantray class method),

86get() (acitoolkit.aciphysobject.Interface class method),

92get() (acitoolkit.aciphysobject.Linecard class method),

99get() (acitoolkit.aciphysobject.Link class method), 106get() (acitoolkit.aciphysobject.Node class method),

113get() (acitoolkit.aciphysobject.PhysicalModel class

method), 119get() (acitoolkit.aciphysobject.Pod class method), 124get() (acitoolkit.aciphysobject.Powersupply class

method), 130get() (acitoolkit.aciphysobject.Process class method),

136get() (acitoolkit.aciphysobject.Supervisorcard class

method), 142get() (acitoolkit.aciphysobject.Systemcontroller class

method), 148get() (acitoolkit.acisession.Session method), 155get() (acitoolkit.acitoolkit.AnyEPG class method), 159get() (acitoolkit.acitoolkit.AppProfile class method),

165

get() (acitoolkit.acitoolkit.AttributeCriterion classmethod), 170

get() (acitoolkit.acitoolkit.BaseContract classmethod), 182

get() (acitoolkit.acitoolkit.BaseSubnet class method),188

get() (acitoolkit.acitoolkit.BaseTerminal classmethod), 194

get() (acitoolkit.acitoolkit.BGPSession class method),176

get() (acitoolkit.acitoolkit.BridgeDomain classmethod), 200

get() (acitoolkit.acitoolkit.CommonEPG classmethod), 210

get() (acitoolkit.acitoolkit.Context class method), 216get() (acitoolkit.acitoolkit.Contract class method), 222get() (acitoolkit.acitoolkit.ContractInterface class

method), 228get() (acitoolkit.acitoolkit.ContractSubject class

method), 233get() (acitoolkit.acitoolkit.Endpoint static method),

253get() (acitoolkit.acitoolkit.EPG class method), 240get() (acitoolkit.acitoolkit.EPGDomain class method),

247get() (acitoolkit.acitoolkit.FexInterface class method),

258get() (acitoolkit.acitoolkit.Filter class method), 264get() (acitoolkit.acitoolkit.FilterEntry class method),

270get() (acitoolkit.acitoolkit.InputTerminal class

method), 281get() (acitoolkit.acitoolkit.IPEndpoint static method),

276get() (acitoolkit.acitoolkit.L2ExtDomain class

method), 287get() (acitoolkit.acitoolkit.L2Interface class method),

292get() (acitoolkit.acitoolkit.L3ExtDomain class

method), 298get() (acitoolkit.acitoolkit.L3Interface class method),

304get() (acitoolkit.acitoolkit.LogicalModel class

method), 310get() (acitoolkit.acitoolkit.MonitorPolicy class

method), 316get() (acitoolkit.acitoolkit.NetworkPool class method),

320get() (acitoolkit.acitoolkit.OSPFInterface class

method), 325get() (acitoolkit.acitoolkit.OSPFInterfacePolicy class

method), 331get() (acitoolkit.acitoolkit.OSPFRouter class method),

336

510 Index

acitoolkit Documentation, Release 0.1

get() (acitoolkit.acitoolkit.OutputTerminal classmethod), 342

get() (acitoolkit.acitoolkit.OutsideEPG class method),349

get() (acitoolkit.acitoolkit.OutsideL2 class method),355

get() (acitoolkit.acitoolkit.OutsideL2EPG classmethod), 362

get() (acitoolkit.acitoolkit.OutsideL3 class method),368

get() (acitoolkit.acitoolkit.OutsideNetwork classmethod), 374

get() (acitoolkit.acitoolkit.PhysDomain class method),380

get() (acitoolkit.acitoolkit.PortChannel static method),386

get() (acitoolkit.acitoolkit.Search class method), 391get() (acitoolkit.acitoolkit.Subnet class method), 397get() (acitoolkit.acitoolkit.Taboo class method), 403get() (acitoolkit.acitoolkit.Tag class method), 408get() (acitoolkit.acitoolkit.Tenant class method), 414get() (acitoolkit.acitoolkit.VMM class method), 420get() (acitoolkit.acitoolkit.VMMCredentials class

method), 425get() (acitoolkit.acitoolkit.VmmDomain class method),

431get() (acitoolkit.acitoolkitlib.Credentials method), 436get() (cableplan.CABLEPLAN class method), 454get_addr() (acitoolkit.acitoolkit.BaseSubnet

method), 188get_addr() (acitoolkit.acitoolkit.L3Interface

method), 304get_addr() (acitoolkit.acitoolkit.OutsideNetwork

method), 374get_addr() (acitoolkit.acitoolkit.Subnet method), 397get_adjacent_port() (aci-

toolkit.aciphysobject.Interface method),92

get_all_attached() (aci-toolkit.acibaseobject.BaseACIObject method),54

get_all_attached() (aci-toolkit.aciphysobject.Cluster method), 63

get_all_attached() (aci-toolkit.aciphysobject.ExternalSwitch method),69

get_all_attached() (aci-toolkit.aciphysobject.Fabric method), 75

get_all_attached() (acitoolkit.aciphysobject.Fanmethod), 80

get_all_attached() (aci-toolkit.aciphysobject.Fantray method), 86

get_all_attached() (aci-toolkit.aciphysobject.Interface method),

93get_all_attached() (aci-

toolkit.aciphysobject.Linecard method),100

get_all_attached() (acitoolkit.aciphysobject.Linkmethod), 106

get_all_attached() (aci-toolkit.aciphysobject.Node method), 113

get_all_attached() (aci-toolkit.aciphysobject.PhysicalModel method),119

get_all_attached() (acitoolkit.aciphysobject.Podmethod), 124

get_all_attached() (aci-toolkit.aciphysobject.Powersupply method),130

get_all_attached() (aci-toolkit.aciphysobject.Process method), 136

get_all_attached() (aci-toolkit.aciphysobject.Supervisorcard method),142

get_all_attached() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149

get_all_attached() (acitoolkit.acitoolkit.AnyEPGmethod), 159

get_all_attached() (aci-toolkit.acitoolkit.AppProfile method), 165

get_all_attached() (aci-toolkit.acitoolkit.AttributeCriterion method),171

get_all_attached() (aci-toolkit.acitoolkit.BaseContract method),182

get_all_attached() (aci-toolkit.acitoolkit.BaseSubnet method), 189

get_all_attached() (aci-toolkit.acitoolkit.BaseTerminal method),194

get_all_attached() (aci-toolkit.acitoolkit.BGPSession method), 176

get_all_attached() (aci-toolkit.acitoolkit.BridgeDomain method),200

get_all_attached() (aci-toolkit.acitoolkit.CommonEPG method),210

get_all_attached() (acitoolkit.acitoolkit.Contextmethod), 216

get_all_attached() (acitoolkit.acitoolkit.Contractmethod), 222

get_all_attached() (aci-toolkit.acitoolkit.ContractInterface method),228

Index 511

acitoolkit Documentation, Release 0.1

get_all_attached() (aci-toolkit.acitoolkit.ContractSubject method),233

get_all_attached() (aci-toolkit.acitoolkit.Endpoint method), 253

get_all_attached() (acitoolkit.acitoolkit.EPGmethod), 241

get_all_attached() (aci-toolkit.acitoolkit.EPGDomain method), 247

get_all_attached() (aci-toolkit.acitoolkit.FexInterface method), 259

get_all_attached() (acitoolkit.acitoolkit.Filtermethod), 264

get_all_attached() (aci-toolkit.acitoolkit.FilterEntry method), 271

get_all_attached() (aci-toolkit.acitoolkit.InputTerminal method),282

get_all_attached() (aci-toolkit.acitoolkit.IPEndpoint method), 276

get_all_attached() (aci-toolkit.acitoolkit.L2ExtDomain method),287

get_all_attached() (aci-toolkit.acitoolkit.L2Interface method), 293

get_all_attached() (aci-toolkit.acitoolkit.L3ExtDomain method),298

get_all_attached() (aci-toolkit.acitoolkit.L3Interface method), 304

get_all_attached() (aci-toolkit.acitoolkit.LogicalModel method),310

get_all_attached() (aci-toolkit.acitoolkit.NetworkPool method), 320

get_all_attached() (aci-toolkit.acitoolkit.OSPFInterface method),326

get_all_attached() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 331

get_all_attached() (aci-toolkit.acitoolkit.OSPFRouter method), 337

get_all_attached() (aci-toolkit.acitoolkit.OutputTerminal method),342

get_all_attached() (aci-toolkit.acitoolkit.OutsideEPG method), 349

get_all_attached() (aci-toolkit.acitoolkit.OutsideL2 method), 355

get_all_attached() (aci-toolkit.acitoolkit.OutsideL2EPG method),362

get_all_attached() (aci-

toolkit.acitoolkit.OutsideL3 method), 368get_all_attached() (aci-

toolkit.acitoolkit.OutsideNetwork method),374

get_all_attached() (aci-toolkit.acitoolkit.PhysDomain method), 380

get_all_attached() (aci-toolkit.acitoolkit.PortChannel method), 386

get_all_attached() (acitoolkit.acitoolkit.Searchmethod), 391

get_all_attached() (acitoolkit.acitoolkit.Subnetmethod), 397

get_all_attached() (acitoolkit.acitoolkit.Taboomethod), 403

get_all_attached() (acitoolkit.acitoolkit.Tagmethod), 409

get_all_attached() (acitoolkit.acitoolkit.Tenantmethod), 414

get_all_attached() (acitoolkit.acitoolkit.VMMmethod), 420

get_all_attached() (aci-toolkit.acitoolkit.VMMCredentials method),426

get_all_attached() (aci-toolkit.acitoolkit.VmmDomain method),431

get_all_attachments() (aci-toolkit.acibaseobject.BaseACIObject method),54

get_all_attachments() (aci-toolkit.aciphysobject.Cluster method), 63

get_all_attachments() (aci-toolkit.aciphysobject.ExternalSwitch method),69

get_all_attachments() (aci-toolkit.aciphysobject.Fabric method), 75

get_all_attachments() (aci-toolkit.aciphysobject.Fan method), 80

get_all_attachments() (aci-toolkit.aciphysobject.Fantray method), 86

get_all_attachments() (aci-toolkit.aciphysobject.Interface method),93

get_all_attachments() (aci-toolkit.aciphysobject.Linecard method),100

get_all_attachments() (aci-toolkit.aciphysobject.Link method), 106

get_all_attachments() (aci-toolkit.aciphysobject.Node method), 113

get_all_attachments() (aci-toolkit.aciphysobject.PhysicalModel method),119

get_all_attachments() (aci-

512 Index

acitoolkit Documentation, Release 0.1

toolkit.aciphysobject.Pod method), 124get_all_attachments() (aci-

toolkit.aciphysobject.Powersupply method),130

get_all_attachments() (aci-toolkit.aciphysobject.Process method), 136

get_all_attachments() (aci-toolkit.aciphysobject.Supervisorcard method),143

get_all_attachments() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149

get_all_attachments() (aci-toolkit.acitoolkit.AnyEPG method), 159

get_all_attachments() (aci-toolkit.acitoolkit.AppProfile method), 165

get_all_attachments() (aci-toolkit.acitoolkit.AttributeCriterion method),171

get_all_attachments() (aci-toolkit.acitoolkit.BaseContract method),182

get_all_attachments() (aci-toolkit.acitoolkit.BaseSubnet method), 189

get_all_attachments() (aci-toolkit.acitoolkit.BaseTerminal method),195

get_all_attachments() (aci-toolkit.acitoolkit.BGPSession method), 176

get_all_attachments() (aci-toolkit.acitoolkit.BridgeDomain method),200

get_all_attachments() (aci-toolkit.acitoolkit.CommonEPG method),210

get_all_attachments() (aci-toolkit.acitoolkit.Context method), 216

get_all_attachments() (aci-toolkit.acitoolkit.Contract method), 222

get_all_attachments() (aci-toolkit.acitoolkit.ContractInterface method),228

get_all_attachments() (aci-toolkit.acitoolkit.ContractSubject method),234

get_all_attachments() (aci-toolkit.acitoolkit.Endpoint method), 253

get_all_attachments() (aci-toolkit.acitoolkit.EPG method), 241

get_all_attachments() (aci-toolkit.acitoolkit.EPGDomain method), 248

get_all_attachments() (aci-toolkit.acitoolkit.FexInterface method), 259

get_all_attachments() (aci-

toolkit.acitoolkit.Filter method), 264get_all_attachments() (aci-

toolkit.acitoolkit.FilterEntry method), 271get_all_attachments() (aci-

toolkit.acitoolkit.InputTerminal method),282

get_all_attachments() (aci-toolkit.acitoolkit.IPEndpoint method), 276

get_all_attachments() (aci-toolkit.acitoolkit.L2ExtDomain method),287

get_all_attachments() (aci-toolkit.acitoolkit.L2Interface method), 293

get_all_attachments() (aci-toolkit.acitoolkit.L3ExtDomain method),298

get_all_attachments() (aci-toolkit.acitoolkit.L3Interface method), 304

get_all_attachments() (aci-toolkit.acitoolkit.LogicalModel method),310

get_all_attachments() (aci-toolkit.acitoolkit.NetworkPool method), 320

get_all_attachments() (aci-toolkit.acitoolkit.OSPFInterface method),326

get_all_attachments() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 331

get_all_attachments() (aci-toolkit.acitoolkit.OSPFRouter method), 337

get_all_attachments() (aci-toolkit.acitoolkit.OutputTerminal method),342

get_all_attachments() (aci-toolkit.acitoolkit.OutsideEPG method), 349

get_all_attachments() (aci-toolkit.acitoolkit.OutsideL2 method), 355

get_all_attachments() (aci-toolkit.acitoolkit.OutsideL2EPG method),362

get_all_attachments() (aci-toolkit.acitoolkit.OutsideL3 method), 368

get_all_attachments() (aci-toolkit.acitoolkit.OutsideNetwork method),374

get_all_attachments() (aci-toolkit.acitoolkit.PhysDomain method), 380

get_all_attachments() (aci-toolkit.acitoolkit.PortChannel method), 386

get_all_attachments() (aci-toolkit.acitoolkit.Search method), 392

get_all_attachments() (aci-toolkit.acitoolkit.Subnet method), 397

Index 513

acitoolkit Documentation, Release 0.1

get_all_attachments() (aci-toolkit.acitoolkit.Taboo method), 403

get_all_attachments() (acitoolkit.acitoolkit.Tagmethod), 409

get_all_attachments() (aci-toolkit.acitoolkit.Tenant method), 414

get_all_attachments() (aci-toolkit.acitoolkit.VMM method), 420

get_all_attachments() (aci-toolkit.acitoolkit.VMMCredentials method),426

get_all_attachments() (aci-toolkit.acitoolkit.VmmDomain method),431

get_all_by_epg() (acitoolkit.acitoolkit.Endpointclass method), 253

get_all_by_epg() (acitoolkit.acitoolkit.IPEndpointclass method), 276

get_all_consumed() (acitoolkit.acitoolkit.AnyEPGmethod), 159

get_all_consumed() (aci-toolkit.acitoolkit.CommonEPG method),210

get_all_consumed() (acitoolkit.acitoolkit.EPGmethod), 241

get_all_consumed() (aci-toolkit.acitoolkit.OutsideEPG method), 349

get_all_consumed() (aci-toolkit.acitoolkit.OutsideL2EPG method),362

get_all_consumed_cif() (aci-toolkit.acitoolkit.AnyEPG method), 159

get_all_consumed_cif() (aci-toolkit.acitoolkit.CommonEPG method),211

get_all_consumed_cif() (aci-toolkit.acitoolkit.EPG method), 241

get_all_consumed_cif() (aci-toolkit.acitoolkit.OutsideEPG method), 349

get_all_consumed_cif() (aci-toolkit.acitoolkit.OutsideL2EPG method),362

get_all_consuming_epgs() (aci-toolkit.acitoolkit.Contract method), 222

get_all_filter_entries() (aci-toolkit.acitoolkit.BaseContract method),182

get_all_filter_entries() (aci-toolkit.acitoolkit.Contract method), 222

get_all_filter_entries() (aci-toolkit.acitoolkit.Taboo method), 403

get_all_protected() (aci-toolkit.acitoolkit.AnyEPG method), 159

get_all_protected() (aci-

toolkit.acitoolkit.CommonEPG method),211

get_all_protected() (acitoolkit.acitoolkit.EPGmethod), 241

get_all_protected() (aci-toolkit.acitoolkit.OutsideEPG method), 349

get_all_protected() (aci-toolkit.acitoolkit.OutsideL2EPG method),362

get_all_provided() (acitoolkit.acitoolkit.AnyEPGmethod), 160

get_all_provided() (aci-toolkit.acitoolkit.CommonEPG method),211

get_all_provided() (acitoolkit.acitoolkit.EPGmethod), 241

get_all_provided() (aci-toolkit.acitoolkit.OutsideEPG method), 349

get_all_provided() (aci-toolkit.acitoolkit.OutsideL2EPG method),362

get_all_providing_epgs() (aci-toolkit.acitoolkit.Contract method), 222

get_allow_all() (acitoolkit.acitoolkit.Contextmethod), 217

get_apics() (acitoolkit.aciphysobject.Clustermethod), 63

get_arp_flood() (aci-toolkit.acitoolkit.BridgeDomain method),200

get_attributes() (aci-toolkit.acibaseobject.BaseACIObject method),55

get_attributes() (acitoolkit.aciphysobject.Clustermethod), 63

get_attributes() (aci-toolkit.aciphysobject.ExternalSwitch method),69

get_attributes() (acitoolkit.aciphysobject.Fabricmethod), 75

get_attributes() (acitoolkit.aciphysobject.Fanmethod), 80

get_attributes() (aci-toolkit.aciphysobject.Fantray method), 87

get_attributes() (aci-toolkit.aciphysobject.Interface method),93

get_attributes() (aci-toolkit.aciphysobject.Linecard method),100

get_attributes() (acitoolkit.aciphysobject.Linkmethod), 106

get_attributes() (acitoolkit.aciphysobject.Nodemethod), 113

514 Index

acitoolkit Documentation, Release 0.1

get_attributes() (aci-toolkit.aciphysobject.PhysicalModel method),119

get_attributes() (acitoolkit.aciphysobject.Podmethod), 125

get_attributes() (aci-toolkit.aciphysobject.Powersupply method),131

get_attributes() (aci-toolkit.aciphysobject.Process method), 137

get_attributes() (aci-toolkit.aciphysobject.Supervisorcard method),143

get_attributes() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149

get_attributes() (acitoolkit.acitoolkit.AnyEPGmethod), 160

get_attributes() (acitoolkit.acitoolkit.AppProfilemethod), 165

get_attributes() (aci-toolkit.acitoolkit.AttributeCriterion method),171

get_attributes() (aci-toolkit.acitoolkit.BaseContract method),182

get_attributes() (acitoolkit.acitoolkit.BaseSubnetmethod), 189

get_attributes() (aci-toolkit.acitoolkit.BaseTerminal method),195

get_attributes() (aci-toolkit.acitoolkit.BGPSession method), 177

get_attributes() (aci-toolkit.acitoolkit.BridgeDomain method),200

get_attributes() (aci-toolkit.acitoolkit.CommonEPG method),211

get_attributes() (acitoolkit.acitoolkit.Contextmethod), 217

get_attributes() (acitoolkit.acitoolkit.Contractmethod), 222

get_attributes() (aci-toolkit.acitoolkit.ContractInterface method),228

get_attributes() (aci-toolkit.acitoolkit.ContractSubject method),234

get_attributes() (acitoolkit.acitoolkit.Endpointmethod), 253

get_attributes() (acitoolkit.acitoolkit.EPGmethod), 242

get_attributes() (aci-

toolkit.acitoolkit.EPGDomain method), 248get_attributes() (aci-

toolkit.acitoolkit.FexInterface method), 259get_attributes() (acitoolkit.acitoolkit.Filter

method), 264get_attributes() (acitoolkit.acitoolkit.FilterEntry

method), 271get_attributes() (aci-

toolkit.acitoolkit.InputTerminal method),282

get_attributes() (acitoolkit.acitoolkit.IPEndpointmethod), 276

get_attributes() (aci-toolkit.acitoolkit.L2ExtDomain method),287

get_attributes() (acitoolkit.acitoolkit.L2Interfacemethod), 293

get_attributes() (aci-toolkit.acitoolkit.L3ExtDomain method),299

get_attributes() (acitoolkit.acitoolkit.L3Interfacemethod), 304

get_attributes() (aci-toolkit.acitoolkit.LogicalModel method),310

get_attributes() (aci-toolkit.acitoolkit.NetworkPool method), 320

get_attributes() (aci-toolkit.acitoolkit.OSPFInterface method),326

get_attributes() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 331

get_attributes() (aci-toolkit.acitoolkit.OSPFRouter method), 337

get_attributes() (aci-toolkit.acitoolkit.OutputTerminal method),342

get_attributes() (aci-toolkit.acitoolkit.OutsideEPG method), 350

get_attributes() (acitoolkit.acitoolkit.OutsideL2method), 355

get_attributes() (aci-toolkit.acitoolkit.OutsideL2EPG method),363

get_attributes() (acitoolkit.acitoolkit.OutsideL3method), 368

get_attributes() (aci-toolkit.acitoolkit.OutsideNetwork method),374

get_attributes() (aci-toolkit.acitoolkit.PhysDomain method), 380

get_attributes() (aci-toolkit.acitoolkit.PortChannel method), 386

Index 515

acitoolkit Documentation, Release 0.1

get_attributes() (acitoolkit.acitoolkit.Searchmethod), 392

get_attributes() (acitoolkit.acitoolkit.Subnetmethod), 397

get_attributes() (acitoolkit.acitoolkit.Taboomethod), 403

get_attributes() (acitoolkit.acitoolkit.Tagmethod), 409

get_attributes() (acitoolkit.acitoolkit.Tenantmethod), 415

get_attributes() (acitoolkit.acitoolkit.VMMmethod), 420

get_attributes() (aci-toolkit.acitoolkit.VMMCredentials method),426

get_attributes() (aci-toolkit.acitoolkit.VmmDomain method),431

get_bd() (acitoolkit.acitoolkit.EPG method), 242get_by_name() (acitoolkit.acitoolkit.EPGDomain

class method), 248get_by_name() (acitoolkit.acitoolkit.L2ExtDomain

class method), 287get_by_name() (acitoolkit.acitoolkit.L3ExtDomain

class method), 299get_by_name() (acitoolkit.acitoolkit.PhysDomain

class method), 380get_by_name() (acitoolkit.acitoolkit.VmmDomain

class method), 432get_by_name_and_tenant() (aci-

toolkit.acitoolkit.Filter class method), 265get_chassis_type() (aci-

toolkit.aciphysobject.Node method), 113get_child() (acitoolkit.acibaseobject.BaseACIObject

method), 55get_child() (acitoolkit.aciphysobject.Cluster

method), 63get_child() (acitoolkit.aciphysobject.ExternalSwitch

method), 69get_child() (acitoolkit.aciphysobject.Fabric

method), 75get_child() (acitoolkit.aciphysobject.Fan method),

81get_child() (acitoolkit.aciphysobject.Fantray

method), 87get_child() (acitoolkit.aciphysobject.Interface

method), 93get_child() (acitoolkit.aciphysobject.Linecard

method), 100get_child() (acitoolkit.aciphysobject.Link method),

106get_child() (acitoolkit.aciphysobject.Node method),

113get_child() (acitoolkit.aciphysobject.PhysicalModel

method), 119get_child() (acitoolkit.aciphysobject.Pod method),

125get_child() (acitoolkit.aciphysobject.Powersupply

method), 131get_child() (acitoolkit.aciphysobject.Process

method), 137get_child() (acitoolkit.aciphysobject.Supervisorcard

method), 143get_child() (acitoolkit.aciphysobject.Systemcontroller

method), 149get_child() (acitoolkit.acitoolkit.AnyEPG method),

160get_child() (acitoolkit.acitoolkit.AppProfile

method), 166get_child() (acitoolkit.acitoolkit.AttributeCriterion

method), 171get_child() (acitoolkit.acitoolkit.BaseContract

method), 182get_child() (acitoolkit.acitoolkit.BaseSubnet

method), 189get_child() (acitoolkit.acitoolkit.BaseTerminal

method), 195get_child() (acitoolkit.acitoolkit.BGPSession

method), 177get_child() (acitoolkit.acitoolkit.BridgeDomain

method), 201get_child() (acitoolkit.acitoolkit.CommonEPG

method), 211get_child() (acitoolkit.acitoolkit.Context method),

217get_child() (acitoolkit.acitoolkit.Contract method),

223get_child() (acitoolkit.acitoolkit.ContractInterface

method), 228get_child() (acitoolkit.acitoolkit.ContractSubject

method), 234get_child() (acitoolkit.acitoolkit.Endpoint method),

254get_child() (acitoolkit.acitoolkit.EPG method), 242get_child() (acitoolkit.acitoolkit.EPGDomain

method), 248get_child() (acitoolkit.acitoolkit.FexInterface

method), 259get_child() (acitoolkit.acitoolkit.Filter method), 265get_child() (acitoolkit.acitoolkit.FilterEntry

method), 271get_child() (acitoolkit.acitoolkit.InputTerminal

method), 282get_child() (acitoolkit.acitoolkit.IPEndpoint

method), 276get_child() (acitoolkit.acitoolkit.L2ExtDomain

method), 288get_child() (acitoolkit.acitoolkit.L2Interface

516 Index

acitoolkit Documentation, Release 0.1

method), 293get_child() (acitoolkit.acitoolkit.L3ExtDomain

method), 299get_child() (acitoolkit.acitoolkit.L3Interface

method), 304get_child() (acitoolkit.acitoolkit.LogicalModel

method), 310get_child() (acitoolkit.acitoolkit.NetworkPool

method), 320get_child() (acitoolkit.acitoolkit.OSPFInterface

method), 326get_child() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 332get_child() (acitoolkit.acitoolkit.OSPFRouter

method), 337get_child() (acitoolkit.acitoolkit.OutputTerminal

method), 343get_child() (acitoolkit.acitoolkit.OutsideEPG

method), 350get_child() (acitoolkit.acitoolkit.OutsideL2

method), 356get_child() (acitoolkit.acitoolkit.OutsideL2EPG

method), 363get_child() (acitoolkit.acitoolkit.OutsideL3

method), 369get_child() (acitoolkit.acitoolkit.OutsideNetwork

method), 375get_child() (acitoolkit.acitoolkit.PhysDomain

method), 380get_child() (acitoolkit.acitoolkit.PortChannel

method), 386get_child() (acitoolkit.acitoolkit.Search method),

392get_child() (acitoolkit.acitoolkit.Subnet method),

398get_child() (acitoolkit.acitoolkit.Taboo method),

404get_child() (acitoolkit.acitoolkit.Tag method), 409get_child() (acitoolkit.acitoolkit.Tenant method),

415get_child() (acitoolkit.acitoolkit.VMM method), 421get_child() (acitoolkit.acitoolkit.VMMCredentials

method), 426get_child() (acitoolkit.acitoolkit.VmmDomain

method), 432get_children() (aci-

toolkit.acibaseobject.BaseACIObject method),55

get_children() (aci-toolkit.acibaseobject.BaseACIPhysObjectmethod), 60

get_children() (acitoolkit.aciphysobject.Clustermethod), 64

get_children() (aci-

toolkit.aciphysobject.ExternalSwitch method),70

get_children() (acitoolkit.aciphysobject.Fabricmethod), 75

get_children() (acitoolkit.aciphysobject.Fanmethod), 81

get_children() (acitoolkit.aciphysobject.Fantraymethod), 87

get_children() (acitoolkit.aciphysobject.Interfacemethod), 93

get_children() (acitoolkit.aciphysobject.Linecardmethod), 100

get_children() (acitoolkit.aciphysobject.Linkmethod), 106

get_children() (acitoolkit.aciphysobject.Nodemethod), 114

get_children() (aci-toolkit.aciphysobject.PhysicalModel method),119

get_children() (acitoolkit.aciphysobject.Podmethod), 125

get_children() (aci-toolkit.aciphysobject.Powersupply method),131

get_children() (acitoolkit.aciphysobject.Processmethod), 137

get_children() (aci-toolkit.aciphysobject.Supervisorcard method),143

get_children() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149

get_children() (acitoolkit.acitoolkit.AnyEPGmethod), 160

get_children() (acitoolkit.acitoolkit.AppProfilemethod), 166

get_children() (aci-toolkit.acitoolkit.AttributeCriterion method),171

get_children() (acitoolkit.acitoolkit.BaseContractmethod), 183

get_children() (acitoolkit.acitoolkit.BaseSubnetmethod), 189

get_children() (acitoolkit.acitoolkit.BaseTerminalmethod), 195

get_children() (acitoolkit.acitoolkit.BGPSessionmethod), 177

get_children() (acitoolkit.acitoolkit.BridgeDomainmethod), 201

get_children() (acitoolkit.acitoolkit.CommonEPGmethod), 211

get_children() (acitoolkit.acitoolkit.Contextmethod), 217

get_children() (acitoolkit.acitoolkit.Contract

Index 517

acitoolkit Documentation, Release 0.1

method), 223get_children() (aci-

toolkit.acitoolkit.ContractInterface method),228

get_children() (aci-toolkit.acitoolkit.ContractSubject method),234

get_children() (acitoolkit.acitoolkit.Endpointmethod), 254

get_children() (acitoolkit.acitoolkit.EPG method),242

get_children() (acitoolkit.acitoolkit.EPGDomainmethod), 248

get_children() (acitoolkit.acitoolkit.FexInterfacemethod), 259

get_children() (acitoolkit.acitoolkit.Filter method),265

get_children() (acitoolkit.acitoolkit.FilterEntrymethod), 271

get_children() (acitoolkit.acitoolkit.InputTerminalmethod), 282

get_children() (acitoolkit.acitoolkit.IPEndpointmethod), 277

get_children() (acitoolkit.acitoolkit.L2ExtDomainmethod), 288

get_children() (acitoolkit.acitoolkit.L2Interfacemethod), 293

get_children() (acitoolkit.acitoolkit.L3ExtDomainmethod), 299

get_children() (acitoolkit.acitoolkit.L3Interfacemethod), 305

get_children() (acitoolkit.acitoolkit.LogicalModelmethod), 311

get_children() (acitoolkit.acitoolkit.NetworkPoolmethod), 320

get_children() (aci-toolkit.acitoolkit.OSPFInterface method),326

get_children() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332

get_children() (acitoolkit.acitoolkit.OSPFRoutermethod), 337

get_children() (aci-toolkit.acitoolkit.OutputTerminal method),343

get_children() (acitoolkit.acitoolkit.OutsideEPGmethod), 350

get_children() (acitoolkit.acitoolkit.OutsideL2method), 356

get_children() (aci-toolkit.acitoolkit.OutsideL2EPG method),363

get_children() (acitoolkit.acitoolkit.OutsideL3

method), 369get_children() (aci-

toolkit.acitoolkit.OutsideNetwork method),375

get_children() (acitoolkit.acitoolkit.PhysDomainmethod), 381

get_children() (acitoolkit.acitoolkit.PortChannelmethod), 386

get_children() (acitoolkit.acitoolkit.Searchmethod), 392

get_children() (acitoolkit.acitoolkit.Subnetmethod), 398

get_children() (acitoolkit.acitoolkit.Taboomethod), 404

get_children() (acitoolkit.acitoolkit.Tag method),409

get_children() (acitoolkit.acitoolkit.Tenantmethod), 415

get_children() (acitoolkit.acitoolkit.VMMmethod), 421

get_children() (aci-toolkit.acitoolkit.VMMCredentials method),426

get_children() (acitoolkit.acitoolkit.VmmDomainmethod), 432

get_class() (acitoolkit.aciphysobject.WorkingDatamethod), 154

get_cluster_size() (aci-toolkit.aciphysobject.Cluster method), 64

get_config_size() (aci-toolkit.aciphysobject.Cluster method), 64

get_context() (acitoolkit.acitoolkit.BridgeDomainmethod), 201

get_context() (acitoolkit.acitoolkit.L3Interfacemethod), 305

get_context() (acitoolkit.acitoolkit.OutsideL3method), 369

get_deep() (acitoolkit.acibaseobject.BaseACIObjectclass method), 55

get_deep() (acitoolkit.acibaseobject.BaseACIPhysObjectclass method), 60

get_deep() (acitoolkit.aciphysobject.Cluster classmethod), 64

get_deep() (acitoolkit.aciphysobject.ExternalSwitchclass method), 70

get_deep() (acitoolkit.aciphysobject.Fabric classmethod), 75

get_deep() (acitoolkit.aciphysobject.Fan classmethod), 81

get_deep() (acitoolkit.aciphysobject.Fantray classmethod), 87

get_deep() (acitoolkit.aciphysobject.Interface classmethod), 93

get_deep() (acitoolkit.aciphysobject.Linecard class

518 Index

acitoolkit Documentation, Release 0.1

method), 101get_deep() (acitoolkit.aciphysobject.Link class

method), 107get_deep() (acitoolkit.aciphysobject.Node class

method), 114get_deep() (acitoolkit.aciphysobject.PhysicalModel

class method), 119get_deep() (acitoolkit.aciphysobject.Pod class

method), 125get_deep() (acitoolkit.aciphysobject.Powersupply

class method), 131get_deep() (acitoolkit.aciphysobject.Process class

method), 137get_deep() (acitoolkit.aciphysobject.Supervisorcard

class method), 143get_deep() (acitoolkit.aciphysobject.Systemcontroller

class method), 150get_deep() (acitoolkit.acitoolkit.AnyEPG class

method), 160get_deep() (acitoolkit.acitoolkit.AppProfile class

method), 166get_deep() (acitoolkit.acitoolkit.AttributeCriterion

class method), 171get_deep() (acitoolkit.acitoolkit.BaseContract class

method), 183get_deep() (acitoolkit.acitoolkit.BaseSubnet class

method), 189get_deep() (acitoolkit.acitoolkit.BaseTerminal class

method), 195get_deep() (acitoolkit.acitoolkit.BGPSession class

method), 177get_deep() (acitoolkit.acitoolkit.BridgeDomain class

method), 201get_deep() (acitoolkit.acitoolkit.CommonEPG class

method), 211get_deep() (acitoolkit.acitoolkit.Context class

method), 217get_deep() (acitoolkit.acitoolkit.Contract class

method), 223get_deep() (acitoolkit.acitoolkit.ContractInterface

class method), 228get_deep() (acitoolkit.acitoolkit.ContractSubject

class method), 234get_deep() (acitoolkit.acitoolkit.Endpoint class

method), 254get_deep() (acitoolkit.acitoolkit.EPG class method),

242get_deep() (acitoolkit.acitoolkit.EPGDomain class

method), 248get_deep() (acitoolkit.acitoolkit.FexInterface class

method), 260get_deep() (acitoolkit.acitoolkit.Filter class method),

265get_deep() (acitoolkit.acitoolkit.FilterEntry class

method), 271get_deep() (acitoolkit.acitoolkit.InputTerminal class

method), 282get_deep() (acitoolkit.acitoolkit.IPEndpoint class

method), 277get_deep() (acitoolkit.acitoolkit.L2ExtDomain class

method), 288get_deep() (acitoolkit.acitoolkit.L2Interface class

method), 293get_deep() (acitoolkit.acitoolkit.L3ExtDomain class

method), 299get_deep() (acitoolkit.acitoolkit.L3Interface class

method), 305get_deep() (acitoolkit.acitoolkit.LogicalModel class

method), 311get_deep() (acitoolkit.acitoolkit.NetworkPool class

method), 321get_deep() (acitoolkit.acitoolkit.OSPFInterface class

method), 326get_deep() (acitoolkit.acitoolkit.OSPFInterfacePolicy

class method), 332get_deep() (acitoolkit.acitoolkit.OSPFRouter class

method), 337get_deep() (acitoolkit.acitoolkit.OutputTerminal

class method), 343get_deep() (acitoolkit.acitoolkit.OutsideEPG class

method), 350get_deep() (acitoolkit.acitoolkit.OutsideL2 class

method), 356get_deep() (acitoolkit.acitoolkit.OutsideL2EPG class

method), 363get_deep() (acitoolkit.acitoolkit.OutsideL3 class

method), 369get_deep() (acitoolkit.acitoolkit.OutsideNetwork

class method), 375get_deep() (acitoolkit.acitoolkit.PhysDomain class

method), 381get_deep() (acitoolkit.acitoolkit.PortChannel class

method), 386get_deep() (acitoolkit.acitoolkit.Search class

method), 392get_deep() (acitoolkit.acitoolkit.Subnet class

method), 398get_deep() (acitoolkit.acitoolkit.Taboo class method),

404get_deep() (acitoolkit.acitoolkit.Tag class method),

409get_deep() (acitoolkit.acitoolkit.Tenant class

method), 415get_deep() (acitoolkit.acitoolkit.VMM class method),

421get_deep() (acitoolkit.acitoolkit.VMMCredentials

class method), 427get_deep() (acitoolkit.acitoolkit.VmmDomain class

Index 519

acitoolkit Documentation, Release 0.1

method), 432get_deep_apic_classes() (aci-

toolkit.acibaseobject.BaseACIObject classmethod), 55

get_deep_apic_classes() (aci-toolkit.aciphysobject.Cluster class method),64

get_deep_apic_classes() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 70

get_deep_apic_classes() (aci-toolkit.aciphysobject.Fabric class method),75

get_deep_apic_classes() (aci-toolkit.aciphysobject.Fan class method),81

get_deep_apic_classes() (aci-toolkit.aciphysobject.Fantray class method),87

get_deep_apic_classes() (aci-toolkit.aciphysobject.Interface class method),94

get_deep_apic_classes() (aci-toolkit.aciphysobject.Linecard class method),101

get_deep_apic_classes() (aci-toolkit.aciphysobject.Link class method),107

get_deep_apic_classes() (aci-toolkit.aciphysobject.Node class method),114

get_deep_apic_classes() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 119

get_deep_apic_classes() (aci-toolkit.aciphysobject.Pod class method),125

get_deep_apic_classes() (aci-toolkit.aciphysobject.Powersupply classmethod), 131

get_deep_apic_classes() (aci-toolkit.aciphysobject.Process class method),137

get_deep_apic_classes() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 143

get_deep_apic_classes() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 150

get_deep_apic_classes() (aci-toolkit.acitoolkit.AnyEPG class method),161

get_deep_apic_classes() (aci-toolkit.acitoolkit.AppProfile class method),

166get_deep_apic_classes() (aci-

toolkit.acitoolkit.AttributeCriterion classmethod), 172

get_deep_apic_classes() (aci-toolkit.acitoolkit.BaseContract class method),183

get_deep_apic_classes() (aci-toolkit.acitoolkit.BaseSubnet class method),190

get_deep_apic_classes() (aci-toolkit.acitoolkit.BaseTerminal class method),195

get_deep_apic_classes() (aci-toolkit.acitoolkit.BGPSession class method),177

get_deep_apic_classes() (aci-toolkit.acitoolkit.BridgeDomain class method),201

get_deep_apic_classes() (aci-toolkit.acitoolkit.CommonEPG class method),212

get_deep_apic_classes() (aci-toolkit.acitoolkit.Context class method),217

get_deep_apic_classes() (aci-toolkit.acitoolkit.Contract class method),223

get_deep_apic_classes() (aci-toolkit.acitoolkit.ContractInterface classmethod), 229

get_deep_apic_classes() (aci-toolkit.acitoolkit.ContractSubject classmethod), 234

get_deep_apic_classes() (aci-toolkit.acitoolkit.Endpoint class method),254

get_deep_apic_classes() (aci-toolkit.acitoolkit.EPG class method), 242

get_deep_apic_classes() (aci-toolkit.acitoolkit.EPGDomain class method),249

get_deep_apic_classes() (aci-toolkit.acitoolkit.FexInterface class method),260

get_deep_apic_classes() (aci-toolkit.acitoolkit.Filter class method), 265

get_deep_apic_classes() (aci-toolkit.acitoolkit.FilterEntry class method),272

get_deep_apic_classes() (aci-toolkit.acitoolkit.InputTerminal class method),283

get_deep_apic_classes() (aci-

520 Index

acitoolkit Documentation, Release 0.1

toolkit.acitoolkit.IPEndpoint class method),277

get_deep_apic_classes() (aci-toolkit.acitoolkit.L2ExtDomain class method),288

get_deep_apic_classes() (aci-toolkit.acitoolkit.L2Interface class method),294

get_deep_apic_classes() (aci-toolkit.acitoolkit.L3ExtDomain class method),299

get_deep_apic_classes() (aci-toolkit.acitoolkit.L3Interface class method),305

get_deep_apic_classes() (aci-toolkit.acitoolkit.LogicalModel class method),311

get_deep_apic_classes() (aci-toolkit.acitoolkit.NetworkPool class method),321

get_deep_apic_classes() (aci-toolkit.acitoolkit.OSPFInterface class method),327

get_deep_apic_classes() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 332

get_deep_apic_classes() (aci-toolkit.acitoolkit.OSPFRouter class method),338

get_deep_apic_classes() (aci-toolkit.acitoolkit.OutputTerminal classmethod), 343

get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideEPG class method),350

get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideL2 class method),356

get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideL2EPG class method),363

get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideL3 class method),369

get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideNetwork classmethod), 375

get_deep_apic_classes() (aci-toolkit.acitoolkit.PhysDomain class method),381

get_deep_apic_classes() (aci-toolkit.acitoolkit.PortChannel class method),387

get_deep_apic_classes() (aci-

toolkit.acitoolkit.Search class method), 393get_deep_apic_classes() (aci-

toolkit.acitoolkit.Subnet class method), 398get_deep_apic_classes() (aci-

toolkit.acitoolkit.Taboo class method), 404get_deep_apic_classes() (aci-

toolkit.acitoolkit.Tag class method), 410get_deep_apic_classes() (aci-

toolkit.acitoolkit.Tenant class method), 415get_deep_apic_classes() (aci-

toolkit.acitoolkit.VMM class method), 421get_deep_apic_classes() (aci-

toolkit.acitoolkit.VMMCredentials classmethod), 427

get_deep_apic_classes() (aci-toolkit.acitoolkit.VmmDomain class method),432

get_dn_from_attributes() (aci-toolkit.acibaseobject.BaseACIObject method),55

get_dn_from_attributes() (aci-toolkit.aciphysobject.Cluster method), 64

get_dn_from_attributes() (aci-toolkit.aciphysobject.ExternalSwitch method),70

get_dn_from_attributes() (aci-toolkit.aciphysobject.Fabric method), 75

get_dn_from_attributes() (aci-toolkit.aciphysobject.Fan method), 81

get_dn_from_attributes() (aci-toolkit.aciphysobject.Fantray method), 87

get_dn_from_attributes() (aci-toolkit.aciphysobject.Interface method),94

get_dn_from_attributes() (aci-toolkit.aciphysobject.Linecard method),101

get_dn_from_attributes() (aci-toolkit.aciphysobject.Link method), 107

get_dn_from_attributes() (aci-toolkit.aciphysobject.Node method), 114

get_dn_from_attributes() (aci-toolkit.aciphysobject.PhysicalModel method),119

get_dn_from_attributes() (aci-toolkit.aciphysobject.Pod method), 125

get_dn_from_attributes() (aci-toolkit.aciphysobject.Powersupply method),131

get_dn_from_attributes() (aci-toolkit.aciphysobject.Process method), 137

get_dn_from_attributes() (aci-toolkit.aciphysobject.Supervisorcard method),143

Index 521

acitoolkit Documentation, Release 0.1

get_dn_from_attributes() (aci-toolkit.aciphysobject.Systemcontrollermethod), 150

get_dn_from_attributes() (aci-toolkit.acitoolkit.AnyEPG method), 161

get_dn_from_attributes() (aci-toolkit.acitoolkit.AppProfile method), 166

get_dn_from_attributes() (aci-toolkit.acitoolkit.AttributeCriterion method),172

get_dn_from_attributes() (aci-toolkit.acitoolkit.BaseContract method),183

get_dn_from_attributes() (aci-toolkit.acitoolkit.BaseSubnet method), 190

get_dn_from_attributes() (aci-toolkit.acitoolkit.BaseTerminal method),196

get_dn_from_attributes() (aci-toolkit.acitoolkit.BGPSession method), 177

get_dn_from_attributes() (aci-toolkit.acitoolkit.BridgeDomain method),201

get_dn_from_attributes() (aci-toolkit.acitoolkit.CommonEPG method),212

get_dn_from_attributes() (aci-toolkit.acitoolkit.Context method), 218

get_dn_from_attributes() (aci-toolkit.acitoolkit.Contract method), 223

get_dn_from_attributes() (aci-toolkit.acitoolkit.ContractInterface method),229

get_dn_from_attributes() (aci-toolkit.acitoolkit.ContractSubject method),235

get_dn_from_attributes() (aci-toolkit.acitoolkit.Endpoint method), 254

get_dn_from_attributes() (aci-toolkit.acitoolkit.EPG method), 242

get_dn_from_attributes() (aci-toolkit.acitoolkit.EPGDomain method), 249

get_dn_from_attributes() (aci-toolkit.acitoolkit.FexInterface method), 260

get_dn_from_attributes() (aci-toolkit.acitoolkit.Filter method), 265

get_dn_from_attributes() (aci-toolkit.acitoolkit.FilterEntry method), 272

get_dn_from_attributes() (aci-toolkit.acitoolkit.InputTerminal method),283

get_dn_from_attributes() (aci-toolkit.acitoolkit.IPEndpoint method), 277

get_dn_from_attributes() (aci-

toolkit.acitoolkit.L2ExtDomain method),288

get_dn_from_attributes() (aci-toolkit.acitoolkit.L2Interface method), 294

get_dn_from_attributes() (aci-toolkit.acitoolkit.L3ExtDomain method),300

get_dn_from_attributes() (aci-toolkit.acitoolkit.L3Interface method), 305

get_dn_from_attributes() (aci-toolkit.acitoolkit.LogicalModel method),311

get_dn_from_attributes() (aci-toolkit.acitoolkit.NetworkPool method), 321

get_dn_from_attributes() (aci-toolkit.acitoolkit.OSPFInterface method),327

get_dn_from_attributes() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332

get_dn_from_attributes() (aci-toolkit.acitoolkit.OSPFRouter method), 338

get_dn_from_attributes() (aci-toolkit.acitoolkit.OutputTerminal method),343

get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideEPG method), 350

get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideL2 method), 356

get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideL2EPG method),363

get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideL3 method), 369

get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideNetwork method),375

get_dn_from_attributes() (aci-toolkit.acitoolkit.PhysDomain method), 381

get_dn_from_attributes() (aci-toolkit.acitoolkit.PortChannel method), 387

get_dn_from_attributes() (aci-toolkit.acitoolkit.Search method), 393

get_dn_from_attributes() (aci-toolkit.acitoolkit.Subnet method), 398

get_dn_from_attributes() (aci-toolkit.acitoolkit.Taboo method), 404

get_dn_from_attributes() (aci-toolkit.acitoolkit.Tag method), 410

get_dn_from_attributes() (aci-toolkit.acitoolkit.Tenant method), 416

get_dn_from_attributes() (aci-toolkit.acitoolkit.VMM method), 421

get_dn_from_attributes() (aci-

522 Index

acitoolkit Documentation, Release 0.1

toolkit.acitoolkit.VMMCredentials method),427

get_dn_from_attributes() (aci-toolkit.acitoolkit.VmmDomain method),432

get_encap_id() (acitoolkit.acitoolkit.L2Interfacemethod), 294

get_encap_type() (acitoolkit.acitoolkit.L2Interfacemethod), 294

get_event() (acitoolkit.acibaseobject.BaseACIObjectclass method), 55

get_event() (acitoolkit.aciphysobject.Cluster classmethod), 64

get_event() (acitoolkit.aciphysobject.ExternalSwitchclass method), 70

get_event() (acitoolkit.aciphysobject.Fabric classmethod), 76

get_event() (acitoolkit.aciphysobject.Fan classmethod), 81

get_event() (acitoolkit.aciphysobject.Fantray classmethod), 87

get_event() (acitoolkit.aciphysobject.Interface classmethod), 94

get_event() (acitoolkit.aciphysobject.Linecard classmethod), 101

get_event() (acitoolkit.aciphysobject.Link classmethod), 107

get_event() (acitoolkit.aciphysobject.Node classmethod), 114

get_event() (acitoolkit.aciphysobject.PhysicalModelclass method), 120

get_event() (acitoolkit.aciphysobject.Pod classmethod), 125

get_event() (acitoolkit.aciphysobject.Powersupplyclass method), 131

get_event() (acitoolkit.aciphysobject.Process classmethod), 137

get_event() (acitoolkit.aciphysobject.Supervisorcardclass method), 143

get_event() (acitoolkit.aciphysobject.Systemcontrollerclass method), 150

get_event() (acitoolkit.acisession.Session method),155

get_event() (acitoolkit.acitoolkit.AnyEPG classmethod), 161

get_event() (acitoolkit.acitoolkit.AppProfile classmethod), 166

get_event() (acitoolkit.acitoolkit.AttributeCriterionclass method), 172

get_event() (acitoolkit.acitoolkit.BaseContract classmethod), 183

get_event() (acitoolkit.acitoolkit.BaseSubnet classmethod), 190

get_event() (acitoolkit.acitoolkit.BaseTerminal class

method), 196get_event() (acitoolkit.acitoolkit.BGPSession class

method), 178get_event() (acitoolkit.acitoolkit.BridgeDomain

class method), 202get_event() (acitoolkit.acitoolkit.CommonEPG class

method), 212get_event() (acitoolkit.acitoolkit.Context class

method), 218get_event() (acitoolkit.acitoolkit.Contract class

method), 223get_event() (acitoolkit.acitoolkit.ContractInterface

class method), 229get_event() (acitoolkit.acitoolkit.ContractSubject

class method), 235get_event() (acitoolkit.acitoolkit.Endpoint class

method), 254get_event() (acitoolkit.acitoolkit.EPG class

method), 243get_event() (acitoolkit.acitoolkit.EPGDomain class

method), 249get_event() (acitoolkit.acitoolkit.FexInterface class

method), 260get_event() (acitoolkit.acitoolkit.Filter class

method), 266get_event() (acitoolkit.acitoolkit.FilterEntry class

method), 272get_event() (acitoolkit.acitoolkit.InputTerminal

class method), 283get_event() (acitoolkit.acitoolkit.IPEndpoint class

method), 277get_event() (acitoolkit.acitoolkit.L2ExtDomain class

method), 288get_event() (acitoolkit.acitoolkit.L2Interface class

method), 294get_event() (acitoolkit.acitoolkit.L3ExtDomain class

method), 300get_event() (acitoolkit.acitoolkit.L3Interface class

method), 305get_event() (acitoolkit.acitoolkit.LogicalModel class

method), 311get_event() (acitoolkit.acitoolkit.NetworkPool class

method), 321get_event() (acitoolkit.acitoolkit.OSPFInterface

class method), 327get_event() (acitoolkit.acitoolkit.OSPFInterfacePolicy

class method), 332get_event() (acitoolkit.acitoolkit.OSPFRouter class

method), 338get_event() (acitoolkit.acitoolkit.OutputTerminal

class method), 343get_event() (acitoolkit.acitoolkit.OutsideEPG class

method), 351get_event() (acitoolkit.acitoolkit.OutsideL2 class

Index 523

acitoolkit Documentation, Release 0.1

method), 356get_event() (acitoolkit.acitoolkit.OutsideL2EPG

class method), 364get_event() (acitoolkit.acitoolkit.OutsideL3 class

method), 369get_event() (acitoolkit.acitoolkit.OutsideNetwork

class method), 375get_event() (acitoolkit.acitoolkit.PhysDomain class

method), 381get_event() (acitoolkit.acitoolkit.PortChannel class

method), 387get_event() (acitoolkit.acitoolkit.Search class

method), 393get_event() (acitoolkit.acitoolkit.Subnet class

method), 398get_event() (acitoolkit.acitoolkit.Taboo class

method), 404get_event() (acitoolkit.acitoolkit.Tag class method),

410get_event() (acitoolkit.acitoolkit.Tenant class

method), 416get_event() (acitoolkit.acitoolkit.VMM class

method), 421get_event() (acitoolkit.acitoolkit.VMMCredentials

class method), 427get_event() (acitoolkit.acitoolkit.VmmDomain class

method), 433get_event_count() (acitoolkit.acisession.Session

method), 155get_fault() (acitoolkit.acibaseobject.BaseACIObject

class method), 56get_fault() (acitoolkit.aciFaults.Faults class

method), 437get_fault() (acitoolkit.aciphysobject.Cluster class

method), 64get_fault() (acitoolkit.aciphysobject.ExternalSwitch

class method), 70get_fault() (acitoolkit.aciphysobject.Fabric class

method), 76get_fault() (acitoolkit.aciphysobject.Fan class

method), 81get_fault() (acitoolkit.aciphysobject.Fantray class

method), 87get_fault() (acitoolkit.aciphysobject.Interface class

method), 94get_fault() (acitoolkit.aciphysobject.Linecard class

method), 101get_fault() (acitoolkit.aciphysobject.Link class

method), 107get_fault() (acitoolkit.aciphysobject.Node class

method), 114get_fault() (acitoolkit.aciphysobject.PhysicalModel

class method), 120get_fault() (acitoolkit.aciphysobject.Pod class

method), 125get_fault() (acitoolkit.aciphysobject.Powersupply

class method), 131get_fault() (acitoolkit.aciphysobject.Process class

method), 137get_fault() (acitoolkit.aciphysobject.Supervisorcard

class method), 144get_fault() (acitoolkit.aciphysobject.Systemcontroller

class method), 150get_fault() (acitoolkit.acitoolkit.AnyEPG class

method), 161get_fault() (acitoolkit.acitoolkit.AppProfile class

method), 166get_fault() (acitoolkit.acitoolkit.AttributeCriterion

class method), 172get_fault() (acitoolkit.acitoolkit.BaseContract class

method), 183get_fault() (acitoolkit.acitoolkit.BaseSubnet class

method), 190get_fault() (acitoolkit.acitoolkit.BaseTerminal class

method), 196get_fault() (acitoolkit.acitoolkit.BGPSession class

method), 178get_fault() (acitoolkit.acitoolkit.BridgeDomain

class method), 202get_fault() (acitoolkit.acitoolkit.CommonEPG class

method), 212get_fault() (acitoolkit.acitoolkit.Context class

method), 218get_fault() (acitoolkit.acitoolkit.Contract class

method), 223get_fault() (acitoolkit.acitoolkit.ContractInterface

class method), 229get_fault() (acitoolkit.acitoolkit.ContractSubject

class method), 235get_fault() (acitoolkit.acitoolkit.Endpoint class

method), 255get_fault() (acitoolkit.acitoolkit.EPG class

method), 243get_fault() (acitoolkit.acitoolkit.EPGDomain class

method), 249get_fault() (acitoolkit.acitoolkit.FexInterface class

method), 260get_fault() (acitoolkit.acitoolkit.Filter class

method), 266get_fault() (acitoolkit.acitoolkit.FilterEntry class

method), 272get_fault() (acitoolkit.acitoolkit.InputTerminal

class method), 283get_fault() (acitoolkit.acitoolkit.IPEndpoint class

method), 277get_fault() (acitoolkit.acitoolkit.L2ExtDomain class

method), 288get_fault() (acitoolkit.acitoolkit.L2Interface class

524 Index

acitoolkit Documentation, Release 0.1

method), 294get_fault() (acitoolkit.acitoolkit.L3ExtDomain class

method), 300get_fault() (acitoolkit.acitoolkit.L3Interface class

method), 305get_fault() (acitoolkit.acitoolkit.LogicalModel class

method), 311get_fault() (acitoolkit.acitoolkit.NetworkPool class

method), 321get_fault() (acitoolkit.acitoolkit.OSPFInterface

class method), 327get_fault() (acitoolkit.acitoolkit.OSPFInterfacePolicy

class method), 332get_fault() (acitoolkit.acitoolkit.OSPFRouter class

method), 338get_fault() (acitoolkit.acitoolkit.OutputTerminal

class method), 344get_fault() (acitoolkit.acitoolkit.OutsideEPG class

method), 351get_fault() (acitoolkit.acitoolkit.OutsideL2 class

method), 356get_fault() (acitoolkit.acitoolkit.OutsideL2EPG

class method), 364get_fault() (acitoolkit.acitoolkit.OutsideL3 class

method), 370get_fault() (acitoolkit.acitoolkit.OutsideNetwork

class method), 375get_fault() (acitoolkit.acitoolkit.PhysDomain class

method), 381get_fault() (acitoolkit.acitoolkit.PortChannel class

method), 387get_fault() (acitoolkit.acitoolkit.Search class

method), 393get_fault() (acitoolkit.acitoolkit.Subnet class

method), 399get_fault() (acitoolkit.acitoolkit.Taboo class

method), 404get_fault() (acitoolkit.acitoolkit.Tag class method),

410get_fault() (acitoolkit.acitoolkit.Tenant class

method), 416get_fault() (acitoolkit.acitoolkit.VMM class

method), 421get_fault() (acitoolkit.acitoolkit.VMMCredentials

class method), 427get_fault() (acitoolkit.acitoolkit.VmmDomain class

method), 433get_faults() (acitoolkit.aciFaults.Faults class

method), 437get_faults_by_filter() (aci-

toolkit.aciFaults.Faults method), 437get_filters() (acitoolkit.acitoolkit.BaseTerminal

method), 196get_filters() (acitoolkit.acitoolkit.ContractSubject

method), 235get_filters() (acitoolkit.acitoolkit.InputTerminal

method), 283get_filters() (acitoolkit.acitoolkit.OutputTerminal

method), 344get_firmware() (acitoolkit.aciphysobject.Node

method), 114get_from_json() (aci-

toolkit.acibaseobject.BaseACIObject method),56

get_from_json() (acitoolkit.aciphysobject.Clustermethod), 64

get_from_json() (aci-toolkit.aciphysobject.ExternalSwitch method),70

get_from_json() (acitoolkit.aciphysobject.Fabricmethod), 76

get_from_json() (acitoolkit.aciphysobject.Fanmethod), 81

get_from_json() (acitoolkit.aciphysobject.Fantraymethod), 88

get_from_json() (acitoolkit.aciphysobject.Interfacemethod), 94

get_from_json() (acitoolkit.aciphysobject.Linecardmethod), 101

get_from_json() (acitoolkit.aciphysobject.Linkmethod), 107

get_from_json() (acitoolkit.aciphysobject.Nodemethod), 114

get_from_json() (aci-toolkit.aciphysobject.PhysicalModel method),120

get_from_json() (acitoolkit.aciphysobject.Podmethod), 126

get_from_json() (aci-toolkit.aciphysobject.Powersupply method),132

get_from_json() (acitoolkit.aciphysobject.Processmethod), 138

get_from_json() (aci-toolkit.aciphysobject.Supervisorcard method),144

get_from_json() (aci-toolkit.aciphysobject.Systemcontrollermethod), 150

get_from_json() (acitoolkit.acitoolkit.AnyEPGmethod), 161

get_from_json() (acitoolkit.acitoolkit.AppProfilemethod), 166

get_from_json() (aci-toolkit.acitoolkit.AttributeCriterion method),172

get_from_json() (aci-toolkit.acitoolkit.BaseContract method),

Index 525

acitoolkit Documentation, Release 0.1

183get_from_json() (acitoolkit.acitoolkit.BaseSubnet

method), 190get_from_json() (aci-

toolkit.acitoolkit.BaseTerminal method),196

get_from_json() (acitoolkit.acitoolkit.BGPSessionmethod), 178

get_from_json() (aci-toolkit.acitoolkit.BridgeDomain static method),202

get_from_json() (aci-toolkit.acitoolkit.CommonEPG method),212

get_from_json() (acitoolkit.acitoolkit.Contextmethod), 218

get_from_json() (acitoolkit.acitoolkit.Contractmethod), 223

get_from_json() (aci-toolkit.acitoolkit.ContractInterface method),229

get_from_json() (aci-toolkit.acitoolkit.ContractSubject staticmethod), 235

get_from_json() (acitoolkit.acitoolkit.Endpointmethod), 255

get_from_json() (acitoolkit.acitoolkit.EPG staticmethod), 243

get_from_json() (acitoolkit.acitoolkit.EPGDomainmethod), 249

get_from_json() (acitoolkit.acitoolkit.FexInterfacemethod), 260

get_from_json() (acitoolkit.acitoolkit.Filter staticmethod), 266

get_from_json() (acitoolkit.acitoolkit.FilterEntrymethod), 272

get_from_json() (aci-toolkit.acitoolkit.InputTerminal method),283

get_from_json() (acitoolkit.acitoolkit.IPEndpointmethod), 277

get_from_json() (aci-toolkit.acitoolkit.L2ExtDomain method),288

get_from_json() (acitoolkit.acitoolkit.L2Interfacemethod), 294

get_from_json() (aci-toolkit.acitoolkit.L3ExtDomain method),300

get_from_json() (acitoolkit.acitoolkit.L3Interfacemethod), 305

get_from_json() (aci-toolkit.acitoolkit.LogicalModel method),311

get_from_json() (acitoolkit.acitoolkit.NetworkPoolmethod), 321

get_from_json() (aci-toolkit.acitoolkit.OSPFInterface method),327

get_from_json() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332

get_from_json() (acitoolkit.acitoolkit.OSPFRoutermethod), 338

get_from_json() (aci-toolkit.acitoolkit.OutputTerminal method),344

get_from_json() (acitoolkit.acitoolkit.OutsideEPGmethod), 351

get_from_json() (acitoolkit.acitoolkit.OutsideL2method), 357

get_from_json() (aci-toolkit.acitoolkit.OutsideL2EPG method),364

get_from_json() (acitoolkit.acitoolkit.OutsideL3method), 370

get_from_json() (aci-toolkit.acitoolkit.OutsideNetwork method),375

get_from_json() (acitoolkit.acitoolkit.PhysDomainmethod), 381

get_from_json() (acitoolkit.acitoolkit.PortChannelmethod), 387

get_from_json() (acitoolkit.acitoolkit.Searchmethod), 393

get_from_json() (acitoolkit.acitoolkit.Subnetmethod), 399

get_from_json() (acitoolkit.acitoolkit.Taboomethod), 405

get_from_json() (acitoolkit.acitoolkit.Tag method),410

get_from_json() (acitoolkit.acitoolkit.Tenantmethod), 416

get_from_json() (acitoolkit.acitoolkit.VMMmethod), 421

get_from_json() (aci-toolkit.acitoolkit.VMMCredentials method),427

get_from_json() (acitoolkit.acitoolkit.VmmDomainmethod), 433

get_health() (acitoolkit.aciphysobject.Nodemethod), 114

get_import_contract() (aci-toolkit.acitoolkit.ContractInterface method),229

get_interfaces() (aci-toolkit.acibaseobject.BaseACIObject method),56

526 Index

acitoolkit Documentation, Release 0.1

get_interfaces() (acitoolkit.aciphysobject.Clustermethod), 65

get_interfaces() (aci-toolkit.aciphysobject.ExternalSwitch method),70

get_interfaces() (acitoolkit.aciphysobject.Fabricmethod), 76

get_interfaces() (acitoolkit.aciphysobject.Fanmethod), 81

get_interfaces() (aci-toolkit.aciphysobject.Fantray method), 88

get_interfaces() (aci-toolkit.aciphysobject.Interface method),94

get_interfaces() (aci-toolkit.aciphysobject.Linecard method),101

get_interfaces() (acitoolkit.aciphysobject.Linkmethod), 107

get_interfaces() (acitoolkit.aciphysobject.Nodemethod), 114

get_interfaces() (aci-toolkit.aciphysobject.PhysicalModel method),120

get_interfaces() (acitoolkit.aciphysobject.Podmethod), 126

get_interfaces() (aci-toolkit.aciphysobject.Powersupply method),132

get_interfaces() (aci-toolkit.aciphysobject.Process method), 138

get_interfaces() (aci-toolkit.aciphysobject.Supervisorcard method),144

get_interfaces() (aci-toolkit.aciphysobject.Systemcontrollermethod), 150

get_interfaces() (acitoolkit.acitoolkit.AnyEPGmethod), 161

get_interfaces() (acitoolkit.acitoolkit.AppProfilemethod), 167

get_interfaces() (aci-toolkit.acitoolkit.AttributeCriterion method),172

get_interfaces() (aci-toolkit.acitoolkit.BaseContract method),183

get_interfaces() (acitoolkit.acitoolkit.BaseSubnetmethod), 190

get_interfaces() (aci-toolkit.acitoolkit.BaseTerminal method),196

get_interfaces() (aci-toolkit.acitoolkit.BGPSession method), 178

get_interfaces() (aci-toolkit.acitoolkit.BridgeDomain method),202

get_interfaces() (aci-toolkit.acitoolkit.CommonEPG method),212

get_interfaces() (acitoolkit.acitoolkit.Contextmethod), 218

get_interfaces() (acitoolkit.acitoolkit.Contractmethod), 224

get_interfaces() (aci-toolkit.acitoolkit.ContractInterface method),229

get_interfaces() (aci-toolkit.acitoolkit.ContractSubject method),235

get_interfaces() (acitoolkit.acitoolkit.Endpointmethod), 255

get_interfaces() (acitoolkit.acitoolkit.EPGmethod), 243

get_interfaces() (aci-toolkit.acitoolkit.EPGDomain method), 249

get_interfaces() (aci-toolkit.acitoolkit.FexInterface method), 260

get_interfaces() (acitoolkit.acitoolkit.Filtermethod), 266

get_interfaces() (acitoolkit.acitoolkit.FilterEntrymethod), 272

get_interfaces() (aci-toolkit.acitoolkit.InputTerminal method),283

get_interfaces() (acitoolkit.acitoolkit.IPEndpointmethod), 277

get_interfaces() (aci-toolkit.acitoolkit.L2ExtDomain method),289

get_interfaces() (acitoolkit.acitoolkit.L2Interfacemethod), 294

get_interfaces() (aci-toolkit.acitoolkit.L3ExtDomain method),300

get_interfaces() (acitoolkit.acitoolkit.L3Interfacemethod), 306

get_interfaces() (aci-toolkit.acitoolkit.LogicalModel method),311

get_interfaces() (aci-toolkit.acitoolkit.NetworkPool method), 321

get_interfaces() (aci-toolkit.acitoolkit.OSPFInterface method),327

get_interfaces() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332

Index 527

acitoolkit Documentation, Release 0.1

get_interfaces() (aci-toolkit.acitoolkit.OSPFRouter method), 338

get_interfaces() (aci-toolkit.acitoolkit.OutputTerminal method),344

get_interfaces() (aci-toolkit.acitoolkit.OutsideEPG method), 351

get_interfaces() (acitoolkit.acitoolkit.OutsideL2method), 357

get_interfaces() (aci-toolkit.acitoolkit.OutsideL2EPG method),364

get_interfaces() (acitoolkit.acitoolkit.OutsideL3method), 370

get_interfaces() (aci-toolkit.acitoolkit.OutsideNetwork method),376

get_interfaces() (aci-toolkit.acitoolkit.PhysDomain method), 381

get_interfaces() (aci-toolkit.acitoolkit.PortChannel method), 387

get_interfaces() (acitoolkit.acitoolkit.Searchmethod), 393

get_interfaces() (acitoolkit.acitoolkit.Subnetmethod), 399

get_interfaces() (acitoolkit.acitoolkit.Taboomethod), 405

get_interfaces() (acitoolkit.acitoolkit.Tagmethod), 410

get_interfaces() (acitoolkit.acitoolkit.Tenantmethod), 416

get_interfaces() (acitoolkit.acitoolkit.VMMmethod), 422

get_interfaces() (aci-toolkit.acitoolkit.VMMCredentials method),427

get_interfaces() (aci-toolkit.acitoolkit.VmmDomain method),433

get_ip_addresses() (aci-toolkit.acitoolkit.AttributeCriterion method),172

get_json() (acitoolkit.acibaseobject.BaseACIObjectmethod), 56

get_json() (acitoolkit.acibaseobject.BaseACIPhysObjectmethod), 60

get_json() (acitoolkit.aciphysobject.Clustermethod), 65

get_json() (acitoolkit.aciphysobject.ExternalSwitchmethod), 70

get_json() (acitoolkit.aciphysobject.Fabric method),76

get_json() (acitoolkit.aciphysobject.Fan method), 82get_json() (acitoolkit.aciphysobject.Fantray

method), 88get_json() (acitoolkit.aciphysobject.Interface

method), 94get_json() (acitoolkit.aciphysobject.Linecard

method), 101get_json() (acitoolkit.aciphysobject.Link method),

107get_json() (acitoolkit.aciphysobject.Node method),

114get_json() (acitoolkit.aciphysobject.PhysicalModel

method), 120get_json() (acitoolkit.aciphysobject.Pod method),

126get_json() (acitoolkit.aciphysobject.Powersupply

method), 132get_json() (acitoolkit.aciphysobject.Process

method), 138get_json() (acitoolkit.aciphysobject.Supervisorcard

method), 144get_json() (acitoolkit.aciphysobject.Systemcontroller

method), 150get_json() (acitoolkit.acitoolkit.AnyEPG method),

161get_json() (acitoolkit.acitoolkit.AppProfile method),

167get_json() (acitoolkit.acitoolkit.AttributeCriterion

method), 172get_json() (acitoolkit.acitoolkit.BaseContract

method), 183get_json() (acitoolkit.acitoolkit.BaseSubnet

method), 190get_json() (acitoolkit.acitoolkit.BaseTerminal

method), 196get_json() (acitoolkit.acitoolkit.BGPSession

method), 178get_json() (acitoolkit.acitoolkit.BridgeDomain

method), 202get_json() (acitoolkit.acitoolkit.CommonEPG

method), 212get_json() (acitoolkit.acitoolkit.Context method),

218get_json() (acitoolkit.acitoolkit.Contract method),

224get_json() (acitoolkit.acitoolkit.ContractInterface

method), 229get_json() (acitoolkit.acitoolkit.ContractSubject

method), 235get_json() (acitoolkit.acitoolkit.Endpoint method),

255get_json() (acitoolkit.acitoolkit.EPG method), 243get_json() (acitoolkit.acitoolkit.EPGDomain

method), 249get_json() (acitoolkit.acitoolkit.FexInterface

method), 260

528 Index

acitoolkit Documentation, Release 0.1

get_json() (acitoolkit.acitoolkit.Filter method), 266get_json() (acitoolkit.acitoolkit.FilterEntry method),

272get_json() (acitoolkit.acitoolkit.InputTerminal

method), 283get_json() (acitoolkit.acitoolkit.IPEndpoint method),

277get_json() (acitoolkit.acitoolkit.L2ExtDomain

method), 289get_json() (acitoolkit.acitoolkit.L2Interface

method), 294get_json() (acitoolkit.acitoolkit.L3ExtDomain

method), 300get_json() (acitoolkit.acitoolkit.L3Interface

method), 306get_json() (acitoolkit.acitoolkit.LogicalModel

method), 311get_json() (acitoolkit.acitoolkit.NetworkPool

method), 321get_json() (acitoolkit.acitoolkit.OSPFInterface

method), 327get_json() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 333get_json() (acitoolkit.acitoolkit.OSPFRouter

method), 338get_json() (acitoolkit.acitoolkit.OutputTerminal

method), 344get_json() (acitoolkit.acitoolkit.OutsideEPG

method), 351get_json() (acitoolkit.acitoolkit.OutsideL2 method),

357get_json() (acitoolkit.acitoolkit.OutsideL2EPG

method), 364get_json() (acitoolkit.acitoolkit.OutsideL3 method),

370get_json() (acitoolkit.acitoolkit.OutsideNetwork

method), 376get_json() (acitoolkit.acitoolkit.PhysDomain

method), 381get_json() (acitoolkit.acitoolkit.PortChannel

method), 387get_json() (acitoolkit.acitoolkit.Search method), 393get_json() (acitoolkit.acitoolkit.Subnet method), 399get_json() (acitoolkit.acitoolkit.Taboo method), 405get_json() (acitoolkit.acitoolkit.Tag method), 410get_json() (acitoolkit.acitoolkit.Tenant method), 416get_json() (acitoolkit.acitoolkit.VMM method), 422get_json() (acitoolkit.acitoolkit.VMMCredentials

method), 427get_json() (acitoolkit.acitoolkit.VmmDomain

method), 433get_l3if_type() (acitoolkit.acitoolkit.L3Interface

method), 306get_l3out() (acitoolkit.acitoolkit.BridgeDomain

method), 202get_links() (cableplan.CABLEPLAN method), 454get_links() (cableplan.CpSwitch method), 453get_mac() (acitoolkit.acitoolkit.BridgeDomain

method), 202get_mtu() (acitoolkit.acitoolkit.L3Interface method),

306get_name() (acitoolkit.acibaseobject.BaseACIPhysObject

method), 60get_name() (acitoolkit.aciphysobject.ExternalSwitch

method), 70get_name() (acitoolkit.aciphysobject.Fan method), 82get_name() (acitoolkit.aciphysobject.Fantray

method), 88get_name() (acitoolkit.aciphysobject.Linecard

method), 101get_name() (acitoolkit.aciphysobject.Link method),

107get_name() (acitoolkit.aciphysobject.Node method),

115get_name() (acitoolkit.aciphysobject.Pod method),

126get_name() (acitoolkit.aciphysobject.Powersupply

method), 132get_name() (acitoolkit.aciphysobject.Process

method), 138get_name() (acitoolkit.aciphysobject.Supervisorcard

method), 144get_name() (acitoolkit.aciphysobject.Systemcontroller

method), 150get_name() (cableplan.CpLink method), 452get_name() (cableplan.CpSwitch method), 453get_network() (acitoolkit.acitoolkit.PhysDomain

method), 382get_network_from_apic() (aci-

toolkit.acitoolkit.PhysDomain method), 382get_node() (acitoolkit.acibaseobject.BaseACIPhysObject

method), 60get_node() (acitoolkit.aciphysobject.ExternalSwitch

method), 70get_node() (acitoolkit.aciphysobject.Fan method), 82get_node() (acitoolkit.aciphysobject.Fantray

method), 88get_node() (acitoolkit.aciphysobject.Linecard

method), 101get_node() (acitoolkit.aciphysobject.Link method),

107get_node() (acitoolkit.aciphysobject.Node method),

115get_node() (acitoolkit.aciphysobject.Pod method),

126get_node() (acitoolkit.aciphysobject.Powersupply

method), 132get_node() (acitoolkit.aciphysobject.Process

Index 529

acitoolkit Documentation, Release 0.1

method), 138get_node() (acitoolkit.aciphysobject.Supervisorcard

method), 144get_node() (acitoolkit.aciphysobject.Systemcontroller

method), 150get_node1() (acitoolkit.aciphysobject.Link method),

107get_node2() (acitoolkit.aciphysobject.Link method),

108get_node_id() (acitoolkit.acitoolkit.OSPFRouter

method), 338get_nw_type() (aci-

toolkit.acitoolkit.OSPFInterfacePolicymethod), 333

get_obj() (acitoolkit.acibaseobject.BaseACIPhysModuleclass method), 59

get_obj() (acitoolkit.aciphysobject.Fan classmethod), 82

get_obj() (acitoolkit.aciphysobject.Fantray classmethod), 88

get_obj() (acitoolkit.aciphysobject.Linecard classmethod), 101

get_obj() (acitoolkit.aciphysobject.Powersupplyclass method), 132

get_obj() (acitoolkit.aciphysobject.Supervisorcardclass method), 144

get_obj() (acitoolkit.aciphysobject.Systemcontrollerclass method), 150

get_object() (acitoolkit.aciphysobject.WorkingDatamethod), 154

get_parent() (aci-toolkit.acibaseobject.BaseACIObject method),56

get_parent() (acitoolkit.aciphysobject.Clustermethod), 65

get_parent() (aci-toolkit.aciphysobject.ExternalSwitch method),71

get_parent() (acitoolkit.aciphysobject.Fabricmethod), 76

get_parent() (acitoolkit.aciphysobject.Fan method),82

get_parent() (acitoolkit.aciphysobject.Fantraymethod), 88

get_parent() (acitoolkit.aciphysobject.Interfacemethod), 94

get_parent() (acitoolkit.aciphysobject.Linecardmethod), 102

get_parent() (acitoolkit.aciphysobject.Linkmethod), 108

get_parent() (acitoolkit.aciphysobject.Nodemethod), 115

get_parent() (aci-toolkit.aciphysobject.PhysicalModel method),

120get_parent() (acitoolkit.aciphysobject.Pod method),

126get_parent() (acitoolkit.aciphysobject.Powersupply

method), 132get_parent() (acitoolkit.aciphysobject.Process

method), 138get_parent() (aci-

toolkit.aciphysobject.Supervisorcard method),144

get_parent() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151

get_parent() (acitoolkit.acitoolkit.AnyEPGmethod), 161

get_parent() (acitoolkit.acitoolkit.AppProfilemethod), 167

get_parent() (aci-toolkit.acitoolkit.AttributeCriterion method),172

get_parent() (acitoolkit.acitoolkit.BaseContractmethod), 184

get_parent() (aci-toolkit.acitoolkit.BaseMonitorClass method),187

get_parent() (acitoolkit.acitoolkit.BaseSubnetmethod), 190

get_parent() (acitoolkit.acitoolkit.BaseTerminalmethod), 196

get_parent() (acitoolkit.acitoolkit.BGPSessionmethod), 178

get_parent() (acitoolkit.acitoolkit.BridgeDomainmethod), 202

get_parent() (acitoolkit.acitoolkit.CollectionPolicymethod), 207

get_parent() (acitoolkit.acitoolkit.CommonEPGmethod), 212

get_parent() (acitoolkit.acitoolkit.Context method),218

get_parent() (acitoolkit.acitoolkit.Contractmethod), 224

get_parent() (acitoolkit.acitoolkit.ContractInterfacemethod), 229

get_parent() (acitoolkit.acitoolkit.ContractSubjectmethod), 235

get_parent() (acitoolkit.acitoolkit.Endpointmethod), 255

get_parent() (acitoolkit.acitoolkit.EPG method),243

get_parent() (acitoolkit.acitoolkit.EPGDomainmethod), 249

get_parent() (acitoolkit.acitoolkit.FexInterfacemethod), 261

get_parent() (acitoolkit.acitoolkit.Filter method),

530 Index

acitoolkit Documentation, Release 0.1

266get_parent() (acitoolkit.acitoolkit.FilterEntry

method), 272get_parent() (acitoolkit.acitoolkit.InputTerminal

method), 283get_parent() (acitoolkit.acitoolkit.IPEndpoint

method), 278get_parent() (acitoolkit.acitoolkit.L2ExtDomain

method), 289get_parent() (acitoolkit.acitoolkit.L2Interface

method), 295get_parent() (acitoolkit.acitoolkit.L3ExtDomain

method), 300get_parent() (acitoolkit.acitoolkit.L3Interface

method), 306get_parent() (acitoolkit.acitoolkit.LogicalModel

method), 312get_parent() (acitoolkit.acitoolkit.MonitorPolicy

method), 316get_parent() (acitoolkit.acitoolkit.MonitorStats

method), 317get_parent() (acitoolkit.acitoolkit.MonitorTarget

method), 318get_parent() (acitoolkit.acitoolkit.NetworkPool

method), 322get_parent() (acitoolkit.acitoolkit.OSPFInterface

method), 327get_parent() (aci-

toolkit.acitoolkit.OSPFInterfacePolicymethod), 333

get_parent() (acitoolkit.acitoolkit.OSPFRoutermethod), 338

get_parent() (acitoolkit.acitoolkit.OutputTerminalmethod), 344

get_parent() (acitoolkit.acitoolkit.OutsideEPGmethod), 351

get_parent() (acitoolkit.acitoolkit.OutsideL2method), 357

get_parent() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 364

get_parent() (acitoolkit.acitoolkit.OutsideL3method), 370

get_parent() (acitoolkit.acitoolkit.OutsideNetworkmethod), 376

get_parent() (acitoolkit.acitoolkit.PhysDomainmethod), 382

get_parent() (acitoolkit.acitoolkit.PortChannelmethod), 387

get_parent() (acitoolkit.acitoolkit.Search method),393

get_parent() (acitoolkit.acitoolkit.Subnet method),399

get_parent() (acitoolkit.acitoolkit.Taboo method),405

get_parent() (acitoolkit.acitoolkit.Tag method), 410get_parent() (acitoolkit.acitoolkit.Tenant method),

416get_parent() (acitoolkit.acitoolkit.VMM method),

422get_parent() (acitoolkit.acitoolkit.VMMCredentials

method), 428get_parent() (acitoolkit.acitoolkit.VmmDomain

method), 433get_pod() (acitoolkit.acibaseobject.BaseACIPhysObject

method), 60get_pod() (acitoolkit.aciphysobject.ExternalSwitch

method), 71get_pod() (acitoolkit.aciphysobject.Fan method), 82get_pod() (acitoolkit.aciphysobject.Fantray method),

88get_pod() (acitoolkit.aciphysobject.Linecard

method), 102get_pod() (acitoolkit.aciphysobject.Link method), 108get_pod() (acitoolkit.aciphysobject.Node method),

115get_pod() (acitoolkit.aciphysobject.Pod method), 126get_pod() (acitoolkit.aciphysobject.Powersupply

method), 132get_pod() (acitoolkit.aciphysobject.Process method),

138get_pod() (acitoolkit.aciphysobject.Supervisorcard

method), 144get_pod() (acitoolkit.aciphysobject.Systemcontroller

method), 151get_port1() (acitoolkit.aciphysobject.Link method),

108get_port2() (acitoolkit.aciphysobject.Link method),

108get_port_channel_selector_json() (aci-

toolkit.acibaseobject.BaseInterface method),60

get_port_channel_selector_json() (aci-toolkit.aciphysobject.Interface method), 94

get_port_channel_selector_json() (aci-toolkit.acitoolkit.PortChannel method), 387

get_port_id1() (acitoolkit.aciphysobject.Linkmethod), 108

get_port_id2() (acitoolkit.aciphysobject.Linkmethod), 108

get_port_selector_json() (aci-toolkit.acibaseobject.BaseInterface method),61

get_port_selector_json() (aci-toolkit.aciphysobject.Interface method),94

get_port_selector_json() (aci-toolkit.acitoolkit.PortChannel method), 387

get_role() (acitoolkit.aciphysobject.Node method),

Index 531

acitoolkit Documentation, Release 0.1

115get_router_id() (acitoolkit.acitoolkit.OSPFRouter

method), 338get_scope() (acitoolkit.acitoolkit.BaseContract

method), 184get_scope() (acitoolkit.acitoolkit.BaseSubnet

method), 190get_scope() (acitoolkit.acitoolkit.Contract method),

224get_scope() (acitoolkit.acitoolkit.OutsideNetwork

method), 376get_scope() (acitoolkit.acitoolkit.Subnet method),

399get_scope() (acitoolkit.acitoolkit.Taboo method),

405get_searchable() (acitoolkit.aciphysobject.Cluster

method), 65get_searchable() (aci-

toolkit.aciphysobject.ExternalSwitch method),71

get_searchable() (acitoolkit.aciphysobject.Fabricmethod), 76

get_searchable() (acitoolkit.aciphysobject.Fanmethod), 82

get_searchable() (aci-toolkit.aciphysobject.Fantray method), 88

get_searchable() (aci-toolkit.aciphysobject.Interface method),94

get_searchable() (aci-toolkit.aciphysobject.Linecard method),102

get_searchable() (acitoolkit.aciphysobject.Linkmethod), 108

get_searchable() (acitoolkit.aciphysobject.Nodemethod), 115

get_searchable() (aci-toolkit.aciphysobject.PhysicalModel method),120

get_searchable() (acitoolkit.aciphysobject.Podmethod), 126

get_searchable() (aci-toolkit.aciphysobject.Powersupply method),132

get_searchable() (aci-toolkit.aciphysobject.Process method), 138

get_searchable() (aci-toolkit.aciphysobject.Supervisorcard method),144

get_searchable() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151

get_searchable() (acitoolkit.acitoolkit.AnyEPGmethod), 161

get_searchable() (acitoolkit.acitoolkit.AppProfilemethod), 167

get_searchable() (aci-toolkit.acitoolkit.AttributeCriterion method),172

get_searchable() (aci-toolkit.acitoolkit.BaseContract method),184

get_searchable() (acitoolkit.acitoolkit.BaseSubnetmethod), 190

get_searchable() (aci-toolkit.acitoolkit.BaseTerminal method),196

get_searchable() (aci-toolkit.acitoolkit.BGPSession method), 178

get_searchable() (aci-toolkit.acitoolkit.BridgeDomain method),202

get_searchable() (aci-toolkit.acitoolkit.CommonEPG method),212

get_searchable() (acitoolkit.acitoolkit.Contextmethod), 218

get_searchable() (acitoolkit.acitoolkit.Contractmethod), 224

get_searchable() (aci-toolkit.acitoolkit.ContractInterface method),229

get_searchable() (aci-toolkit.acitoolkit.ContractSubject method),235

get_searchable() (acitoolkit.acitoolkit.Endpointmethod), 255

get_searchable() (acitoolkit.acitoolkit.EPGmethod), 243

get_searchable() (aci-toolkit.acitoolkit.EPGDomain method), 249

get_searchable() (aci-toolkit.acitoolkit.FexInterface method), 261

get_searchable() (acitoolkit.acitoolkit.Filtermethod), 266

get_searchable() (acitoolkit.acitoolkit.FilterEntrymethod), 272

get_searchable() (aci-toolkit.acitoolkit.InputTerminal method),283

get_searchable() (acitoolkit.acitoolkit.IPEndpointmethod), 278

get_searchable() (aci-toolkit.acitoolkit.L2ExtDomain method),289

get_searchable() (acitoolkit.acitoolkit.L2Interfacemethod), 295

get_searchable() (aci-

532 Index

acitoolkit Documentation, Release 0.1

toolkit.acitoolkit.L3ExtDomain method),300

get_searchable() (acitoolkit.acitoolkit.L3Interfacemethod), 306

get_searchable() (aci-toolkit.acitoolkit.LogicalModel method),312

get_searchable() (aci-toolkit.acitoolkit.NetworkPool method), 322

get_searchable() (aci-toolkit.acitoolkit.OSPFInterface method),327

get_searchable() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 333

get_searchable() (aci-toolkit.acitoolkit.OSPFRouter method), 338

get_searchable() (aci-toolkit.acitoolkit.OutputTerminal method),344

get_searchable() (aci-toolkit.acitoolkit.OutsideEPG method), 351

get_searchable() (acitoolkit.acitoolkit.OutsideL2method), 357

get_searchable() (aci-toolkit.acitoolkit.OutsideL2EPG method),364

get_searchable() (acitoolkit.acitoolkit.OutsideL3method), 370

get_searchable() (aci-toolkit.acitoolkit.OutsideNetwork method),376

get_searchable() (aci-toolkit.acitoolkit.PhysDomain method), 382

get_searchable() (aci-toolkit.acitoolkit.PortChannel method), 388

get_searchable() (acitoolkit.acitoolkit.Searchmethod), 393

get_searchable() (acitoolkit.acitoolkit.Subnetmethod), 399

get_searchable() (acitoolkit.acitoolkit.Taboomethod), 405

get_searchable() (acitoolkit.acitoolkit.Tagmethod), 410

get_searchable() (acitoolkit.acitoolkit.Tenantmethod), 416

get_searchable() (acitoolkit.acitoolkit.VMMmethod), 422

get_searchable() (aci-toolkit.acitoolkit.VMMCredentials method),428

get_searchable() (aci-toolkit.acitoolkit.VmmDomain method),433

get_serial() (aci-toolkit.acibaseobject.BaseACIPhysModulemethod), 59

get_serial() (aci-toolkit.acibaseobject.BaseACIPhysObjectmethod), 60

get_serial() (aci-toolkit.aciphysobject.ExternalSwitch method),71

get_serial() (acitoolkit.aciphysobject.Fan method),82

get_serial() (acitoolkit.aciphysobject.Fantraymethod), 88

get_serial() (acitoolkit.aciphysobject.Interfacestatic method), 95

get_serial() (acitoolkit.aciphysobject.Linecardmethod), 102

get_serial() (acitoolkit.aciphysobject.Linkmethod), 108

get_serial() (acitoolkit.aciphysobject.Nodemethod), 115

get_serial() (acitoolkit.aciphysobject.Pod method),126

get_serial() (acitoolkit.aciphysobject.Powersupplymethod), 132

get_serial() (acitoolkit.aciphysobject.Processmethod), 138

get_serial() (aci-toolkit.aciphysobject.Supervisorcard method),144

get_serial() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151

get_slot() (acitoolkit.acibaseobject.BaseACIPhysModulemethod), 59

get_slot() (acitoolkit.aciphysobject.Fan method), 82get_slot() (acitoolkit.aciphysobject.Fantray

method), 88get_slot() (acitoolkit.aciphysobject.Linecard

method), 102get_slot() (acitoolkit.aciphysobject.Powersupply

method), 132get_slot() (acitoolkit.aciphysobject.Supervisorcard

method), 144get_slot() (acitoolkit.aciphysobject.Systemcontroller

method), 151get_slot1() (acitoolkit.aciphysobject.Link method),

108get_slot2() (acitoolkit.aciphysobject.Link method),

108get_spines() (cableplan.CABLEPLAN method), 454get_subnets() (acitoolkit.acitoolkit.BridgeDomain

method), 202get_subtree() (aci-

Index 533

acitoolkit Documentation, Release 0.1

toolkit.aciphysobject.WorkingData method),154

get_switch() (cableplan.CABLEPLAN method), 454get_table() (acitoolkit.acibaseobject.BaseACIObject

static method), 56get_table() (acitoolkit.aciphysobject.Cluster static

method), 65get_table() (acitoolkit.aciphysobject.ExternalSwitch

static method), 71get_table() (acitoolkit.aciphysobject.Fabric static

method), 76get_table() (acitoolkit.aciphysobject.Fan static

method), 82get_table() (acitoolkit.aciphysobject.Fantray static

method), 88get_table() (acitoolkit.aciphysobject.Interface static

method), 95get_table() (acitoolkit.aciphysobject.Linecard static

method), 102get_table() (acitoolkit.aciphysobject.Link static

method), 109get_table() (acitoolkit.aciphysobject.Node static

method), 115get_table() (acitoolkit.aciphysobject.PhysicalModel

static method), 120get_table() (acitoolkit.aciphysobject.Pod static

method), 126get_table() (acitoolkit.aciphysobject.Powersupply

static method), 132get_table() (acitoolkit.aciphysobject.Process static

method), 138get_table() (acitoolkit.aciphysobject.Supervisorcard

static method), 145get_table() (acitoolkit.aciphysobject.Systemcontroller

static method), 151get_table() (acitoolkit.acitoolkit.AnyEPG static

method), 161get_table() (acitoolkit.acitoolkit.AppProfile static

method), 167get_table() (acitoolkit.acitoolkit.AttributeCriterion

static method), 172get_table() (acitoolkit.acitoolkit.BaseContract

static method), 184get_table() (acitoolkit.acitoolkit.BaseSubnet static

method), 190get_table() (acitoolkit.acitoolkit.BaseTerminal

static method), 196get_table() (acitoolkit.acitoolkit.BGPSession static

method), 178get_table() (acitoolkit.acitoolkit.BridgeDomain

static method), 202get_table() (acitoolkit.acitoolkit.CommonEPG

static method), 213get_table() (acitoolkit.acitoolkit.Context static

method), 218get_table() (acitoolkit.acitoolkit.Contract static

method), 224get_table() (acitoolkit.acitoolkit.ContractInterface

static method), 230get_table() (acitoolkit.acitoolkit.ContractSubject

static method), 235get_table() (acitoolkit.acitoolkit.Endpoint static

method), 255get_table() (acitoolkit.acitoolkit.EPG static

method), 243get_table() (acitoolkit.acitoolkit.EPGDomain static

method), 249get_table() (acitoolkit.acitoolkit.FexInterface static

method), 261get_table() (acitoolkit.acitoolkit.Filter static

method), 266get_table() (acitoolkit.acitoolkit.FilterEntry static

method), 272get_table() (acitoolkit.acitoolkit.InputTerminal

static method), 283get_table() (acitoolkit.acitoolkit.IPEndpoint static

method), 278get_table() (acitoolkit.acitoolkit.L2ExtDomain

static method), 289get_table() (acitoolkit.acitoolkit.L2Interface static

method), 295get_table() (acitoolkit.acitoolkit.L3ExtDomain

static method), 300get_table() (acitoolkit.acitoolkit.L3Interface static

method), 306get_table() (acitoolkit.acitoolkit.LogicalModel

static method), 312get_table() (acitoolkit.acitoolkit.NetworkPool static

method), 322get_table() (acitoolkit.acitoolkit.OSPFInterface

static method), 327get_table() (acitoolkit.acitoolkit.OSPFInterfacePolicy

static method), 333get_table() (acitoolkit.acitoolkit.OSPFRouter static

method), 338get_table() (acitoolkit.acitoolkit.OutputTerminal

static method), 344get_table() (acitoolkit.acitoolkit.OutsideEPG static

method), 351get_table() (acitoolkit.acitoolkit.OutsideL2 static

method), 357get_table() (acitoolkit.acitoolkit.OutsideL2EPG

static method), 364get_table() (acitoolkit.acitoolkit.OutsideL3 static

method), 370get_table() (acitoolkit.acitoolkit.OutsideNetwork

static method), 376get_table() (acitoolkit.acitoolkit.PhysDomain static

534 Index

acitoolkit Documentation, Release 0.1

method), 382get_table() (acitoolkit.acitoolkit.PortChannel static

method), 388get_table() (acitoolkit.acitoolkit.Search static

method), 393get_table() (acitoolkit.acitoolkit.Subnet static

method), 399get_table() (acitoolkit.acitoolkit.Taboo static

method), 405get_table() (acitoolkit.acitoolkit.Tag static method),

410get_table() (acitoolkit.acitoolkit.Tenant static

method), 416get_table() (acitoolkit.acitoolkit.VMM static

method), 422get_table() (acitoolkit.acitoolkit.VMMCredentials

static method), 428get_table() (acitoolkit.acitoolkit.VmmDomain static

method), 433get_tags() (acitoolkit.acibaseobject.BaseACIObject

method), 56get_tags() (acitoolkit.aciphysobject.Cluster

method), 65get_tags() (acitoolkit.aciphysobject.ExternalSwitch

method), 71get_tags() (acitoolkit.aciphysobject.Fabric method),

76get_tags() (acitoolkit.aciphysobject.Fan method), 82get_tags() (acitoolkit.aciphysobject.Fantray

method), 88get_tags() (acitoolkit.aciphysobject.Interface

method), 95get_tags() (acitoolkit.aciphysobject.Linecard

method), 102get_tags() (acitoolkit.aciphysobject.Link method),

109get_tags() (acitoolkit.aciphysobject.Node method),

115get_tags() (acitoolkit.aciphysobject.PhysicalModel

method), 120get_tags() (acitoolkit.aciphysobject.Pod method),

126get_tags() (acitoolkit.aciphysobject.Powersupply

method), 132get_tags() (acitoolkit.aciphysobject.Process

method), 138get_tags() (acitoolkit.aciphysobject.Supervisorcard

method), 145get_tags() (acitoolkit.aciphysobject.Systemcontroller

method), 151get_tags() (acitoolkit.acitoolkit.AnyEPG method),

161get_tags() (acitoolkit.acitoolkit.AppProfile method),

167

get_tags() (acitoolkit.acitoolkit.AttributeCriterionmethod), 173

get_tags() (acitoolkit.acitoolkit.BaseContractmethod), 184

get_tags() (acitoolkit.acitoolkit.BaseSubnetmethod), 191

get_tags() (acitoolkit.acitoolkit.BaseTerminalmethod), 196

get_tags() (acitoolkit.acitoolkit.BGPSessionmethod), 178

get_tags() (acitoolkit.acitoolkit.BridgeDomainmethod), 202

get_tags() (acitoolkit.acitoolkit.CommonEPGmethod), 213

get_tags() (acitoolkit.acitoolkit.Context method),218

get_tags() (acitoolkit.acitoolkit.Contract method),224

get_tags() (acitoolkit.acitoolkit.ContractInterfacemethod), 230

get_tags() (acitoolkit.acitoolkit.ContractSubjectmethod), 235

get_tags() (acitoolkit.acitoolkit.Endpoint method),255

get_tags() (acitoolkit.acitoolkit.EPG method), 243get_tags() (acitoolkit.acitoolkit.EPGDomain

method), 250get_tags() (acitoolkit.acitoolkit.FexInterface

method), 261get_tags() (acitoolkit.acitoolkit.Filter method), 266get_tags() (acitoolkit.acitoolkit.FilterEntry method),

272get_tags() (acitoolkit.acitoolkit.InputTerminal

method), 284get_tags() (acitoolkit.acitoolkit.IPEndpoint method),

278get_tags() (acitoolkit.acitoolkit.L2ExtDomain

method), 289get_tags() (acitoolkit.acitoolkit.L2Interface

method), 295get_tags() (acitoolkit.acitoolkit.L3ExtDomain

method), 300get_tags() (acitoolkit.acitoolkit.L3Interface

method), 306get_tags() (acitoolkit.acitoolkit.LogicalModel

method), 312get_tags() (acitoolkit.acitoolkit.NetworkPool

method), 322get_tags() (acitoolkit.acitoolkit.OSPFInterface

method), 327get_tags() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 333get_tags() (acitoolkit.acitoolkit.OSPFRouter

method), 339

Index 535

acitoolkit Documentation, Release 0.1

get_tags() (acitoolkit.acitoolkit.OutputTerminalmethod), 344

get_tags() (acitoolkit.acitoolkit.OutsideEPGmethod), 351

get_tags() (acitoolkit.acitoolkit.OutsideL2 method),357

get_tags() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 364

get_tags() (acitoolkit.acitoolkit.OutsideL3 method),370

get_tags() (acitoolkit.acitoolkit.OutsideNetworkmethod), 376

get_tags() (acitoolkit.acitoolkit.PhysDomainmethod), 382

get_tags() (acitoolkit.acitoolkit.PortChannelmethod), 388

get_tags() (acitoolkit.acitoolkit.Search method), 394get_tags() (acitoolkit.acitoolkit.Subnet method), 399get_tags() (acitoolkit.acitoolkit.Taboo method), 405get_tags() (acitoolkit.acitoolkit.Tag method), 411get_tags() (acitoolkit.acitoolkit.Tenant method), 416get_tags() (acitoolkit.acitoolkit.VMM method), 422get_tags() (acitoolkit.acitoolkit.VMMCredentials

method), 428get_tags() (acitoolkit.acitoolkit.VmmDomain

method), 433get_type() (acitoolkit.acibaseobject.BaseACIPhysObject

method), 60get_type() (acitoolkit.aciphysobject.ExternalSwitch

method), 71get_type() (acitoolkit.aciphysobject.Fan method), 82get_type() (acitoolkit.aciphysobject.Fantray

method), 89get_type() (acitoolkit.aciphysobject.Interface

method), 95get_type() (acitoolkit.aciphysobject.Linecard

method), 102get_type() (acitoolkit.aciphysobject.Link method),

109get_type() (acitoolkit.aciphysobject.Node method),

115get_type() (acitoolkit.aciphysobject.Pod method),

126get_type() (acitoolkit.aciphysobject.Powersupply

method), 133get_type() (acitoolkit.aciphysobject.Process

method), 138get_type() (acitoolkit.aciphysobject.Supervisorcard

method), 145get_type() (acitoolkit.aciphysobject.Systemcontroller

method), 151get_type() (cableplan.CpSwitch method), 453get_unicast_route() (aci-

toolkit.acitoolkit.BridgeDomain method),

202get_unknown_mac_unicast() (aci-

toolkit.acitoolkit.BridgeDomain method),203

get_unknown_multicast() (aci-toolkit.acitoolkit.BridgeDomain method),203

get_url() (acitoolkit.acibaseobject.BaseACIPhysObjectstatic method), 60

get_url() (acitoolkit.aciphysobject.ExternalSwitchstatic method), 71

get_url() (acitoolkit.aciphysobject.Fan staticmethod), 82

get_url() (acitoolkit.aciphysobject.Fantray staticmethod), 89

get_url() (acitoolkit.aciphysobject.Interface staticmethod), 95

get_url() (acitoolkit.aciphysobject.Linecard staticmethod), 102

get_url() (acitoolkit.aciphysobject.Link staticmethod), 109

get_url() (acitoolkit.aciphysobject.Node staticmethod), 115

get_url() (acitoolkit.aciphysobject.Pod staticmethod), 126

get_url() (acitoolkit.aciphysobject.Powersupplystatic method), 133

get_url() (acitoolkit.aciphysobject.Process staticmethod), 138

get_url() (acitoolkit.aciphysobject.Supervisorcardstatic method), 145

get_url() (acitoolkit.aciphysobject.Systemcontrollerstatic method), 151

get_url() (acitoolkit.acitoolkit.NetworkPool staticmethod), 322

get_url() (acitoolkit.acitoolkit.PhysDomain staticmethod), 382

get_url() (acitoolkit.acitoolkit.PortChannel staticmethod), 388

get_url() (acitoolkit.acitoolkit.Tenant static method),416

get_url() (acitoolkit.acitoolkit.VMM static method),422

getFabricSt() (acitoolkit.aciphysobject.Nodemethod), 113

getRole() (acitoolkit.aciphysobject.ExternalSwitchmethod), 69

granularityEnum (aci-toolkit.acitoolkit.CollectionPolicy attribute),207

Hhas_attachment() (aci-

toolkit.acibaseobject.BaseACIObject method),

536 Index

acitoolkit Documentation, Release 0.1

56has_attachment() (acitoolkit.aciphysobject.Cluster

method), 65has_attachment() (aci-

toolkit.aciphysobject.ExternalSwitch method),71

has_attachment() (acitoolkit.aciphysobject.Fabricmethod), 76

has_attachment() (acitoolkit.aciphysobject.Fanmethod), 83

has_attachment() (aci-toolkit.aciphysobject.Fantray method), 89

has_attachment() (aci-toolkit.aciphysobject.Interface method),95

has_attachment() (aci-toolkit.aciphysobject.Linecard method),102

has_attachment() (acitoolkit.aciphysobject.Linkmethod), 109

has_attachment() (acitoolkit.aciphysobject.Nodemethod), 115

has_attachment() (aci-toolkit.aciphysobject.PhysicalModel method),121

has_attachment() (acitoolkit.aciphysobject.Podmethod), 127

has_attachment() (aci-toolkit.aciphysobject.Powersupply method),133

has_attachment() (aci-toolkit.aciphysobject.Process method), 139

has_attachment() (aci-toolkit.aciphysobject.Supervisorcard method),145

has_attachment() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151

has_attachment() (acitoolkit.acitoolkit.AnyEPGmethod), 161

has_attachment() (acitoolkit.acitoolkit.AppProfilemethod), 167

has_attachment() (aci-toolkit.acitoolkit.AttributeCriterion method),173

has_attachment() (aci-toolkit.acitoolkit.BaseContract method),184

has_attachment() (acitoolkit.acitoolkit.BaseSubnetmethod), 191

has_attachment() (aci-toolkit.acitoolkit.BaseTerminal method),197

has_attachment() (aci-

toolkit.acitoolkit.BGPSession method), 178has_attachment() (aci-

toolkit.acitoolkit.BridgeDomain method),203

has_attachment() (aci-toolkit.acitoolkit.CommonEPG method),213

has_attachment() (acitoolkit.acitoolkit.Contextmethod), 218

has_attachment() (acitoolkit.acitoolkit.Contractmethod), 224

has_attachment() (aci-toolkit.acitoolkit.ContractInterface method),230

has_attachment() (aci-toolkit.acitoolkit.ContractSubject method),236

has_attachment() (acitoolkit.acitoolkit.Endpointmethod), 255

has_attachment() (acitoolkit.acitoolkit.EPGmethod), 243

has_attachment() (aci-toolkit.acitoolkit.EPGDomain method), 250

has_attachment() (aci-toolkit.acitoolkit.FexInterface method), 261

has_attachment() (acitoolkit.acitoolkit.Filtermethod), 266

has_attachment() (acitoolkit.acitoolkit.FilterEntrymethod), 272

has_attachment() (aci-toolkit.acitoolkit.InputTerminal method),284

has_attachment() (acitoolkit.acitoolkit.IPEndpointmethod), 278

has_attachment() (aci-toolkit.acitoolkit.L2ExtDomain method),289

has_attachment() (acitoolkit.acitoolkit.L2Interfacemethod), 295

has_attachment() (aci-toolkit.acitoolkit.L3ExtDomain method),300

has_attachment() (acitoolkit.acitoolkit.L3Interfacemethod), 306

has_attachment() (aci-toolkit.acitoolkit.LogicalModel method),312

has_attachment() (aci-toolkit.acitoolkit.NetworkPool method), 322

has_attachment() (aci-toolkit.acitoolkit.OSPFInterface method),327

has_attachment() (aci-toolkit.acitoolkit.OSPFInterfacePolicy

Index 537

acitoolkit Documentation, Release 0.1

method), 333has_attachment() (aci-

toolkit.acitoolkit.OSPFRouter method), 339has_attachment() (aci-

toolkit.acitoolkit.OutputTerminal method),344

has_attachment() (aci-toolkit.acitoolkit.OutsideEPG method), 351

has_attachment() (acitoolkit.acitoolkit.OutsideL2method), 357

has_attachment() (aci-toolkit.acitoolkit.OutsideL2EPG method),364

has_attachment() (acitoolkit.acitoolkit.OutsideL3method), 370

has_attachment() (aci-toolkit.acitoolkit.OutsideNetwork method),376

has_attachment() (aci-toolkit.acitoolkit.PhysDomain method), 382

has_attachment() (aci-toolkit.acitoolkit.PortChannel method), 388

has_attachment() (acitoolkit.acitoolkit.Searchmethod), 394

has_attachment() (acitoolkit.acitoolkit.Subnetmethod), 399

has_attachment() (acitoolkit.acitoolkit.Taboomethod), 405

has_attachment() (acitoolkit.acitoolkit.Tagmethod), 411

has_attachment() (acitoolkit.acitoolkit.Tenantmethod), 417

has_attachment() (acitoolkit.acitoolkit.VMMmethod), 422

has_attachment() (aci-toolkit.acitoolkit.VMMCredentials method),428

has_attachment() (aci-toolkit.acitoolkit.VmmDomain method),433

has_bd() (acitoolkit.acitoolkit.EPG method), 243has_bd() (acitoolkit.acitoolkit.OutsideL2 method),

357has_child() (acitoolkit.acibaseobject.BaseACIObject

method), 56has_child() (acitoolkit.aciphysobject.Cluster

method), 65has_child() (acitoolkit.aciphysobject.ExternalSwitch

method), 71has_child() (acitoolkit.aciphysobject.Fabric

method), 77has_child() (acitoolkit.aciphysobject.Fan method),

83has_child() (acitoolkit.aciphysobject.Fantray

method), 89has_child() (acitoolkit.aciphysobject.Interface

method), 95has_child() (acitoolkit.aciphysobject.Linecard

method), 102has_child() (acitoolkit.aciphysobject.Link method),

109has_child() (acitoolkit.aciphysobject.Node method),

115has_child() (acitoolkit.aciphysobject.PhysicalModel

method), 121has_child() (acitoolkit.aciphysobject.Pod method),

127has_child() (acitoolkit.aciphysobject.Powersupply

method), 133has_child() (acitoolkit.aciphysobject.Process

method), 139has_child() (acitoolkit.aciphysobject.Supervisorcard

method), 145has_child() (acitoolkit.aciphysobject.Systemcontroller

method), 151has_child() (acitoolkit.acitoolkit.AnyEPG method),

162has_child() (acitoolkit.acitoolkit.AppProfile

method), 167has_child() (acitoolkit.acitoolkit.AttributeCriterion

method), 173has_child() (acitoolkit.acitoolkit.BaseContract

method), 184has_child() (acitoolkit.acitoolkit.BaseSubnet

method), 191has_child() (acitoolkit.acitoolkit.BaseTerminal

method), 197has_child() (acitoolkit.acitoolkit.BGPSession

method), 178has_child() (acitoolkit.acitoolkit.BridgeDomain

method), 203has_child() (acitoolkit.acitoolkit.CommonEPG

method), 213has_child() (acitoolkit.acitoolkit.Context method),

218has_child() (acitoolkit.acitoolkit.Contract method),

224has_child() (acitoolkit.acitoolkit.ContractInterface

method), 230has_child() (acitoolkit.acitoolkit.ContractSubject

method), 236has_child() (acitoolkit.acitoolkit.Endpoint method),

255has_child() (acitoolkit.acitoolkit.EPG method), 243has_child() (acitoolkit.acitoolkit.EPGDomain

method), 250has_child() (acitoolkit.acitoolkit.FexInterface

method), 261

538 Index

acitoolkit Documentation, Release 0.1

has_child() (acitoolkit.acitoolkit.Filter method), 266has_child() (acitoolkit.acitoolkit.FilterEntry

method), 273has_child() (acitoolkit.acitoolkit.InputTerminal

method), 284has_child() (acitoolkit.acitoolkit.IPEndpoint

method), 278has_child() (acitoolkit.acitoolkit.L2ExtDomain

method), 289has_child() (acitoolkit.acitoolkit.L2Interface

method), 295has_child() (acitoolkit.acitoolkit.L3ExtDomain

method), 300has_child() (acitoolkit.acitoolkit.L3Interface

method), 306has_child() (acitoolkit.acitoolkit.LogicalModel

method), 312has_child() (acitoolkit.acitoolkit.NetworkPool

method), 322has_child() (acitoolkit.acitoolkit.OSPFInterface

method), 328has_child() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 333has_child() (acitoolkit.acitoolkit.OSPFRouter

method), 339has_child() (acitoolkit.acitoolkit.OutputTerminal

method), 344has_child() (acitoolkit.acitoolkit.OutsideEPG

method), 351has_child() (acitoolkit.acitoolkit.OutsideL2

method), 357has_child() (acitoolkit.acitoolkit.OutsideL2EPG

method), 364has_child() (acitoolkit.acitoolkit.OutsideL3

method), 370has_child() (acitoolkit.acitoolkit.OutsideNetwork

method), 376has_child() (acitoolkit.acitoolkit.PhysDomain

method), 382has_child() (acitoolkit.acitoolkit.PortChannel

method), 388has_child() (acitoolkit.acitoolkit.Search method),

394has_child() (acitoolkit.acitoolkit.Subnet method),

399has_child() (acitoolkit.acitoolkit.Taboo method),

405has_child() (acitoolkit.acitoolkit.Tag method), 411has_child() (acitoolkit.acitoolkit.Tenant method),

417has_child() (acitoolkit.acitoolkit.VMM method), 422has_child() (acitoolkit.acitoolkit.VMMCredentials

method), 428has_child() (acitoolkit.acitoolkit.VmmDomain

method), 433has_context() (acitoolkit.acitoolkit.BridgeDomain

method), 203has_context() (acitoolkit.acitoolkit.L3Interface

method), 306has_context() (acitoolkit.acitoolkit.OutsideL3

method), 370has_detachment() (aci-

toolkit.acibaseobject.BaseACIObject method),57

has_detachment() (acitoolkit.aciphysobject.Clustermethod), 65

has_detachment() (aci-toolkit.aciphysobject.ExternalSwitch method),71

has_detachment() (acitoolkit.aciphysobject.Fabricmethod), 77

has_detachment() (acitoolkit.aciphysobject.Fanmethod), 83

has_detachment() (aci-toolkit.aciphysobject.Fantray method), 89

has_detachment() (aci-toolkit.aciphysobject.Interface method),95

has_detachment() (aci-toolkit.aciphysobject.Linecard method),102

has_detachment() (acitoolkit.aciphysobject.Linkmethod), 109

has_detachment() (acitoolkit.aciphysobject.Nodemethod), 115

has_detachment() (aci-toolkit.aciphysobject.PhysicalModel method),121

has_detachment() (acitoolkit.aciphysobject.Podmethod), 127

has_detachment() (aci-toolkit.aciphysobject.Powersupply method),133

has_detachment() (aci-toolkit.aciphysobject.Process method), 139

has_detachment() (aci-toolkit.aciphysobject.Supervisorcard method),145

has_detachment() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151

has_detachment() (acitoolkit.acitoolkit.AnyEPGmethod), 162

has_detachment() (acitoolkit.acitoolkit.AppProfilemethod), 167

has_detachment() (aci-toolkit.acitoolkit.AttributeCriterion method),173

Index 539

acitoolkit Documentation, Release 0.1

has_detachment() (aci-toolkit.acitoolkit.BaseContract method),184

has_detachment() (acitoolkit.acitoolkit.BaseSubnetmethod), 191

has_detachment() (aci-toolkit.acitoolkit.BaseTerminal method),197

has_detachment() (aci-toolkit.acitoolkit.BGPSession method), 178

has_detachment() (aci-toolkit.acitoolkit.BridgeDomain method),203

has_detachment() (aci-toolkit.acitoolkit.CommonEPG method),213

has_detachment() (acitoolkit.acitoolkit.Contextmethod), 219

has_detachment() (acitoolkit.acitoolkit.Contractmethod), 224

has_detachment() (aci-toolkit.acitoolkit.ContractInterface method),230

has_detachment() (aci-toolkit.acitoolkit.ContractSubject method),236

has_detachment() (acitoolkit.acitoolkit.Endpointmethod), 255

has_detachment() (acitoolkit.acitoolkit.EPGmethod), 244

has_detachment() (aci-toolkit.acitoolkit.EPGDomain method), 250

has_detachment() (aci-toolkit.acitoolkit.FexInterface method), 261

has_detachment() (acitoolkit.acitoolkit.Filtermethod), 267

has_detachment() (acitoolkit.acitoolkit.FilterEntrymethod), 273

has_detachment() (aci-toolkit.acitoolkit.InputTerminal method),284

has_detachment() (acitoolkit.acitoolkit.IPEndpointmethod), 278

has_detachment() (aci-toolkit.acitoolkit.L2ExtDomain method),289

has_detachment() (acitoolkit.acitoolkit.L2Interfacemethod), 295

has_detachment() (aci-toolkit.acitoolkit.L3ExtDomain method),301

has_detachment() (acitoolkit.acitoolkit.L3Interfacemethod), 306

has_detachment() (aci-

toolkit.acitoolkit.LogicalModel method),312

has_detachment() (aci-toolkit.acitoolkit.NetworkPool method), 322

has_detachment() (aci-toolkit.acitoolkit.OSPFInterface method),328

has_detachment() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 333

has_detachment() (aci-toolkit.acitoolkit.OSPFRouter method), 339

has_detachment() (aci-toolkit.acitoolkit.OutputTerminal method),344

has_detachment() (aci-toolkit.acitoolkit.OutsideEPG method), 352

has_detachment() (acitoolkit.acitoolkit.OutsideL2method), 357

has_detachment() (aci-toolkit.acitoolkit.OutsideL2EPG method),365

has_detachment() (acitoolkit.acitoolkit.OutsideL3method), 371

has_detachment() (aci-toolkit.acitoolkit.OutsideNetwork method),376

has_detachment() (aci-toolkit.acitoolkit.PhysDomain method), 382

has_detachment() (aci-toolkit.acitoolkit.PortChannel method), 388

has_detachment() (acitoolkit.acitoolkit.Searchmethod), 394

has_detachment() (acitoolkit.acitoolkit.Subnetmethod), 399

has_detachment() (acitoolkit.acitoolkit.Taboomethod), 405

has_detachment() (acitoolkit.acitoolkit.Tagmethod), 411

has_detachment() (acitoolkit.acitoolkit.Tenantmethod), 417

has_detachment() (acitoolkit.acitoolkit.VMMmethod), 423

has_detachment() (aci-toolkit.acitoolkit.VMMCredentials method),428

has_detachment() (aci-toolkit.acitoolkit.VmmDomain method),434

has_entry() (acitoolkit.acitoolkit.Filter method), 267has_events() (aci-

toolkit.acibaseobject.BaseACIObject classmethod), 57

has_events() (acitoolkit.aciphysobject.Cluster class

540 Index

acitoolkit Documentation, Release 0.1

method), 65has_events() (aci-

toolkit.aciphysobject.ExternalSwitch classmethod), 71

has_events() (acitoolkit.aciphysobject.Fabric classmethod), 77

has_events() (acitoolkit.aciphysobject.Fan classmethod), 83

has_events() (acitoolkit.aciphysobject.Fantray classmethod), 89

has_events() (acitoolkit.aciphysobject.Interfaceclass method), 95

has_events() (acitoolkit.aciphysobject.Linecardclass method), 102

has_events() (acitoolkit.aciphysobject.Link classmethod), 109

has_events() (acitoolkit.aciphysobject.Node classmethod), 116

has_events() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 121

has_events() (acitoolkit.aciphysobject.Pod classmethod), 127

has_events() (acitoolkit.aciphysobject.Powersupplyclass method), 133

has_events() (acitoolkit.aciphysobject.Process classmethod), 139

has_events() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 145

has_events() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 151

has_events() (acitoolkit.acisession.Session method),155

has_events() (acitoolkit.acitoolkit.AnyEPG classmethod), 162

has_events() (acitoolkit.acitoolkit.AppProfile classmethod), 167

has_events() (aci-toolkit.acitoolkit.AttributeCriterion classmethod), 173

has_events() (acitoolkit.acitoolkit.BaseContractclass method), 184

has_events() (acitoolkit.acitoolkit.BaseSubnet classmethod), 191

has_events() (acitoolkit.acitoolkit.BaseTerminalclass method), 197

has_events() (acitoolkit.acitoolkit.BGPSession classmethod), 179

has_events() (acitoolkit.acitoolkit.BridgeDomainclass method), 203

has_events() (acitoolkit.acitoolkit.CommonEPGclass method), 213

has_events() (acitoolkit.acitoolkit.Context classmethod), 219

has_events() (acitoolkit.acitoolkit.Contract classmethod), 224

has_events() (acitoolkit.acitoolkit.ContractInterfaceclass method), 230

has_events() (acitoolkit.acitoolkit.ContractSubjectclass method), 236

has_events() (acitoolkit.acitoolkit.Endpoint classmethod), 256

has_events() (acitoolkit.acitoolkit.EPG classmethod), 244

has_events() (acitoolkit.acitoolkit.EPGDomainclass method), 250

has_events() (acitoolkit.acitoolkit.FexInterface classmethod), 261

has_events() (acitoolkit.acitoolkit.Filter classmethod), 267

has_events() (acitoolkit.acitoolkit.FilterEntry classmethod), 273

has_events() (acitoolkit.acitoolkit.InputTerminalclass method), 284

has_events() (acitoolkit.acitoolkit.IPEndpoint classmethod), 278

has_events() (acitoolkit.acitoolkit.L2ExtDomainclass method), 289

has_events() (acitoolkit.acitoolkit.L2Interface classmethod), 295

has_events() (acitoolkit.acitoolkit.L3ExtDomainclass method), 301

has_events() (acitoolkit.acitoolkit.L3Interface classmethod), 307

has_events() (acitoolkit.acitoolkit.LogicalModelclass method), 312

has_events() (acitoolkit.acitoolkit.NetworkPoolclass method), 322

has_events() (acitoolkit.acitoolkit.OSPFInterfaceclass method), 328

has_events() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 333

has_events() (acitoolkit.acitoolkit.OSPFRouterclass method), 339

has_events() (acitoolkit.acitoolkit.OutputTerminalclass method), 345

has_events() (acitoolkit.acitoolkit.OutsideEPGclass method), 352

has_events() (acitoolkit.acitoolkit.OutsideL2 classmethod), 357

has_events() (acitoolkit.acitoolkit.OutsideL2EPGclass method), 365

has_events() (acitoolkit.acitoolkit.OutsideL3 classmethod), 371

has_events() (acitoolkit.acitoolkit.OutsideNetwork

Index 541

acitoolkit Documentation, Release 0.1

class method), 376has_events() (acitoolkit.acitoolkit.PhysDomain

class method), 382has_events() (acitoolkit.acitoolkit.PortChannel

class method), 388has_events() (acitoolkit.acitoolkit.Search class

method), 394has_events() (acitoolkit.acitoolkit.Subnet class

method), 400has_events() (acitoolkit.acitoolkit.Taboo class

method), 405has_events() (acitoolkit.acitoolkit.Tag class

method), 411has_events() (acitoolkit.acitoolkit.Tenant class

method), 417has_events() (acitoolkit.acitoolkit.VMM class

method), 423has_events() (acitoolkit.acitoolkit.VMMCredentials

class method), 428has_events() (acitoolkit.acitoolkit.VmmDomain

class method), 434has_faults() (acitoolkit.aciFaults.Faults class

method), 437has_import_contract() (aci-

toolkit.acitoolkit.ContractInterface method),230

has_l2extdom() (acitoolkit.acitoolkit.OutsideL2method), 358

has_l3extdom() (acitoolkit.acitoolkit.OutsideL3method), 371

has_l3out() (acitoolkit.acitoolkit.BridgeDomainmethod), 203

has_network() (acitoolkit.acitoolkit.PhysDomainmethod), 382

has_parent() (aci-toolkit.acibaseobject.BaseACIObject method),57

has_parent() (acitoolkit.aciphysobject.Clustermethod), 66

has_parent() (aci-toolkit.aciphysobject.ExternalSwitch method),72

has_parent() (acitoolkit.aciphysobject.Fabricmethod), 77

has_parent() (acitoolkit.aciphysobject.Fan method),83

has_parent() (acitoolkit.aciphysobject.Fantraymethod), 89

has_parent() (acitoolkit.aciphysobject.Interfacemethod), 95

has_parent() (acitoolkit.aciphysobject.Linecardmethod), 102

has_parent() (acitoolkit.aciphysobject.Linkmethod), 109

has_parent() (acitoolkit.aciphysobject.Nodemethod), 116

has_parent() (aci-toolkit.aciphysobject.PhysicalModel method),121

has_parent() (acitoolkit.aciphysobject.Pod method),127

has_parent() (acitoolkit.aciphysobject.Powersupplymethod), 133

has_parent() (acitoolkit.aciphysobject.Processmethod), 139

has_parent() (aci-toolkit.aciphysobject.Supervisorcard method),145

has_parent() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152

has_parent() (acitoolkit.acitoolkit.AnyEPGmethod), 162

has_parent() (acitoolkit.acitoolkit.AppProfilemethod), 167

has_parent() (aci-toolkit.acitoolkit.AttributeCriterion method),173

has_parent() (acitoolkit.acitoolkit.BaseContractmethod), 184

has_parent() (acitoolkit.acitoolkit.BaseSubnetmethod), 191

has_parent() (acitoolkit.acitoolkit.BaseTerminalmethod), 197

has_parent() (acitoolkit.acitoolkit.BGPSessionmethod), 179

has_parent() (acitoolkit.acitoolkit.BridgeDomainmethod), 203

has_parent() (acitoolkit.acitoolkit.CommonEPGmethod), 213

has_parent() (acitoolkit.acitoolkit.Context method),219

has_parent() (acitoolkit.acitoolkit.Contractmethod), 224

has_parent() (acitoolkit.acitoolkit.ContractInterfacemethod), 230

has_parent() (acitoolkit.acitoolkit.ContractSubjectmethod), 236

has_parent() (acitoolkit.acitoolkit.Endpointmethod), 256

has_parent() (acitoolkit.acitoolkit.EPG method),244

has_parent() (acitoolkit.acitoolkit.EPGDomainmethod), 250

has_parent() (acitoolkit.acitoolkit.FexInterfacemethod), 261

has_parent() (acitoolkit.acitoolkit.Filter method),267

542 Index

acitoolkit Documentation, Release 0.1

has_parent() (acitoolkit.acitoolkit.FilterEntrymethod), 273

has_parent() (acitoolkit.acitoolkit.InputTerminalmethod), 284

has_parent() (acitoolkit.acitoolkit.IPEndpointmethod), 278

has_parent() (acitoolkit.acitoolkit.L2ExtDomainmethod), 289

has_parent() (acitoolkit.acitoolkit.L2Interfacemethod), 295

has_parent() (acitoolkit.acitoolkit.L3ExtDomainmethod), 301

has_parent() (acitoolkit.acitoolkit.L3Interfacemethod), 307

has_parent() (acitoolkit.acitoolkit.LogicalModelmethod), 312

has_parent() (acitoolkit.acitoolkit.NetworkPoolmethod), 322

has_parent() (acitoolkit.acitoolkit.OSPFInterfacemethod), 328

has_parent() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 333

has_parent() (acitoolkit.acitoolkit.OSPFRoutermethod), 339

has_parent() (acitoolkit.acitoolkit.OutputTerminalmethod), 345

has_parent() (acitoolkit.acitoolkit.OutsideEPGmethod), 352

has_parent() (acitoolkit.acitoolkit.OutsideL2method), 358

has_parent() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365

has_parent() (acitoolkit.acitoolkit.OutsideL3method), 371

has_parent() (acitoolkit.acitoolkit.OutsideNetworkmethod), 376

has_parent() (acitoolkit.acitoolkit.PhysDomainmethod), 383

has_parent() (acitoolkit.acitoolkit.PortChannelmethod), 388

has_parent() (acitoolkit.acitoolkit.Search method),394

has_parent() (acitoolkit.acitoolkit.Subnet method),400

has_parent() (acitoolkit.acitoolkit.Taboo method),406

has_parent() (acitoolkit.acitoolkit.Tag method), 411has_parent() (acitoolkit.acitoolkit.Tenant method),

417has_parent() (acitoolkit.acitoolkit.VMM method),

423has_parent() (acitoolkit.acitoolkit.VMMCredentials

method), 428

has_parent() (acitoolkit.acitoolkit.VmmDomainmethod), 434

has_port_in_common() (cableplan.CpLinkmethod), 452

has_subnet() (acitoolkit.acitoolkit.BridgeDomainmethod), 203

has_tag() (acitoolkit.acibaseobject.BaseACIObjectmethod), 57

has_tag() (acitoolkit.aciphysobject.Cluster method),66

has_tag() (acitoolkit.aciphysobject.ExternalSwitchmethod), 72

has_tag() (acitoolkit.aciphysobject.Fabric method),77

has_tag() (acitoolkit.aciphysobject.Fan method), 83has_tag() (acitoolkit.aciphysobject.Fantray method),

89has_tag() (acitoolkit.aciphysobject.Interface

method), 95has_tag() (acitoolkit.aciphysobject.Linecard

method), 103has_tag() (acitoolkit.aciphysobject.Link method), 109has_tag() (acitoolkit.aciphysobject.Node method),

116has_tag() (acitoolkit.aciphysobject.PhysicalModel

method), 121has_tag() (acitoolkit.aciphysobject.Pod method), 127has_tag() (acitoolkit.aciphysobject.Powersupply

method), 133has_tag() (acitoolkit.aciphysobject.Process method),

139has_tag() (acitoolkit.aciphysobject.Supervisorcard

method), 145has_tag() (acitoolkit.aciphysobject.Systemcontroller

method), 152has_tag() (acitoolkit.acitoolkit.AnyEPG method), 162has_tag() (acitoolkit.acitoolkit.AppProfile method),

167has_tag() (acitoolkit.acitoolkit.AttributeCriterion

method), 173has_tag() (acitoolkit.acitoolkit.BaseContract

method), 184has_tag() (acitoolkit.acitoolkit.BaseSubnet method),

191has_tag() (acitoolkit.acitoolkit.BaseTerminal

method), 197has_tag() (acitoolkit.acitoolkit.BGPSession method),

179has_tag() (acitoolkit.acitoolkit.BridgeDomain

method), 203has_tag() (acitoolkit.acitoolkit.CommonEPG

method), 213has_tag() (acitoolkit.acitoolkit.Context method), 219has_tag() (acitoolkit.acitoolkit.Contract method), 225

Index 543

acitoolkit Documentation, Release 0.1

has_tag() (acitoolkit.acitoolkit.ContractInterfacemethod), 230

has_tag() (acitoolkit.acitoolkit.ContractSubjectmethod), 236

has_tag() (acitoolkit.acitoolkit.Endpoint method),256

has_tag() (acitoolkit.acitoolkit.EPG method), 244has_tag() (acitoolkit.acitoolkit.EPGDomain method),

250has_tag() (acitoolkit.acitoolkit.FexInterface method),

261has_tag() (acitoolkit.acitoolkit.Filter method), 267has_tag() (acitoolkit.acitoolkit.FilterEntry method),

273has_tag() (acitoolkit.acitoolkit.InputTerminal

method), 284has_tag() (acitoolkit.acitoolkit.IPEndpoint method),

278has_tag() (acitoolkit.acitoolkit.L2ExtDomain

method), 289has_tag() (acitoolkit.acitoolkit.L2Interface method),

295has_tag() (acitoolkit.acitoolkit.L3ExtDomain

method), 301has_tag() (acitoolkit.acitoolkit.L3Interface method),

307has_tag() (acitoolkit.acitoolkit.LogicalModel

method), 312has_tag() (acitoolkit.acitoolkit.NetworkPool method),

322has_tag() (acitoolkit.acitoolkit.OSPFInterface

method), 328has_tag() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 333has_tag() (acitoolkit.acitoolkit.OSPFRouter method),

339has_tag() (acitoolkit.acitoolkit.OutputTerminal

method), 345has_tag() (acitoolkit.acitoolkit.OutsideEPG method),

352has_tag() (acitoolkit.acitoolkit.OutsideL2 method),

358has_tag() (acitoolkit.acitoolkit.OutsideL2EPG

method), 365has_tag() (acitoolkit.acitoolkit.OutsideL3 method),

371has_tag() (acitoolkit.acitoolkit.OutsideNetwork

method), 377has_tag() (acitoolkit.acitoolkit.PhysDomain method),

383has_tag() (acitoolkit.acitoolkit.PortChannel method),

388has_tag() (acitoolkit.acitoolkit.Search method), 394has_tag() (acitoolkit.acitoolkit.Subnet method), 400

has_tag() (acitoolkit.acitoolkit.Taboo method), 406has_tag() (acitoolkit.acitoolkit.Tag method), 411has_tag() (acitoolkit.acitoolkit.Tenant method), 417has_tag() (acitoolkit.acitoolkit.VMM method), 423has_tag() (acitoolkit.acitoolkit.VMMCredentials

method), 428has_tag() (acitoolkit.acitoolkit.VmmDomain

method), 434has_tags() (acitoolkit.acibaseobject.BaseACIObject

method), 57has_tags() (acitoolkit.aciphysobject.Cluster

method), 66has_tags() (acitoolkit.aciphysobject.ExternalSwitch

method), 72has_tags() (acitoolkit.aciphysobject.Fabric method),

77has_tags() (acitoolkit.aciphysobject.Fan method), 83has_tags() (acitoolkit.aciphysobject.Fantray

method), 89has_tags() (acitoolkit.aciphysobject.Interface

method), 96has_tags() (acitoolkit.aciphysobject.Linecard

method), 103has_tags() (acitoolkit.aciphysobject.Link method),

109has_tags() (acitoolkit.aciphysobject.Node method),

116has_tags() (acitoolkit.aciphysobject.PhysicalModel

method), 121has_tags() (acitoolkit.aciphysobject.Pod method),

127has_tags() (acitoolkit.aciphysobject.Powersupply

method), 133has_tags() (acitoolkit.aciphysobject.Process

method), 139has_tags() (acitoolkit.aciphysobject.Supervisorcard

method), 145has_tags() (acitoolkit.aciphysobject.Systemcontroller

method), 152has_tags() (acitoolkit.acitoolkit.AnyEPG method),

162has_tags() (acitoolkit.acitoolkit.AppProfile method),

168has_tags() (acitoolkit.acitoolkit.AttributeCriterion

method), 173has_tags() (acitoolkit.acitoolkit.BaseContract

method), 184has_tags() (acitoolkit.acitoolkit.BaseSubnet

method), 191has_tags() (acitoolkit.acitoolkit.BaseTerminal

method), 197has_tags() (acitoolkit.acitoolkit.BGPSession

method), 179has_tags() (acitoolkit.acitoolkit.BridgeDomain

544 Index

acitoolkit Documentation, Release 0.1

method), 203has_tags() (acitoolkit.acitoolkit.CommonEPG

method), 213has_tags() (acitoolkit.acitoolkit.Context method),

219has_tags() (acitoolkit.acitoolkit.Contract method),

225has_tags() (acitoolkit.acitoolkit.ContractInterface

method), 230has_tags() (acitoolkit.acitoolkit.ContractSubject

method), 236has_tags() (acitoolkit.acitoolkit.Endpoint method),

256has_tags() (acitoolkit.acitoolkit.EPG method), 244has_tags() (acitoolkit.acitoolkit.EPGDomain

method), 250has_tags() (acitoolkit.acitoolkit.FexInterface

method), 261has_tags() (acitoolkit.acitoolkit.Filter method), 267has_tags() (acitoolkit.acitoolkit.FilterEntry method),

273has_tags() (acitoolkit.acitoolkit.InputTerminal

method), 284has_tags() (acitoolkit.acitoolkit.IPEndpoint method),

279has_tags() (acitoolkit.acitoolkit.L2ExtDomain

method), 290has_tags() (acitoolkit.acitoolkit.L2Interface

method), 295has_tags() (acitoolkit.acitoolkit.L3ExtDomain

method), 301has_tags() (acitoolkit.acitoolkit.L3Interface

method), 307has_tags() (acitoolkit.acitoolkit.LogicalModel

method), 313has_tags() (acitoolkit.acitoolkit.NetworkPool

method), 323has_tags() (acitoolkit.acitoolkit.OSPFInterface

method), 328has_tags() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 334has_tags() (acitoolkit.acitoolkit.OSPFRouter

method), 339has_tags() (acitoolkit.acitoolkit.OutputTerminal

method), 345has_tags() (acitoolkit.acitoolkit.OutsideEPG

method), 352has_tags() (acitoolkit.acitoolkit.OutsideL2 method),

358has_tags() (acitoolkit.acitoolkit.OutsideL2EPG

method), 365has_tags() (acitoolkit.acitoolkit.OutsideL3 method),

371has_tags() (acitoolkit.acitoolkit.OutsideNetwork

method), 377has_tags() (acitoolkit.acitoolkit.PhysDomain

method), 383has_tags() (acitoolkit.acitoolkit.PortChannel

method), 388has_tags() (acitoolkit.acitoolkit.Search method), 394has_tags() (acitoolkit.acitoolkit.Subnet method), 400has_tags() (acitoolkit.acitoolkit.Taboo method), 406has_tags() (acitoolkit.acitoolkit.Tag method), 411has_tags() (acitoolkit.acitoolkit.Tenant method), 417has_tags() (acitoolkit.acitoolkit.VMM method), 423has_tags() (acitoolkit.acitoolkit.VMMCredentials

method), 428has_tags() (acitoolkit.acitoolkit.VmmDomain

method), 434

Iimport_contract() (aci-

toolkit.acitoolkit.ContractInterface method),230

info() (acitoolkit.acibaseobject.BaseACIObjectmethod), 57

info() (acitoolkit.aciphysobject.Cluster method), 66info() (acitoolkit.aciphysobject.ExternalSwitch

method), 72info() (acitoolkit.aciphysobject.Fabric method), 77info() (acitoolkit.aciphysobject.Fan method), 83info() (acitoolkit.aciphysobject.Fantray method), 89info() (acitoolkit.aciphysobject.Interface method), 96info() (acitoolkit.aciphysobject.Linecard method), 103info() (acitoolkit.aciphysobject.Link method), 110info() (acitoolkit.aciphysobject.Node method), 116info() (acitoolkit.aciphysobject.PhysicalModel

method), 121info() (acitoolkit.aciphysobject.Pod method), 127info() (acitoolkit.aciphysobject.Powersupply method),

133info() (acitoolkit.aciphysobject.Process method), 139info() (acitoolkit.aciphysobject.Supervisorcard

method), 145info() (acitoolkit.aciphysobject.Systemcontroller

method), 152info() (acitoolkit.acitoolkit.AnyEPG method), 162info() (acitoolkit.acitoolkit.AppProfile method), 168info() (acitoolkit.acitoolkit.AttributeCriterion

method), 173info() (acitoolkit.acitoolkit.BaseContract method),

184info() (acitoolkit.acitoolkit.BaseSubnet method), 191info() (acitoolkit.acitoolkit.BaseTerminal method),

197info() (acitoolkit.acitoolkit.BGPSession method), 179info() (acitoolkit.acitoolkit.BridgeDomain method),

203

Index 545

acitoolkit Documentation, Release 0.1

info() (acitoolkit.acitoolkit.CommonEPG method),213

info() (acitoolkit.acitoolkit.Context method), 219info() (acitoolkit.acitoolkit.Contract method), 225info() (acitoolkit.acitoolkit.ContractInterface

method), 231info() (acitoolkit.acitoolkit.ContractSubject method),

236info() (acitoolkit.acitoolkit.Endpoint method), 256info() (acitoolkit.acitoolkit.EPG method), 244info() (acitoolkit.acitoolkit.EPGDomain method), 250info() (acitoolkit.acitoolkit.FexInterface method), 261info() (acitoolkit.acitoolkit.Filter method), 267info() (acitoolkit.acitoolkit.FilterEntry method), 273info() (acitoolkit.acitoolkit.InputTerminal method),

284info() (acitoolkit.acitoolkit.IPEndpoint method), 279info() (acitoolkit.acitoolkit.L2ExtDomain method),

290info() (acitoolkit.acitoolkit.L2Interface method), 295info() (acitoolkit.acitoolkit.L3ExtDomain method),

301info() (acitoolkit.acitoolkit.L3Interface method), 307info() (acitoolkit.acitoolkit.LogicalModel method),

313info() (acitoolkit.acitoolkit.NetworkPool method), 323info() (acitoolkit.acitoolkit.OSPFInterface method),

328info() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 334info() (acitoolkit.acitoolkit.OSPFRouter method), 339info() (acitoolkit.acitoolkit.OutputTerminal method),

345info() (acitoolkit.acitoolkit.OutsideEPG method), 352info() (acitoolkit.acitoolkit.OutsideL2 method), 358info() (acitoolkit.acitoolkit.OutsideL2EPG method),

365info() (acitoolkit.acitoolkit.OutsideL3 method), 371info() (acitoolkit.acitoolkit.OutsideNetwork method),

377info() (acitoolkit.acitoolkit.PhysDomain method), 383info() (acitoolkit.acitoolkit.PortChannel method), 389info() (acitoolkit.acitoolkit.Search method), 394info() (acitoolkit.acitoolkit.Subnet method), 400info() (acitoolkit.acitoolkit.Taboo method), 406info() (acitoolkit.acitoolkit.Tag method), 411info() (acitoolkit.acitoolkit.Tenant method), 417info() (acitoolkit.acitoolkit.VMM method), 423info() (acitoolkit.acitoolkit.VMMCredentials method),

428info() (acitoolkit.acitoolkit.VmmDomain method), 434infoList() (acitoolkit.acibaseobject.BaseACIObject

method), 57

infoList() (acitoolkit.aciphysobject.Clustermethod), 66

infoList() (acitoolkit.aciphysobject.ExternalSwitchmethod), 72

infoList() (acitoolkit.aciphysobject.Fabric method),77

infoList() (acitoolkit.aciphysobject.Fan method), 83infoList() (acitoolkit.aciphysobject.Fantray

method), 89infoList() (acitoolkit.aciphysobject.Interface

method), 96infoList() (acitoolkit.aciphysobject.Linecard

method), 103infoList() (acitoolkit.aciphysobject.Link method),

110infoList() (acitoolkit.aciphysobject.Node method),

116infoList() (acitoolkit.aciphysobject.PhysicalModel

method), 121infoList() (acitoolkit.aciphysobject.Pod method),

127infoList() (acitoolkit.aciphysobject.Powersupply

method), 133infoList() (acitoolkit.aciphysobject.Process

method), 139infoList() (acitoolkit.aciphysobject.Supervisorcard

method), 146infoList() (acitoolkit.aciphysobject.Systemcontroller

method), 152infoList() (acitoolkit.acitoolkit.AnyEPG method),

162infoList() (acitoolkit.acitoolkit.AppProfile method),

168infoList() (acitoolkit.acitoolkit.AttributeCriterion

method), 173infoList() (acitoolkit.acitoolkit.BaseContract

method), 185infoList() (acitoolkit.acitoolkit.BaseSubnet

method), 191infoList() (acitoolkit.acitoolkit.BaseTerminal

method), 197infoList() (acitoolkit.acitoolkit.BGPSession

method), 179infoList() (acitoolkit.acitoolkit.BridgeDomain

method), 204infoList() (acitoolkit.acitoolkit.CommonEPG

method), 213infoList() (acitoolkit.acitoolkit.Context method),

219infoList() (acitoolkit.acitoolkit.Contract method),

225infoList() (acitoolkit.acitoolkit.ContractInterface

method), 231infoList() (acitoolkit.acitoolkit.ContractSubject

546 Index

acitoolkit Documentation, Release 0.1

method), 236infoList() (acitoolkit.acitoolkit.Endpoint method),

256infoList() (acitoolkit.acitoolkit.EPG method), 244infoList() (acitoolkit.acitoolkit.EPGDomain

method), 250infoList() (acitoolkit.acitoolkit.FexInterface

method), 261infoList() (acitoolkit.acitoolkit.Filter method), 267infoList() (acitoolkit.acitoolkit.FilterEntry method),

273infoList() (acitoolkit.acitoolkit.InputTerminal

method), 284infoList() (acitoolkit.acitoolkit.IPEndpoint method),

279infoList() (acitoolkit.acitoolkit.L2ExtDomain

method), 290infoList() (acitoolkit.acitoolkit.L2Interface

method), 296infoList() (acitoolkit.acitoolkit.L3ExtDomain

method), 301infoList() (acitoolkit.acitoolkit.L3Interface

method), 307infoList() (acitoolkit.acitoolkit.LogicalModel

method), 313infoList() (acitoolkit.acitoolkit.NetworkPool

method), 323infoList() (acitoolkit.acitoolkit.OSPFInterface

method), 328infoList() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 334infoList() (acitoolkit.acitoolkit.OSPFRouter

method), 339infoList() (acitoolkit.acitoolkit.OutputTerminal

method), 345infoList() (acitoolkit.acitoolkit.OutsideEPG

method), 352infoList() (acitoolkit.acitoolkit.OutsideL2 method),

358infoList() (acitoolkit.acitoolkit.OutsideL2EPG

method), 365infoList() (acitoolkit.acitoolkit.OutsideL3 method),

371infoList() (acitoolkit.acitoolkit.OutsideNetwork

method), 377infoList() (acitoolkit.acitoolkit.PhysDomain

method), 383infoList() (acitoolkit.acitoolkit.PortChannel

method), 389infoList() (acitoolkit.acitoolkit.Search method), 394infoList() (acitoolkit.acitoolkit.Subnet method), 400infoList() (acitoolkit.acitoolkit.Taboo method), 406infoList() (acitoolkit.acitoolkit.Tag method), 411infoList() (acitoolkit.acitoolkit.Tenant method), 417

infoList() (acitoolkit.acitoolkit.VMM method), 423infoList() (acitoolkit.acitoolkit.VMMCredentials

method), 428infoList() (acitoolkit.acitoolkit.VmmDomain

method), 434InputTerminal (class in acitoolkit.acitoolkit), 280Interface (class in acitoolkit.aciphysobject), 91invoke_login_callbacks() (aci-

toolkit.acisession.Session method), 155ip (acitoolkit.acitoolkit.BaseSubnet attribute), 191ip (acitoolkit.acitoolkit.OutsideNetwork attribute), 377ip (acitoolkit.acitoolkit.Subnet attribute), 400IPEndpoint (class in acitoolkit.acitoolkit), 275is_arp_flood() (acitoolkit.acitoolkit.BridgeDomain

method), 204is_attached() (aci-

toolkit.acibaseobject.BaseACIObject method),57

is_attached() (aci-toolkit.acibaseobject.BaseRelation method),61

is_attached() (acitoolkit.aciphysobject.Clustermethod), 66

is_attached() (aci-toolkit.aciphysobject.ExternalSwitch method),72

is_attached() (acitoolkit.aciphysobject.Fabricmethod), 77

is_attached() (acitoolkit.aciphysobject.Fanmethod), 83

is_attached() (acitoolkit.aciphysobject.Fantraymethod), 89

is_attached() (acitoolkit.aciphysobject.Interfacemethod), 96

is_attached() (acitoolkit.aciphysobject.Linecardmethod), 103

is_attached() (acitoolkit.aciphysobject.Linkmethod), 110

is_attached() (acitoolkit.aciphysobject.Nodemethod), 116

is_attached() (aci-toolkit.aciphysobject.PhysicalModel method),121

is_attached() (acitoolkit.aciphysobject.Podmethod), 127

is_attached() (aci-toolkit.aciphysobject.Powersupply method),133

is_attached() (acitoolkit.aciphysobject.Processmethod), 139

is_attached() (aci-toolkit.aciphysobject.Supervisorcard method),146

is_attached() (aci-

Index 547

acitoolkit Documentation, Release 0.1

toolkit.aciphysobject.Systemcontrollermethod), 152

is_attached() (acitoolkit.acitoolkit.AnyEPGmethod), 162

is_attached() (acitoolkit.acitoolkit.AppProfilemethod), 168

is_attached() (aci-toolkit.acitoolkit.AttributeCriterion method),173

is_attached() (acitoolkit.acitoolkit.BaseContractmethod), 185

is_attached() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

is_attached() (acitoolkit.acitoolkit.BaseTerminalmethod), 197

is_attached() (acitoolkit.acitoolkit.BGPSessionmethod), 179

is_attached() (acitoolkit.acitoolkit.BridgeDomainmethod), 204

is_attached() (acitoolkit.acitoolkit.CommonEPGmethod), 214

is_attached() (acitoolkit.acitoolkit.Contextmethod), 219

is_attached() (acitoolkit.acitoolkit.Contractmethod), 225

is_attached() (aci-toolkit.acitoolkit.ContractInterface method),231

is_attached() (acitoolkit.acitoolkit.ContractSubjectmethod), 236

is_attached() (acitoolkit.acitoolkit.Endpointmethod), 256

is_attached() (acitoolkit.acitoolkit.EPG method),244

is_attached() (acitoolkit.acitoolkit.EPGDomainmethod), 250

is_attached() (acitoolkit.acitoolkit.FexInterfacemethod), 262

is_attached() (acitoolkit.acitoolkit.Filter method),267

is_attached() (acitoolkit.acitoolkit.FilterEntrymethod), 273

is_attached() (acitoolkit.acitoolkit.InputTerminalmethod), 284

is_attached() (acitoolkit.acitoolkit.IPEndpointmethod), 279

is_attached() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290

is_attached() (acitoolkit.acitoolkit.L2Interfacemethod), 296

is_attached() (acitoolkit.acitoolkit.L3ExtDomainmethod), 301

is_attached() (acitoolkit.acitoolkit.L3Interfacemethod), 307

is_attached() (acitoolkit.acitoolkit.LogicalModelmethod), 313

is_attached() (acitoolkit.acitoolkit.NetworkPoolmethod), 323

is_attached() (acitoolkit.acitoolkit.OSPFInterfacemethod), 328

is_attached() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

is_attached() (acitoolkit.acitoolkit.OSPFRoutermethod), 339

is_attached() (acitoolkit.acitoolkit.OutputTerminalmethod), 345

is_attached() (acitoolkit.acitoolkit.OutsideEPGmethod), 352

is_attached() (acitoolkit.acitoolkit.OutsideL2method), 358

is_attached() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365

is_attached() (acitoolkit.acitoolkit.OutsideL3method), 371

is_attached() (acitoolkit.acitoolkit.OutsideNetworkmethod), 377

is_attached() (acitoolkit.acitoolkit.PhysDomainmethod), 383

is_attached() (acitoolkit.acitoolkit.PortChannelmethod), 389

is_attached() (acitoolkit.acitoolkit.Search method),394

is_attached() (acitoolkit.acitoolkit.Subnet method),400

is_attached() (acitoolkit.acitoolkit.Taboo method),406

is_attached() (acitoolkit.acitoolkit.Tag method),411

is_attached() (acitoolkit.acitoolkit.Tenant method),417

is_attached() (acitoolkit.acitoolkit.VMM method),423

is_attached() (aci-toolkit.acitoolkit.VMMCredentials method),429

is_attached() (acitoolkit.acitoolkit.VmmDomainmethod), 434

is_attributed_based (acitoolkit.acitoolkit.EPGattribute), 244

is_bgp() (acitoolkit.acitoolkit.BGPSession staticmethod), 179

is_cdp_disabled() (aci-toolkit.aciphysobject.Interface method),96

is_cdp_enabled() (aci-toolkit.aciphysobject.Interface method),96

548 Index

acitoolkit Documentation, Release 0.1

is_connected() (cableplan.CpLink method), 452is_deleted() (aci-

toolkit.acibaseobject.BaseACIObject method),57

is_deleted() (acitoolkit.aciFaults.Faults method),437

is_deleted() (acitoolkit.aciphysobject.Clustermethod), 66

is_deleted() (aci-toolkit.aciphysobject.ExternalSwitch method),72

is_deleted() (acitoolkit.aciphysobject.Fabricmethod), 77

is_deleted() (acitoolkit.aciphysobject.Fan method),83

is_deleted() (acitoolkit.aciphysobject.Fantraymethod), 90

is_deleted() (acitoolkit.aciphysobject.Interfacemethod), 96

is_deleted() (acitoolkit.aciphysobject.Linecardmethod), 103

is_deleted() (acitoolkit.aciphysobject.Linkmethod), 110

is_deleted() (acitoolkit.aciphysobject.Nodemethod), 116

is_deleted() (aci-toolkit.aciphysobject.PhysicalModel method),121

is_deleted() (acitoolkit.aciphysobject.Pod method),127

is_deleted() (acitoolkit.aciphysobject.Powersupplymethod), 134

is_deleted() (acitoolkit.aciphysobject.Processmethod), 139

is_deleted() (aci-toolkit.aciphysobject.Supervisorcard method),146

is_deleted() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152

is_deleted() (acitoolkit.acitoolkit.AnyEPGmethod), 162

is_deleted() (acitoolkit.acitoolkit.AppProfilemethod), 168

is_deleted() (aci-toolkit.acitoolkit.AttributeCriterion method),174

is_deleted() (acitoolkit.acitoolkit.BaseContractmethod), 185

is_deleted() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

is_deleted() (acitoolkit.acitoolkit.BaseTerminalmethod), 197

is_deleted() (acitoolkit.acitoolkit.BGPSession

method), 179is_deleted() (acitoolkit.acitoolkit.BridgeDomain

method), 204is_deleted() (acitoolkit.acitoolkit.CommonEPG

method), 214is_deleted() (acitoolkit.acitoolkit.Context method),

219is_deleted() (acitoolkit.acitoolkit.Contract

method), 225is_deleted() (acitoolkit.acitoolkit.ContractInterface

method), 231is_deleted() (acitoolkit.acitoolkit.ContractSubject

method), 236is_deleted() (acitoolkit.acitoolkit.Endpoint

method), 256is_deleted() (acitoolkit.acitoolkit.EPG method),

244is_deleted() (acitoolkit.acitoolkit.EPGDomain

method), 250is_deleted() (acitoolkit.acitoolkit.FexInterface

method), 262is_deleted() (acitoolkit.acitoolkit.Filter method),

267is_deleted() (acitoolkit.acitoolkit.FilterEntry

method), 273is_deleted() (acitoolkit.acitoolkit.InputTerminal

method), 284is_deleted() (acitoolkit.acitoolkit.IPEndpoint

method), 279is_deleted() (acitoolkit.acitoolkit.L2ExtDomain

method), 290is_deleted() (acitoolkit.acitoolkit.L2Interface

method), 296is_deleted() (acitoolkit.acitoolkit.L3ExtDomain

method), 301is_deleted() (acitoolkit.acitoolkit.L3Interface

method), 307is_deleted() (acitoolkit.acitoolkit.LogicalModel

method), 313is_deleted() (acitoolkit.acitoolkit.NetworkPool

method), 323is_deleted() (acitoolkit.acitoolkit.OSPFInterface

method), 328is_deleted() (aci-

toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

is_deleted() (acitoolkit.acitoolkit.OSPFRoutermethod), 339

is_deleted() (acitoolkit.acitoolkit.OutputTerminalmethod), 345

is_deleted() (acitoolkit.acitoolkit.OutsideEPGmethod), 352

is_deleted() (acitoolkit.acitoolkit.OutsideL2method), 358

Index 549

acitoolkit Documentation, Release 0.1

is_deleted() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365

is_deleted() (acitoolkit.acitoolkit.OutsideL3method), 371

is_deleted() (acitoolkit.acitoolkit.OutsideNetworkmethod), 377

is_deleted() (acitoolkit.acitoolkit.PhysDomainmethod), 383

is_deleted() (acitoolkit.acitoolkit.PortChannelmethod), 389

is_deleted() (acitoolkit.acitoolkit.Search method),394

is_deleted() (acitoolkit.acitoolkit.Subnet method),400

is_deleted() (acitoolkit.acitoolkit.Taboo method),406

is_deleted() (acitoolkit.acitoolkit.Tag method), 412is_deleted() (acitoolkit.acitoolkit.Tenant method),

417is_deleted() (acitoolkit.acitoolkit.VMM method),

423is_deleted() (acitoolkit.acitoolkit.VMMCredentials

method), 429is_deleted() (acitoolkit.acitoolkit.VmmDomain

method), 434is_detached() (aci-

toolkit.acibaseobject.BaseACIObject method),57

is_detached() (aci-toolkit.acibaseobject.BaseRelation method),61

is_detached() (acitoolkit.aciphysobject.Clustermethod), 66

is_detached() (aci-toolkit.aciphysobject.ExternalSwitch method),72

is_detached() (acitoolkit.aciphysobject.Fabricmethod), 77

is_detached() (acitoolkit.aciphysobject.Fanmethod), 83

is_detached() (acitoolkit.aciphysobject.Fantraymethod), 90

is_detached() (acitoolkit.aciphysobject.Interfacemethod), 96

is_detached() (acitoolkit.aciphysobject.Linecardmethod), 103

is_detached() (acitoolkit.aciphysobject.Linkmethod), 110

is_detached() (acitoolkit.aciphysobject.Nodemethod), 116

is_detached() (aci-toolkit.aciphysobject.PhysicalModel method),121

is_detached() (acitoolkit.aciphysobject.Pod

method), 127is_detached() (aci-

toolkit.aciphysobject.Powersupply method),134

is_detached() (acitoolkit.aciphysobject.Processmethod), 139

is_detached() (aci-toolkit.aciphysobject.Supervisorcard method),146

is_detached() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152

is_detached() (acitoolkit.acitoolkit.AnyEPGmethod), 162

is_detached() (acitoolkit.acitoolkit.AppProfilemethod), 168

is_detached() (aci-toolkit.acitoolkit.AttributeCriterion method),174

is_detached() (acitoolkit.acitoolkit.BaseContractmethod), 185

is_detached() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

is_detached() (acitoolkit.acitoolkit.BaseTerminalmethod), 197

is_detached() (acitoolkit.acitoolkit.BGPSessionmethod), 179

is_detached() (acitoolkit.acitoolkit.BridgeDomainmethod), 204

is_detached() (acitoolkit.acitoolkit.CommonEPGmethod), 214

is_detached() (acitoolkit.acitoolkit.Contextmethod), 219

is_detached() (acitoolkit.acitoolkit.Contractmethod), 225

is_detached() (aci-toolkit.acitoolkit.ContractInterface method),231

is_detached() (acitoolkit.acitoolkit.ContractSubjectmethod), 236

is_detached() (acitoolkit.acitoolkit.Endpointmethod), 256

is_detached() (acitoolkit.acitoolkit.EPG method),244

is_detached() (acitoolkit.acitoolkit.EPGDomainmethod), 250

is_detached() (acitoolkit.acitoolkit.FexInterfacemethod), 262

is_detached() (acitoolkit.acitoolkit.Filter method),267

is_detached() (acitoolkit.acitoolkit.FilterEntrymethod), 273

is_detached() (acitoolkit.acitoolkit.InputTerminalmethod), 284

550 Index

acitoolkit Documentation, Release 0.1

is_detached() (acitoolkit.acitoolkit.IPEndpointmethod), 279

is_detached() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290

is_detached() (acitoolkit.acitoolkit.L2Interfacemethod), 296

is_detached() (acitoolkit.acitoolkit.L3ExtDomainmethod), 301

is_detached() (acitoolkit.acitoolkit.L3Interfacemethod), 307

is_detached() (acitoolkit.acitoolkit.LogicalModelmethod), 313

is_detached() (acitoolkit.acitoolkit.NetworkPoolmethod), 323

is_detached() (acitoolkit.acitoolkit.OSPFInterfacemethod), 328

is_detached() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

is_detached() (acitoolkit.acitoolkit.OSPFRoutermethod), 339

is_detached() (acitoolkit.acitoolkit.OutputTerminalmethod), 345

is_detached() (acitoolkit.acitoolkit.OutsideEPGmethod), 352

is_detached() (acitoolkit.acitoolkit.OutsideL2method), 358

is_detached() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365

is_detached() (acitoolkit.acitoolkit.OutsideL3method), 371

is_detached() (acitoolkit.acitoolkit.OutsideNetworkmethod), 377

is_detached() (acitoolkit.acitoolkit.PhysDomainmethod), 383

is_detached() (acitoolkit.acitoolkit.PortChannelmethod), 389

is_detached() (acitoolkit.acitoolkit.Search method),394

is_detached() (acitoolkit.acitoolkit.Subnet method),400

is_detached() (acitoolkit.acitoolkit.Taboo method),406

is_detached() (acitoolkit.acitoolkit.Tag method),412

is_detached() (acitoolkit.acitoolkit.Tenant method),417

is_detached() (acitoolkit.acitoolkit.VMM method),423

is_detached() (aci-toolkit.acitoolkit.VMMCredentials method),429

is_detached() (acitoolkit.acitoolkit.VmmDomainmethod), 434

is_dn_a_fex_interface() (aci-toolkit.acitoolkit.FexInterface class method),262

is_dn_vpc() (acitoolkit.acibaseobject.BaseInterfacestatic method), 61

is_dn_vpc() (acitoolkit.aciphysobject.Interface staticmethod), 96

is_dn_vpc() (acitoolkit.acitoolkit.PortChannel staticmethod), 389

is_interface() (aci-toolkit.acibaseobject.BaseACIObject staticmethod), 57

is_interface() (acitoolkit.aciphysobject.Clusterstatic method), 66

is_interface() (aci-toolkit.aciphysobject.ExternalSwitch staticmethod), 72

is_interface() (acitoolkit.aciphysobject.Fabricstatic method), 77

is_interface() (acitoolkit.aciphysobject.Fan staticmethod), 84

is_interface() (acitoolkit.aciphysobject.Fantraystatic method), 90

is_interface() (acitoolkit.aciphysobject.Interfacemethod), 96

is_interface() (acitoolkit.aciphysobject.Linecardstatic method), 103

is_interface() (acitoolkit.aciphysobject.Link staticmethod), 110

is_interface() (acitoolkit.aciphysobject.Nodestatic method), 116

is_interface() (aci-toolkit.aciphysobject.PhysicalModel staticmethod), 121

is_interface() (acitoolkit.aciphysobject.Pod staticmethod), 128

is_interface() (aci-toolkit.aciphysobject.Powersupply staticmethod), 134

is_interface() (acitoolkit.aciphysobject.Processstatic method), 140

is_interface() (aci-toolkit.aciphysobject.Supervisorcard staticmethod), 146

is_interface() (aci-toolkit.aciphysobject.Systemcontroller staticmethod), 152

is_interface() (acitoolkit.acitoolkit.AnyEPG staticmethod), 162

is_interface() (acitoolkit.acitoolkit.AppProfilestatic method), 168

is_interface() (aci-toolkit.acitoolkit.AttributeCriterion staticmethod), 174

Index 551

acitoolkit Documentation, Release 0.1

is_interface() (acitoolkit.acitoolkit.BaseContractstatic method), 185

is_interface() (acitoolkit.acitoolkit.BaseSubnetstatic method), 192

is_interface() (acitoolkit.acitoolkit.BaseTerminalstatic method), 197

is_interface() (acitoolkit.acitoolkit.BGPSessionmethod), 179

is_interface() (acitoolkit.acitoolkit.BridgeDomainstatic method), 204

is_interface() (acitoolkit.acitoolkit.CommonEPGstatic method), 214

is_interface() (acitoolkit.acitoolkit.Context staticmethod), 219

is_interface() (acitoolkit.acitoolkit.Contract staticmethod), 225

is_interface() (aci-toolkit.acitoolkit.ContractInterface staticmethod), 231

is_interface() (aci-toolkit.acitoolkit.ContractSubject staticmethod), 236

is_interface() (acitoolkit.acitoolkit.Endpointstatic method), 256

is_interface() (acitoolkit.acitoolkit.EPG staticmethod), 244

is_interface() (acitoolkit.acitoolkit.EPGDomainstatic method), 251

is_interface() (acitoolkit.acitoolkit.FexInterfacestatic method), 262

is_interface() (acitoolkit.acitoolkit.Filter staticmethod), 267

is_interface() (acitoolkit.acitoolkit.FilterEntrystatic method), 273

is_interface() (acitoolkit.acitoolkit.InputTerminalstatic method), 285

is_interface() (acitoolkit.acitoolkit.IPEndpointstatic method), 279

is_interface() (acitoolkit.acitoolkit.L2ExtDomainstatic method), 290

is_interface() (acitoolkit.acitoolkit.L2Interfacemethod), 296

is_interface() (acitoolkit.acitoolkit.L3ExtDomainstatic method), 301

is_interface() (acitoolkit.acitoolkit.L3Interfacemethod), 307

is_interface() (acitoolkit.acitoolkit.LogicalModelstatic method), 313

is_interface() (acitoolkit.acitoolkit.NetworkPoolstatic method), 323

is_interface() (aci-toolkit.acitoolkit.OSPFInterface method),328

is_interface() (aci-

toolkit.acitoolkit.OSPFInterfacePolicy staticmethod), 334

is_interface() (acitoolkit.acitoolkit.OSPFRouterstatic method), 340

is_interface() (aci-toolkit.acitoolkit.OutputTerminal staticmethod), 345

is_interface() (acitoolkit.acitoolkit.OutsideEPGstatic method), 352

is_interface() (acitoolkit.acitoolkit.OutsideL2static method), 358

is_interface() (aci-toolkit.acitoolkit.OutsideL2EPG staticmethod), 365

is_interface() (acitoolkit.acitoolkit.OutsideL3static method), 371

is_interface() (aci-toolkit.acitoolkit.OutsideNetwork staticmethod), 377

is_interface() (acitoolkit.acitoolkit.PhysDomainstatic method), 383

is_interface() (acitoolkit.acitoolkit.PortChannelmethod), 389

is_interface() (acitoolkit.acitoolkit.Search staticmethod), 395

is_interface() (acitoolkit.acitoolkit.Subnet staticmethod), 400

is_interface() (acitoolkit.acitoolkit.Taboo staticmethod), 406

is_interface() (acitoolkit.acitoolkit.Tag staticmethod), 412

is_interface() (acitoolkit.acitoolkit.Tenant staticmethod), 417

is_interface() (acitoolkit.acitoolkit.VMM staticmethod), 423

is_interface() (aci-toolkit.acitoolkit.VMMCredentials staticmethod), 429

is_interface() (acitoolkit.acitoolkit.VmmDomainstatic method), 434

is_lldp_disabled() (aci-toolkit.aciphysobject.Interface method),96

is_lldp_enabled() (aci-toolkit.aciphysobject.Interface method),96

is_ospf() (acitoolkit.acitoolkit.OSPFInterface staticmethod), 328

is_spine() (cableplan.CpSwitch method), 453is_subscribed() (acitoolkit.acisession.Session

method), 156is_unicast_route() (aci-

toolkit.acitoolkit.BridgeDomain method),204

552 Index

acitoolkit Documentation, Release 0.1

is_vpc() (acitoolkit.acitoolkit.PortChannel method),389

isModified() (aci-toolkit.acitoolkit.BaseMonitorClass method),187

isModified() (acitoolkit.acitoolkit.CollectionPolicymethod), 207

isModified() (acitoolkit.acitoolkit.MonitorPolicymethod), 316

isModified() (acitoolkit.acitoolkit.MonitorStatsmethod), 317

isModified() (acitoolkit.acitoolkit.MonitorTargetmethod), 318

LL2ExtDomain (class in acitoolkit.acitoolkit), 286L2Interface (class in acitoolkit.acitoolkit), 291L3ExtDomain (class in acitoolkit.acitoolkit), 297L3Interface (class in acitoolkit.acitoolkit), 303Linecard (class in acitoolkit.aciphysobject), 98Link (class in acitoolkit.aciphysobject), 104list() (cableplan.CpPort method), 451logged_in() (acitoolkit.acisession.Session method),

156LogicalModel (class in acitoolkit.acitoolkit), 309login() (acitoolkit.acisession.Session method), 156

Mmark_as_deleted() (aci-

toolkit.acibaseobject.BaseACIObject method),57

mark_as_deleted() (acitoolkit.aciFaults.Faultsmethod), 437

mark_as_deleted() (aci-toolkit.aciphysobject.Cluster method), 66

mark_as_deleted() (aci-toolkit.aciphysobject.ExternalSwitch method),72

mark_as_deleted() (aci-toolkit.aciphysobject.Fabric method), 78

mark_as_deleted() (acitoolkit.aciphysobject.Fanmethod), 84

mark_as_deleted() (aci-toolkit.aciphysobject.Fantray method), 90

mark_as_deleted() (aci-toolkit.aciphysobject.Interface method),96

mark_as_deleted() (aci-toolkit.aciphysobject.Linecard method),103

mark_as_deleted() (acitoolkit.aciphysobject.Linkmethod), 110

mark_as_deleted() (acitoolkit.aciphysobject.Nodemethod), 116

mark_as_deleted() (aci-toolkit.aciphysobject.PhysicalModel method),122

mark_as_deleted() (acitoolkit.aciphysobject.Podmethod), 128

mark_as_deleted() (aci-toolkit.aciphysobject.Powersupply method),134

mark_as_deleted() (aci-toolkit.aciphysobject.Process method), 140

mark_as_deleted() (aci-toolkit.aciphysobject.Supervisorcard method),146

mark_as_deleted() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152

mark_as_deleted() (acitoolkit.acitoolkit.AnyEPGmethod), 163

mark_as_deleted() (aci-toolkit.acitoolkit.AppProfile method), 168

mark_as_deleted() (aci-toolkit.acitoolkit.AttributeCriterion method),174

mark_as_deleted() (aci-toolkit.acitoolkit.BaseContract method),185

mark_as_deleted() (aci-toolkit.acitoolkit.BaseSubnet method), 192

mark_as_deleted() (aci-toolkit.acitoolkit.BaseTerminal method),198

mark_as_deleted() (aci-toolkit.acitoolkit.BGPSession method), 179

mark_as_deleted() (aci-toolkit.acitoolkit.BridgeDomain method),204

mark_as_deleted() (aci-toolkit.acitoolkit.CommonEPG method),214

mark_as_deleted() (acitoolkit.acitoolkit.Contextmethod), 219

mark_as_deleted() (acitoolkit.acitoolkit.Contractmethod), 225

mark_as_deleted() (aci-toolkit.acitoolkit.ContractInterface method),231

mark_as_deleted() (aci-toolkit.acitoolkit.ContractSubject method),237

mark_as_deleted() (acitoolkit.acitoolkit.Endpointmethod), 256

mark_as_deleted() (acitoolkit.acitoolkit.EPGmethod), 244

mark_as_deleted() (aci-

Index 553

acitoolkit Documentation, Release 0.1

toolkit.acitoolkit.EPGDomain method), 251mark_as_deleted() (aci-

toolkit.acitoolkit.FexInterface method), 262mark_as_deleted() (acitoolkit.acitoolkit.Filter

method), 267mark_as_deleted() (aci-

toolkit.acitoolkit.FilterEntry method), 274mark_as_deleted() (aci-

toolkit.acitoolkit.InputTerminal method),285

mark_as_deleted() (aci-toolkit.acitoolkit.IPEndpoint method), 279

mark_as_deleted() (aci-toolkit.acitoolkit.L2ExtDomain method),290

mark_as_deleted() (aci-toolkit.acitoolkit.L2Interface method), 296

mark_as_deleted() (aci-toolkit.acitoolkit.L3ExtDomain method),301

mark_as_deleted() (aci-toolkit.acitoolkit.L3Interface method), 307

mark_as_deleted() (aci-toolkit.acitoolkit.LogicalModel method),313

mark_as_deleted() (aci-toolkit.acitoolkit.NetworkPool method), 323

mark_as_deleted() (aci-toolkit.acitoolkit.OSPFInterface method),329

mark_as_deleted() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

mark_as_deleted() (aci-toolkit.acitoolkit.OSPFRouter method), 340

mark_as_deleted() (aci-toolkit.acitoolkit.OutputTerminal method),345

mark_as_deleted() (aci-toolkit.acitoolkit.OutsideEPG method), 352

mark_as_deleted() (acitoolkit.acitoolkit.OutsideL2method), 358

mark_as_deleted() (aci-toolkit.acitoolkit.OutsideL2EPG method),365

mark_as_deleted() (acitoolkit.acitoolkit.OutsideL3method), 371

mark_as_deleted() (aci-toolkit.acitoolkit.OutsideNetwork method),377

mark_as_deleted() (aci-toolkit.acitoolkit.PhysDomain method), 383

mark_as_deleted() (aci-toolkit.acitoolkit.PortChannel method), 389

mark_as_deleted() (acitoolkit.acitoolkit.Searchmethod), 395

mark_as_deleted() (acitoolkit.acitoolkit.Subnetmethod), 400

mark_as_deleted() (acitoolkit.acitoolkit.Taboomethod), 406

mark_as_deleted() (acitoolkit.acitoolkit.Tagmethod), 412

mark_as_deleted() (acitoolkit.acitoolkit.Tenantmethod), 418

mark_as_deleted() (acitoolkit.acitoolkit.VMMmethod), 423

mark_as_deleted() (aci-toolkit.acitoolkit.VMMCredentials method),429

mark_as_deleted() (aci-toolkit.acitoolkit.VmmDomain method),434

mask_class_from_graphs() (aci-toolkit.acibaseobject.BaseACIObject classmethod), 57

mask_class_from_graphs() (aci-toolkit.aciphysobject.Cluster class method),66

mask_class_from_graphs() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 72

mask_class_from_graphs() (aci-toolkit.aciphysobject.Fabric class method),78

mask_class_from_graphs() (aci-toolkit.aciphysobject.Fan class method),84

mask_class_from_graphs() (aci-toolkit.aciphysobject.Fantray class method),90

mask_class_from_graphs() (aci-toolkit.aciphysobject.Interface class method),96

mask_class_from_graphs() (aci-toolkit.aciphysobject.Linecard class method),103

mask_class_from_graphs() (aci-toolkit.aciphysobject.Link class method),110

mask_class_from_graphs() (aci-toolkit.aciphysobject.Node class method),116

mask_class_from_graphs() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 122

mask_class_from_graphs() (aci-toolkit.aciphysobject.Pod class method),128

554 Index

acitoolkit Documentation, Release 0.1

mask_class_from_graphs() (aci-toolkit.aciphysobject.Powersupply classmethod), 134

mask_class_from_graphs() (aci-toolkit.aciphysobject.Process class method),140

mask_class_from_graphs() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 146

mask_class_from_graphs() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 152

mask_class_from_graphs() (aci-toolkit.acitoolkit.AnyEPG class method),163

mask_class_from_graphs() (aci-toolkit.acitoolkit.AppProfile class method),168

mask_class_from_graphs() (aci-toolkit.acitoolkit.AttributeCriterion classmethod), 174

mask_class_from_graphs() (aci-toolkit.acitoolkit.BaseContract class method),185

mask_class_from_graphs() (aci-toolkit.acitoolkit.BaseSubnet class method),192

mask_class_from_graphs() (aci-toolkit.acitoolkit.BaseTerminal class method),198

mask_class_from_graphs() (aci-toolkit.acitoolkit.BGPSession class method),179

mask_class_from_graphs() (aci-toolkit.acitoolkit.BridgeDomain class method),204

mask_class_from_graphs() (aci-toolkit.acitoolkit.CommonEPG class method),214

mask_class_from_graphs() (aci-toolkit.acitoolkit.Context class method),219

mask_class_from_graphs() (aci-toolkit.acitoolkit.Contract class method),225

mask_class_from_graphs() (aci-toolkit.acitoolkit.ContractInterface classmethod), 231

mask_class_from_graphs() (aci-toolkit.acitoolkit.ContractSubject classmethod), 237

mask_class_from_graphs() (aci-toolkit.acitoolkit.Endpoint class method),256

mask_class_from_graphs() (aci-toolkit.acitoolkit.EPG class method), 244

mask_class_from_graphs() (aci-toolkit.acitoolkit.EPGDomain class method),251

mask_class_from_graphs() (aci-toolkit.acitoolkit.FexInterface class method),262

mask_class_from_graphs() (aci-toolkit.acitoolkit.Filter class method), 268

mask_class_from_graphs() (aci-toolkit.acitoolkit.FilterEntry class method),274

mask_class_from_graphs() (aci-toolkit.acitoolkit.InputTerminal class method),285

mask_class_from_graphs() (aci-toolkit.acitoolkit.IPEndpoint class method),279

mask_class_from_graphs() (aci-toolkit.acitoolkit.L2ExtDomain class method),290

mask_class_from_graphs() (aci-toolkit.acitoolkit.L2Interface class method),296

mask_class_from_graphs() (aci-toolkit.acitoolkit.L3ExtDomain class method),301

mask_class_from_graphs() (aci-toolkit.acitoolkit.L3Interface class method),307

mask_class_from_graphs() (aci-toolkit.acitoolkit.LogicalModel class method),313

mask_class_from_graphs() (aci-toolkit.acitoolkit.NetworkPool class method),323

mask_class_from_graphs() (aci-toolkit.acitoolkit.OSPFInterface class method),329

mask_class_from_graphs() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 334

mask_class_from_graphs() (aci-toolkit.acitoolkit.OSPFRouter class method),340

mask_class_from_graphs() (aci-toolkit.acitoolkit.OutputTerminal classmethod), 345

mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideEPG class method),352

mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideL2 class method),

Index 555

acitoolkit Documentation, Release 0.1

358mask_class_from_graphs() (aci-

toolkit.acitoolkit.OutsideL2EPG class method),365

mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideL3 class method),371

mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideNetwork classmethod), 377

mask_class_from_graphs() (aci-toolkit.acitoolkit.PhysDomain class method),383

mask_class_from_graphs() (aci-toolkit.acitoolkit.PortChannel class method),389

mask_class_from_graphs() (aci-toolkit.acitoolkit.Search class method), 395

mask_class_from_graphs() (aci-toolkit.acitoolkit.Subnet class method), 400

mask_class_from_graphs() (aci-toolkit.acitoolkit.Taboo class method), 406

mask_class_from_graphs() (aci-toolkit.acitoolkit.Tag class method), 412

mask_class_from_graphs() (aci-toolkit.acitoolkit.Tenant class method), 418

mask_class_from_graphs() (aci-toolkit.acitoolkit.VMM class method), 423

mask_class_from_graphs() (aci-toolkit.acitoolkit.VMMCredentials classmethod), 429

mask_class_from_graphs() (aci-toolkit.acitoolkit.VmmDomain class method),434

match (acitoolkit.acitoolkit.AttributeCriterion at-tribute), 174

match_links() (cableplan.CpLink static method),452

merge() (cableplan.CpSwitch method), 453MonitorPolicy (class in acitoolkit.acitoolkit), 314MonitorStats (class in acitoolkit.acitoolkit), 316MonitorTarget (class in acitoolkit.acitoolkit), 318

Nname() (cableplan.CpPort method), 451NetworkPool (class in acitoolkit.acitoolkit), 319Node (class in acitoolkit.aciphysobject), 111

OoperSt (acitoolkit.aciphysobject.Node attribute), 116order() (cableplan.CpLink method), 452OSPFInterface (class in acitoolkit.acitoolkit), 324OSPFInterfacePolicy (class in aci-

toolkit.acitoolkit), 330

OSPFRouter (class in acitoolkit.acitoolkit), 335OutputTerminal (class in acitoolkit.acitoolkit), 341OutsideEPG (class in acitoolkit.acitoolkit), 347OutsideL2 (class in acitoolkit.acitoolkit), 354OutsideL2EPG (class in acitoolkit.acitoolkit), 360OutsideL3 (class in acitoolkit.acitoolkit), 367OutsideNetwork (class in acitoolkit.acitoolkit), 373

Pparse_dn() (acitoolkit.aciphysobject.Interface class

method), 97parse_dn() (acitoolkit.acitoolkit.FexInterface class

method), 262parse_encap() (acitoolkit.acitoolkit.L2Interface

static method), 296parse_name() (acitoolkit.aciphysobject.Interface

static method), 97PhysDomain (class in acitoolkit.acitoolkit), 379PhysicalModel (class in acitoolkit.aciphysobject),

118Pod (class in acitoolkit.aciphysobject), 123populate_children() (aci-

toolkit.acibaseobject.BaseACIObject method),57

populate_children() (aci-toolkit.aciphysobject.Cluster method), 66

populate_children() (aci-toolkit.aciphysobject.ExternalSwitch method),72

populate_children() (aci-toolkit.aciphysobject.Fabric method), 78

populate_children() (aci-toolkit.aciphysobject.Fan method), 84

populate_children() (aci-toolkit.aciphysobject.Fantray method), 90

populate_children() (aci-toolkit.aciphysobject.Interface method),97

populate_children() (aci-toolkit.aciphysobject.Linecard method),103

populate_children() (aci-toolkit.aciphysobject.Link method), 110

populate_children() (aci-toolkit.aciphysobject.Node method), 117

populate_children() (aci-toolkit.aciphysobject.PhysicalModel method),122

populate_children() (aci-toolkit.aciphysobject.Pod method), 128

populate_children() (aci-toolkit.aciphysobject.Powersupply method),134

556 Index

acitoolkit Documentation, Release 0.1

populate_children() (aci-toolkit.aciphysobject.Process method), 140

populate_children() (aci-toolkit.aciphysobject.Supervisorcard method),146

populate_children() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152

populate_children() (aci-toolkit.acitoolkit.AnyEPG method), 163

populate_children() (aci-toolkit.acitoolkit.AppProfile method), 168

populate_children() (aci-toolkit.acitoolkit.AttributeCriterion method),174

populate_children() (aci-toolkit.acitoolkit.BaseContract method),185

populate_children() (aci-toolkit.acitoolkit.BaseSubnet method), 192

populate_children() (aci-toolkit.acitoolkit.BaseTerminal method),198

populate_children() (aci-toolkit.acitoolkit.BGPSession method), 180

populate_children() (aci-toolkit.acitoolkit.BridgeDomain method),204

populate_children() (aci-toolkit.acitoolkit.CommonEPG method),214

populate_children() (aci-toolkit.acitoolkit.Context method), 220

populate_children() (aci-toolkit.acitoolkit.Contract method), 225

populate_children() (aci-toolkit.acitoolkit.ContractInterface method),231

populate_children() (aci-toolkit.acitoolkit.ContractSubject method),237

populate_children() (aci-toolkit.acitoolkit.Endpoint method), 256

populate_children() (acitoolkit.acitoolkit.EPGmethod), 245

populate_children() (aci-toolkit.acitoolkit.EPGDomain method), 251

populate_children() (aci-toolkit.acitoolkit.FexInterface method), 262

populate_children() (acitoolkit.acitoolkit.Filtermethod), 268

populate_children() (aci-toolkit.acitoolkit.FilterEntry method), 274

populate_children() (aci-

toolkit.acitoolkit.InputTerminal method),285

populate_children() (aci-toolkit.acitoolkit.IPEndpoint method), 279

populate_children() (aci-toolkit.acitoolkit.L2ExtDomain method),290

populate_children() (aci-toolkit.acitoolkit.L2Interface method), 296

populate_children() (aci-toolkit.acitoolkit.L3ExtDomain method),302

populate_children() (aci-toolkit.acitoolkit.L3Interface method), 307

populate_children() (aci-toolkit.acitoolkit.LogicalModel method),313

populate_children() (aci-toolkit.acitoolkit.NetworkPool method), 323

populate_children() (aci-toolkit.acitoolkit.OSPFInterface method),329

populate_children() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

populate_children() (aci-toolkit.acitoolkit.OSPFRouter method), 340

populate_children() (aci-toolkit.acitoolkit.OutputTerminal method),345

populate_children() (aci-toolkit.acitoolkit.OutsideEPG method), 352

populate_children() (aci-toolkit.acitoolkit.OutsideL2 method), 358

populate_children() (aci-toolkit.acitoolkit.OutsideL2EPG method),365

populate_children() (aci-toolkit.acitoolkit.OutsideL3 method), 372

populate_children() (aci-toolkit.acitoolkit.OutsideNetwork method),377

populate_children() (aci-toolkit.acitoolkit.PhysDomain method), 383

populate_children() (aci-toolkit.acitoolkit.PortChannel method), 389

populate_children() (acitoolkit.acitoolkit.Searchmethod), 395

populate_children() (acitoolkit.acitoolkit.Subnetmethod), 401

populate_children() (acitoolkit.acitoolkit.Taboomethod), 406

populate_children() (acitoolkit.acitoolkit.Tagmethod), 412

Index 557

acitoolkit Documentation, Release 0.1

populate_children() (acitoolkit.acitoolkit.Tenantmethod), 418

populate_children() (acitoolkit.acitoolkit.VMMmethod), 423

populate_children() (aci-toolkit.acitoolkit.VMMCredentials method),429

populate_children() (aci-toolkit.acitoolkit.VmmDomain method),435

PortChannel (class in acitoolkit.acitoolkit), 385Powersupply (class in acitoolkit.aciphysobject), 129print_help() (acitoolkit.acitoolkitlib.Credentials

method), 437Process (class in acitoolkit.aciphysobject), 135protect() (acitoolkit.acitoolkit.AnyEPG method), 163protect() (acitoolkit.acitoolkit.CommonEPG

method), 214protect() (acitoolkit.acitoolkit.EPG method), 245protect() (acitoolkit.acitoolkit.OutsideEPG method),

353protect() (acitoolkit.acitoolkit.OutsideL2EPG

method), 366provide() (acitoolkit.acitoolkit.AnyEPG method), 163provide() (acitoolkit.acitoolkit.CommonEPG

method), 214provide() (acitoolkit.acitoolkit.EPG method), 245provide() (acitoolkit.acitoolkit.OutsideEPG method),

353provide() (acitoolkit.acitoolkit.OutsideL2EPG

method), 366push_to_apic() (acitoolkit.aciphysobject.Interface

method), 97push_to_apic() (acitoolkit.acisession.Session

method), 156push_to_apic() (acitoolkit.acitoolkit.PhysDomain

method), 384push_to_apic() (acitoolkit.acitoolkit.Tenant

method), 418

Rrefresh_login() (acitoolkit.acisession.Session

method), 156register_login_callback() (aci-

toolkit.acisession.Session method), 156remaining_avail() (cableplan.CpLink method),

452remaining_need() (cableplan.CpLink method), 452remove_available_port() (cableplan.CpPort

method), 451remove_bd() (acitoolkit.acitoolkit.EPG method), 245remove_bd() (acitoolkit.acitoolkit.OutsideL2

method), 359

remove_child() (aci-toolkit.acibaseobject.BaseACIObject method),58

remove_child() (acitoolkit.aciphysobject.Clustermethod), 67

remove_child() (aci-toolkit.aciphysobject.ExternalSwitch method),73

remove_child() (acitoolkit.aciphysobject.Fabricmethod), 78

remove_child() (acitoolkit.aciphysobject.Fanmethod), 84

remove_child() (acitoolkit.aciphysobject.Fantraymethod), 90

remove_child() (acitoolkit.aciphysobject.Interfacemethod), 97

remove_child() (acitoolkit.aciphysobject.Linecardmethod), 103

remove_child() (acitoolkit.aciphysobject.Linkmethod), 110

remove_child() (acitoolkit.aciphysobject.Nodemethod), 117

remove_child() (aci-toolkit.aciphysobject.PhysicalModel method),122

remove_child() (acitoolkit.aciphysobject.Podmethod), 128

remove_child() (aci-toolkit.aciphysobject.Powersupply method),134

remove_child() (acitoolkit.aciphysobject.Processmethod), 140

remove_child() (aci-toolkit.aciphysobject.Supervisorcard method),146

remove_child() (aci-toolkit.aciphysobject.Systemcontrollermethod), 153

remove_child() (acitoolkit.acitoolkit.AnyEPGmethod), 163

remove_child() (acitoolkit.acitoolkit.AppProfilemethod), 168

remove_child() (aci-toolkit.acitoolkit.AttributeCriterion method),174

remove_child() (acitoolkit.acitoolkit.BaseContractmethod), 185

remove_child() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

remove_child() (acitoolkit.acitoolkit.BaseTerminalmethod), 198

remove_child() (acitoolkit.acitoolkit.BGPSessionmethod), 180

remove_child() (acitoolkit.acitoolkit.BridgeDomain

558 Index

acitoolkit Documentation, Release 0.1

method), 204remove_child() (acitoolkit.acitoolkit.CommonEPG

method), 214remove_child() (acitoolkit.acitoolkit.Context

method), 220remove_child() (acitoolkit.acitoolkit.Contract

method), 225remove_child() (aci-

toolkit.acitoolkit.ContractInterface method),231

remove_child() (aci-toolkit.acitoolkit.ContractSubject method),237

remove_child() (acitoolkit.acitoolkit.Endpointmethod), 257

remove_child() (acitoolkit.acitoolkit.EPG method),245

remove_child() (acitoolkit.acitoolkit.EPGDomainmethod), 251

remove_child() (acitoolkit.acitoolkit.FexInterfacemethod), 262

remove_child() (acitoolkit.acitoolkit.Filter method),268

remove_child() (acitoolkit.acitoolkit.FilterEntrymethod), 274

remove_child() (acitoolkit.acitoolkit.InputTerminalmethod), 285

remove_child() (acitoolkit.acitoolkit.IPEndpointmethod), 279

remove_child() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290

remove_child() (acitoolkit.acitoolkit.L2Interfacemethod), 296

remove_child() (acitoolkit.acitoolkit.L3ExtDomainmethod), 302

remove_child() (acitoolkit.acitoolkit.L3Interfacemethod), 308

remove_child() (acitoolkit.acitoolkit.LogicalModelmethod), 313

remove_child() (acitoolkit.acitoolkit.NetworkPoolmethod), 323

remove_child() (aci-toolkit.acitoolkit.OSPFInterface method),329

remove_child() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

remove_child() (acitoolkit.acitoolkit.OSPFRoutermethod), 340

remove_child() (aci-toolkit.acitoolkit.OutputTerminal method),346

remove_child() (acitoolkit.acitoolkit.OutsideEPGmethod), 353

remove_child() (acitoolkit.acitoolkit.OutsideL2method), 359

remove_child() (aci-toolkit.acitoolkit.OutsideL2EPG method),366

remove_child() (acitoolkit.acitoolkit.OutsideL3method), 372

remove_child() (aci-toolkit.acitoolkit.OutsideNetwork method),378

remove_child() (acitoolkit.acitoolkit.PhysDomainmethod), 384

remove_child() (acitoolkit.acitoolkit.PortChannelmethod), 389

remove_child() (acitoolkit.acitoolkit.Searchmethod), 395

remove_child() (acitoolkit.acitoolkit.Subnetmethod), 401

remove_child() (acitoolkit.acitoolkit.Taboomethod), 407

remove_child() (acitoolkit.acitoolkit.Tag method),412

remove_child() (acitoolkit.acitoolkit.Tenantmethod), 418

remove_child() (acitoolkit.acitoolkit.VMMmethod), 424

remove_child() (aci-toolkit.acitoolkit.VMMCredentials method),429

remove_child() (acitoolkit.acitoolkit.VmmDomainmethod), 435

remove_collection_policy() (aci-toolkit.acitoolkit.BaseMonitorClass method),187

remove_collection_policy() (aci-toolkit.acitoolkit.CollectionPolicy method),207

remove_collection_policy() (aci-toolkit.acitoolkit.MonitorPolicy method),316

remove_collection_policy() (aci-toolkit.acitoolkit.MonitorStats method),317

remove_collection_policy() (aci-toolkit.acitoolkit.MonitorTarget method),318

remove_context() (aci-toolkit.acitoolkit.BridgeDomain method),204

remove_context() (acitoolkit.acitoolkit.L3Interfacemethod), 308

remove_context() (acitoolkit.acitoolkit.OutsideL3method), 372

remove_network() (aci-

Index 559

acitoolkit Documentation, Release 0.1

toolkit.acitoolkit.PhysDomain method), 384remove_stats() (aci-

toolkit.acitoolkit.BaseMonitorClass method),187

remove_stats() (aci-toolkit.acitoolkit.CollectionPolicy method),207

remove_stats() (acitoolkit.acitoolkit.MonitorPolicymethod), 316

remove_stats() (acitoolkit.acitoolkit.MonitorStatsmethod), 317

remove_stats() (acitoolkit.acitoolkit.MonitorTargetmethod), 319

remove_subnet() (aci-toolkit.acitoolkit.BridgeDomain method),204

remove_tag() (aci-toolkit.acibaseobject.BaseACIObject method),58

remove_tag() (acitoolkit.aciphysobject.Clustermethod), 67

remove_tag() (aci-toolkit.aciphysobject.ExternalSwitch method),73

remove_tag() (acitoolkit.aciphysobject.Fabricmethod), 78

remove_tag() (acitoolkit.aciphysobject.Fan method),84

remove_tag() (acitoolkit.aciphysobject.Fantraymethod), 90

remove_tag() (acitoolkit.aciphysobject.Interfacemethod), 97

remove_tag() (acitoolkit.aciphysobject.Linecardmethod), 104

remove_tag() (acitoolkit.aciphysobject.Linkmethod), 110

remove_tag() (acitoolkit.aciphysobject.Nodemethod), 117

remove_tag() (aci-toolkit.aciphysobject.PhysicalModel method),122

remove_tag() (acitoolkit.aciphysobject.Pod method),128

remove_tag() (acitoolkit.aciphysobject.Powersupplymethod), 134

remove_tag() (acitoolkit.aciphysobject.Processmethod), 140

remove_tag() (aci-toolkit.aciphysobject.Supervisorcard method),146

remove_tag() (aci-toolkit.aciphysobject.Systemcontrollermethod), 153

remove_tag() (acitoolkit.acitoolkit.AnyEPG

method), 163remove_tag() (acitoolkit.acitoolkit.AppProfile

method), 168remove_tag() (aci-

toolkit.acitoolkit.AttributeCriterion method),174

remove_tag() (acitoolkit.acitoolkit.BaseContractmethod), 185

remove_tag() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

remove_tag() (acitoolkit.acitoolkit.BaseTerminalmethod), 198

remove_tag() (acitoolkit.acitoolkit.BGPSessionmethod), 180

remove_tag() (acitoolkit.acitoolkit.BridgeDomainmethod), 205

remove_tag() (acitoolkit.acitoolkit.CommonEPGmethod), 214

remove_tag() (acitoolkit.acitoolkit.Context method),220

remove_tag() (acitoolkit.acitoolkit.Contractmethod), 226

remove_tag() (acitoolkit.acitoolkit.ContractInterfacemethod), 231

remove_tag() (acitoolkit.acitoolkit.ContractSubjectmethod), 237

remove_tag() (acitoolkit.acitoolkit.Endpointmethod), 257

remove_tag() (acitoolkit.acitoolkit.EPG method),245

remove_tag() (acitoolkit.acitoolkit.EPGDomainmethod), 251

remove_tag() (acitoolkit.acitoolkit.FexInterfacemethod), 262

remove_tag() (acitoolkit.acitoolkit.Filter method),268

remove_tag() (acitoolkit.acitoolkit.FilterEntrymethod), 274

remove_tag() (acitoolkit.acitoolkit.InputTerminalmethod), 285

remove_tag() (acitoolkit.acitoolkit.IPEndpointmethod), 279

remove_tag() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290

remove_tag() (acitoolkit.acitoolkit.L2Interfacemethod), 296

remove_tag() (acitoolkit.acitoolkit.L3ExtDomainmethod), 302

remove_tag() (acitoolkit.acitoolkit.L3Interfacemethod), 308

remove_tag() (acitoolkit.acitoolkit.LogicalModelmethod), 313

remove_tag() (acitoolkit.acitoolkit.NetworkPoolmethod), 323

560 Index

acitoolkit Documentation, Release 0.1

remove_tag() (acitoolkit.acitoolkit.OSPFInterfacemethod), 329

remove_tag() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334

remove_tag() (acitoolkit.acitoolkit.OSPFRoutermethod), 340

remove_tag() (acitoolkit.acitoolkit.OutputTerminalmethod), 346

remove_tag() (acitoolkit.acitoolkit.OutsideEPGmethod), 353

remove_tag() (acitoolkit.acitoolkit.OutsideL2method), 359

remove_tag() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 366

remove_tag() (acitoolkit.acitoolkit.OutsideL3method), 372

remove_tag() (acitoolkit.acitoolkit.OutsideNetworkmethod), 378

remove_tag() (acitoolkit.acitoolkit.PhysDomainmethod), 384

remove_tag() (acitoolkit.acitoolkit.PortChannelmethod), 389

remove_tag() (acitoolkit.acitoolkit.Search method),395

remove_tag() (acitoolkit.acitoolkit.Subnet method),401

remove_tag() (acitoolkit.acitoolkit.Taboo method),407

remove_tag() (acitoolkit.acitoolkit.Tag method), 412remove_tag() (acitoolkit.acitoolkit.Tenant method),

418remove_tag() (acitoolkit.acitoolkit.VMM method),

424remove_tag() (acitoolkit.acitoolkit.VMMCredentials

method), 429remove_tag() (acitoolkit.acitoolkit.VmmDomain

method), 435remove_target() (aci-

toolkit.acitoolkit.BaseMonitorClass method),187

remove_target() (aci-toolkit.acitoolkit.CollectionPolicy method),207

remove_target() (aci-toolkit.acitoolkit.MonitorPolicy method),316

remove_target() (acitoolkit.acitoolkit.MonitorStatsmethod), 317

remove_target() (aci-toolkit.acitoolkit.MonitorTarget method),319

reset_accounting() (cableplan.CABLEPLANmethod), 454

reset_accounting() (cableplan.CpLink method),453

reset_accounting() (cableplan.CpPort method),451

resubscribe() (acitoolkit.acisession.Sessionmethod), 156

retentionEnum (aci-toolkit.acitoolkit.CollectionPolicy attribute),207

role (acitoolkit.aciphysobject.ExternalSwitch at-tribute), 73

SSearch (class in acitoolkit.acitoolkit), 390Session (class in acitoolkit.acisession), 154set_addr() (acitoolkit.acitoolkit.BaseSubnet

method), 192set_addr() (acitoolkit.acitoolkit.L3Interface

method), 308set_addr() (acitoolkit.acitoolkit.OutsideNetwork

method), 378set_addr() (acitoolkit.acitoolkit.Subnet method), 401set_allow_all() (acitoolkit.acitoolkit.Context

method), 220set_area_type() (aci-

toolkit.acitoolkit.OSPFInterface method),329

set_arp_flood() (aci-toolkit.acitoolkit.BridgeDomain method),205

set_as_detached() (aci-toolkit.acibaseobject.BaseRelation method),61

set_base_epg() (acitoolkit.acitoolkit.EPG method),245

set_deployment_immediacy() (aci-toolkit.acitoolkit.EPG method), 245

set_description() (aci-toolkit.acitoolkit.BaseMonitorClass method),187

set_description() (aci-toolkit.acitoolkit.CollectionPolicy method),208

set_description() (aci-toolkit.acitoolkit.MonitorPolicy method),316

set_description() (aci-toolkit.acitoolkit.MonitorStats method),317

set_description() (aci-toolkit.acitoolkit.MonitorTarget method),319

set_dom_deployment_immediacy() (aci-toolkit.acitoolkit.EPG method), 245

Index 561

acitoolkit Documentation, Release 0.1

set_dom_resolution_immediacy() (aci-toolkit.acitoolkit.EPG method), 245

set_intra_epg_isolation() (aci-toolkit.acitoolkit.EPG method), 246

set_l3if_type() (acitoolkit.acitoolkit.L3Interfacemethod), 308

set_mac() (acitoolkit.acitoolkit.BridgeDomainmethod), 205

set_mtu() (acitoolkit.acitoolkit.L3Interface method),308

set_multidestination() (aci-toolkit.acitoolkit.BridgeDomain method),205

set_name() (acitoolkit.acitoolkit.BaseMonitorClassmethod), 187

set_name() (acitoolkit.acitoolkit.CollectionPolicymethod), 208

set_name() (acitoolkit.acitoolkit.MonitorPolicymethod), 316

set_name() (acitoolkit.acitoolkit.MonitorStatsmethod), 317

set_name() (acitoolkit.acitoolkit.MonitorTargetmethod), 319

set_name() (cableplan.CpSwitch method), 453set_node_id() (acitoolkit.acitoolkit.OSPFRouter

method), 340set_nw_type() (aci-

toolkit.acitoolkit.OSPFInterfacePolicymethod), 335

set_parent() (aci-toolkit.acibaseobject.BaseACIObject method),58

set_parent() (acitoolkit.aciphysobject.Clustermethod), 67

set_parent() (aci-toolkit.aciphysobject.ExternalSwitch method),73

set_parent() (acitoolkit.aciphysobject.Fabricmethod), 78

set_parent() (acitoolkit.aciphysobject.Fan method),84

set_parent() (acitoolkit.aciphysobject.Fantraymethod), 90

set_parent() (acitoolkit.aciphysobject.Interfacemethod), 97

set_parent() (acitoolkit.aciphysobject.Linecardmethod), 104

set_parent() (acitoolkit.aciphysobject.Linkmethod), 110

set_parent() (acitoolkit.aciphysobject.Nodemethod), 117

set_parent() (aci-toolkit.aciphysobject.PhysicalModel method),122

set_parent() (acitoolkit.aciphysobject.Pod method),128

set_parent() (acitoolkit.aciphysobject.Powersupplymethod), 134

set_parent() (acitoolkit.aciphysobject.Processmethod), 140

set_parent() (aci-toolkit.aciphysobject.Supervisorcard method),146

set_parent() (aci-toolkit.aciphysobject.Systemcontrollermethod), 153

set_parent() (acitoolkit.acitoolkit.AnyEPGmethod), 163

set_parent() (acitoolkit.acitoolkit.AppProfilemethod), 169

set_parent() (aci-toolkit.acitoolkit.AttributeCriterion method),174

set_parent() (acitoolkit.acitoolkit.BaseContractmethod), 185

set_parent() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

set_parent() (acitoolkit.acitoolkit.BaseTerminalmethod), 198

set_parent() (acitoolkit.acitoolkit.BGPSessionmethod), 180

set_parent() (acitoolkit.acitoolkit.BridgeDomainmethod), 205

set_parent() (acitoolkit.acitoolkit.CommonEPGmethod), 214

set_parent() (acitoolkit.acitoolkit.Context method),220

set_parent() (acitoolkit.acitoolkit.Contractmethod), 226

set_parent() (acitoolkit.acitoolkit.ContractInterfacemethod), 231

set_parent() (acitoolkit.acitoolkit.ContractSubjectmethod), 237

set_parent() (acitoolkit.acitoolkit.Endpointmethod), 257

set_parent() (acitoolkit.acitoolkit.EPG method),246

set_parent() (acitoolkit.acitoolkit.EPGDomainmethod), 251

set_parent() (acitoolkit.acitoolkit.FexInterfacemethod), 262

set_parent() (acitoolkit.acitoolkit.Filter method),268

set_parent() (acitoolkit.acitoolkit.FilterEntrymethod), 274

set_parent() (acitoolkit.acitoolkit.InputTerminalmethod), 285

set_parent() (acitoolkit.acitoolkit.IPEndpoint

562 Index

acitoolkit Documentation, Release 0.1

method), 280set_parent() (acitoolkit.acitoolkit.L2ExtDomain

method), 291set_parent() (acitoolkit.acitoolkit.L2Interface

method), 296set_parent() (acitoolkit.acitoolkit.L3ExtDomain

method), 302set_parent() (acitoolkit.acitoolkit.L3Interface

method), 308set_parent() (acitoolkit.acitoolkit.LogicalModel

method), 314set_parent() (acitoolkit.acitoolkit.NetworkPool

method), 324set_parent() (acitoolkit.acitoolkit.OSPFInterface

method), 329set_parent() (aci-

toolkit.acitoolkit.OSPFInterfacePolicymethod), 335

set_parent() (acitoolkit.acitoolkit.OSPFRoutermethod), 340

set_parent() (acitoolkit.acitoolkit.OutputTerminalmethod), 346

set_parent() (acitoolkit.acitoolkit.OutsideEPGmethod), 353

set_parent() (acitoolkit.acitoolkit.OutsideL2method), 359

set_parent() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 366

set_parent() (acitoolkit.acitoolkit.OutsideL3method), 372

set_parent() (acitoolkit.acitoolkit.OutsideNetworkmethod), 378

set_parent() (acitoolkit.acitoolkit.PhysDomainmethod), 384

set_parent() (acitoolkit.acitoolkit.PortChannelmethod), 390

set_parent() (acitoolkit.acitoolkit.Search method),395

set_parent() (acitoolkit.acitoolkit.Subnet method),401

set_parent() (acitoolkit.acitoolkit.Taboo method),407

set_parent() (acitoolkit.acitoolkit.Tag method), 412set_parent() (acitoolkit.acitoolkit.Tenant method),

418set_parent() (acitoolkit.acitoolkit.VMM method),

424set_parent() (acitoolkit.acitoolkit.VMMCredentials

method), 429set_parent() (acitoolkit.acitoolkit.VmmDomain

method), 435set_parent() (cableplan.CpSwitch method), 453set_router_id() (acitoolkit.acitoolkit.OSPFRouter

method), 340

set_scope() (acitoolkit.acitoolkit.BaseContractmethod), 186

set_scope() (acitoolkit.acitoolkit.BaseSubnetmethod), 192

set_scope() (acitoolkit.acitoolkit.Contract method),226

set_scope() (acitoolkit.acitoolkit.OutsideNetworkmethod), 378

set_scope() (acitoolkit.acitoolkit.Subnet method),401

set_scope() (acitoolkit.acitoolkit.Taboo method),407

set_unicast_route() (aci-toolkit.acitoolkit.BridgeDomain method),205

set_unknown_mac_unicast() (aci-toolkit.acitoolkit.BridgeDomain method),205

set_unknown_multicast() (aci-toolkit.acitoolkit.BridgeDomain method),205

setAdminState() (aci-toolkit.acitoolkit.CollectionPolicy method),207

setRetention() (aci-toolkit.acitoolkit.CollectionPolicy method),208

sorted_links() (cableplan.CABLEPLAN method),454

statsDictionary (acitoolkit.acitoolkit.MonitorStatsattribute), 318

statsFamilyEnum (acitoolkit.acitoolkit.MonitorStatsattribute), 318

Subnet (class in acitoolkit.acitoolkit), 396subscribe() (acitoolkit.acibaseobject.BaseACIObject

class method), 58subscribe() (acitoolkit.aciphysobject.Cluster class

method), 67subscribe() (acitoolkit.aciphysobject.ExternalSwitch

class method), 73subscribe() (acitoolkit.aciphysobject.Fabric class

method), 78subscribe() (acitoolkit.aciphysobject.Fan class

method), 84subscribe() (acitoolkit.aciphysobject.Fantray class

method), 90subscribe() (acitoolkit.aciphysobject.Interface class

method), 97subscribe() (acitoolkit.aciphysobject.Linecard class

method), 104subscribe() (acitoolkit.aciphysobject.Link class

method), 111subscribe() (acitoolkit.aciphysobject.Node class

method), 117

Index 563

acitoolkit Documentation, Release 0.1

subscribe() (acitoolkit.aciphysobject.PhysicalModelclass method), 122

subscribe() (acitoolkit.aciphysobject.Pod classmethod), 128

subscribe() (acitoolkit.aciphysobject.Powersupplyclass method), 134

subscribe() (acitoolkit.aciphysobject.Process classmethod), 140

subscribe() (acitoolkit.aciphysobject.Supervisorcardclass method), 147

subscribe() (acitoolkit.aciphysobject.Systemcontrollerclass method), 153

subscribe() (acitoolkit.acisession.Session method),156

subscribe() (acitoolkit.acitoolkit.AnyEPG classmethod), 163

subscribe() (acitoolkit.acitoolkit.AppProfile classmethod), 169

subscribe() (acitoolkit.acitoolkit.AttributeCriterionclass method), 174

subscribe() (acitoolkit.acitoolkit.BaseContract classmethod), 186

subscribe() (acitoolkit.acitoolkit.BaseSubnet classmethod), 193

subscribe() (acitoolkit.acitoolkit.BaseTerminal classmethod), 198

subscribe() (acitoolkit.acitoolkit.BGPSession classmethod), 180

subscribe() (acitoolkit.acitoolkit.BridgeDomainclass method), 205

subscribe() (acitoolkit.acitoolkit.CommonEPG classmethod), 215

subscribe() (acitoolkit.acitoolkit.Context classmethod), 220

subscribe() (acitoolkit.acitoolkit.Contract classmethod), 226

subscribe() (acitoolkit.acitoolkit.ContractInterfaceclass method), 232

subscribe() (acitoolkit.acitoolkit.ContractSubjectclass method), 237

subscribe() (acitoolkit.acitoolkit.Endpoint classmethod), 257

subscribe() (acitoolkit.acitoolkit.EPG classmethod), 246

subscribe() (acitoolkit.acitoolkit.EPGDomain classmethod), 251

subscribe() (acitoolkit.acitoolkit.FexInterface classmethod), 263

subscribe() (acitoolkit.acitoolkit.Filter classmethod), 268

subscribe() (acitoolkit.acitoolkit.FilterEntry classmethod), 274

subscribe() (acitoolkit.acitoolkit.InputTerminalclass method), 285

subscribe() (acitoolkit.acitoolkit.IPEndpoint classmethod), 280

subscribe() (acitoolkit.acitoolkit.L2ExtDomain classmethod), 291

subscribe() (acitoolkit.acitoolkit.L2Interface classmethod), 297

subscribe() (acitoolkit.acitoolkit.L3ExtDomain classmethod), 302

subscribe() (acitoolkit.acitoolkit.L3Interface classmethod), 308

subscribe() (acitoolkit.acitoolkit.LogicalModel classmethod), 314

subscribe() (acitoolkit.acitoolkit.NetworkPool classmethod), 324

subscribe() (acitoolkit.acitoolkit.OSPFInterfaceclass method), 329

subscribe() (acitoolkit.acitoolkit.OSPFInterfacePolicyclass method), 335

subscribe() (acitoolkit.acitoolkit.OSPFRouter classmethod), 340

subscribe() (acitoolkit.acitoolkit.OutputTerminalclass method), 346

subscribe() (acitoolkit.acitoolkit.OutsideEPG classmethod), 353

subscribe() (acitoolkit.acitoolkit.OutsideL2 classmethod), 359

subscribe() (acitoolkit.acitoolkit.OutsideL2EPGclass method), 366

subscribe() (acitoolkit.acitoolkit.OutsideL3 classmethod), 372

subscribe() (acitoolkit.acitoolkit.OutsideNetworkclass method), 378

subscribe() (acitoolkit.acitoolkit.PhysDomain classmethod), 384

subscribe() (acitoolkit.acitoolkit.PortChannel classmethod), 390

subscribe() (acitoolkit.acitoolkit.Search classmethod), 395

subscribe() (acitoolkit.acitoolkit.Subnet classmethod), 401

subscribe() (acitoolkit.acitoolkit.Taboo classmethod), 407

subscribe() (acitoolkit.acitoolkit.Tag class method),412

subscribe() (acitoolkit.acitoolkit.Tenant classmethod), 418

subscribe() (acitoolkit.acitoolkit.VMM classmethod), 424

subscribe() (acitoolkit.acitoolkit.VMMCredentialsclass method), 429

subscribe() (acitoolkit.acitoolkit.VmmDomain classmethod), 435

subscribe_faults() (acitoolkit.aciFaults.Faultsclass method), 438

564 Index

acitoolkit Documentation, Release 0.1

subscribe_to_fault_instances_subtree()(acitoolkit.acibaseobject.BaseACIObjectmethod), 58

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Cluster method), 67

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.ExternalSwitchmethod), 73

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Fabric method), 78

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Fan method), 84

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Fantray method), 91

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Interface method), 97

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Linecard method),104

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Link method), 111

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Node method), 117

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.PhysicalModelmethod), 122

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Pod method), 128

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Powersupply method),135

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Process method), 140

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Supervisorcardmethod), 147

subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Systemcontrollermethod), 153

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.AnyEPG method), 163

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.AppProfile method), 169

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.AttributeCriterionmethod), 175

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BaseContract method),186

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BaseSubnet method), 193

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BaseTerminal method),198

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BGPSession method), 180

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BridgeDomain method),205

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.CommonEPG method),215

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Context method), 220

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Contract method), 226

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.ContractInterfacemethod), 232

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.ContractSubject method),237

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Endpoint method), 257

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.EPG method), 246

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.EPGDomain method),251

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.FexInterface method), 263

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Filter method), 268

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.FilterEntry method), 274

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.InputTerminal method),285

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.IPEndpoint method), 280

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L2ExtDomain method),291

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L2Interface method), 297

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L3ExtDomain method),302

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L3Interface method), 308

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.LogicalModel method),314

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.NetworkPool method),324

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OSPFInterface method),

Index 565

acitoolkit Documentation, Release 0.1

329subscribe_to_fault_instances_subtree()

(acitoolkit.acitoolkit.OSPFInterfacePolicymethod), 335

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OSPFRouter method),341

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutputTerminal method),346

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideEPG method), 353

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideL2 method), 359

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideL2EPG method),366

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideL3 method), 372

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideNetwork method),378

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.PhysDomain method),384

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.PortChannel method), 390

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Search method), 395

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Subnet method), 401

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Taboo method), 407

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Tag method), 413

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Tenant method), 418

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.VMM method), 424

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.VMMCredentialsmethod), 430

subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.VmmDomain method),435

Supervisorcard (class in acitoolkit.aciphysobject),141

Systemcontroller (class in aci-toolkit.aciphysobject), 147

TTaboo (class in acitoolkit.acitoolkit), 402Tag (class in acitoolkit.acitoolkit), 408Tenant (class in acitoolkit.acitoolkit), 413

TunnelInterface (class in acitoolkit.acitoolkit), 419

Uunsubscribe() (aci-

toolkit.acibaseobject.BaseACIObject classmethod), 58

unsubscribe() (acitoolkit.aciphysobject.Clusterclass method), 67

unsubscribe() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 73

unsubscribe() (acitoolkit.aciphysobject.Fabric classmethod), 78

unsubscribe() (acitoolkit.aciphysobject.Fan classmethod), 85

unsubscribe() (acitoolkit.aciphysobject.Fantrayclass method), 91

unsubscribe() (acitoolkit.aciphysobject.Interfaceclass method), 98

unsubscribe() (acitoolkit.aciphysobject.Linecardclass method), 104

unsubscribe() (acitoolkit.aciphysobject.Link classmethod), 111

unsubscribe() (acitoolkit.aciphysobject.Node classmethod), 117

unsubscribe() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 123

unsubscribe() (acitoolkit.aciphysobject.Pod classmethod), 129

unsubscribe() (aci-toolkit.aciphysobject.Powersupply classmethod), 135

unsubscribe() (acitoolkit.aciphysobject.Processclass method), 141

unsubscribe() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 147

unsubscribe() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 153

unsubscribe() (acitoolkit.acisession.Sessionmethod), 156

unsubscribe() (acitoolkit.acitoolkit.AnyEPG classmethod), 164

unsubscribe() (acitoolkit.acitoolkit.AppProfile classmethod), 169

unsubscribe() (aci-toolkit.acitoolkit.AttributeCriterion classmethod), 175

unsubscribe() (acitoolkit.acitoolkit.BaseContractclass method), 186

unsubscribe() (acitoolkit.acitoolkit.BaseSubnetclass method), 193

566 Index

acitoolkit Documentation, Release 0.1

unsubscribe() (acitoolkit.acitoolkit.BaseTerminalclass method), 199

unsubscribe() (acitoolkit.acitoolkit.BGPSessionclass method), 180

unsubscribe() (acitoolkit.acitoolkit.BridgeDomainclass method), 206

unsubscribe() (acitoolkit.acitoolkit.CommonEPGclass method), 215

unsubscribe() (acitoolkit.acitoolkit.Context classmethod), 220

unsubscribe() (acitoolkit.acitoolkit.Contract classmethod), 226

unsubscribe() (aci-toolkit.acitoolkit.ContractInterface classmethod), 232

unsubscribe() (acitoolkit.acitoolkit.ContractSubjectclass method), 238

unsubscribe() (acitoolkit.acitoolkit.Endpoint classmethod), 257

unsubscribe() (acitoolkit.acitoolkit.EPG classmethod), 246

unsubscribe() (acitoolkit.acitoolkit.EPGDomainclass method), 252

unsubscribe() (acitoolkit.acitoolkit.FexInterfaceclass method), 263

unsubscribe() (acitoolkit.acitoolkit.Filter classmethod), 268

unsubscribe() (acitoolkit.acitoolkit.FilterEntryclass method), 274

unsubscribe() (acitoolkit.acitoolkit.InputTerminalclass method), 286

unsubscribe() (acitoolkit.acitoolkit.IPEndpointclass method), 280

unsubscribe() (acitoolkit.acitoolkit.L2ExtDomainclass method), 291

unsubscribe() (acitoolkit.acitoolkit.L2Interfaceclass method), 297

unsubscribe() (acitoolkit.acitoolkit.L3ExtDomainclass method), 302

unsubscribe() (acitoolkit.acitoolkit.L3Interfaceclass method), 309

unsubscribe() (acitoolkit.acitoolkit.LogicalModelclass method), 314

unsubscribe() (acitoolkit.acitoolkit.NetworkPoolclass method), 324

unsubscribe() (acitoolkit.acitoolkit.OSPFInterfaceclass method), 330

unsubscribe() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 335

unsubscribe() (acitoolkit.acitoolkit.OSPFRouterclass method), 341

unsubscribe() (acitoolkit.acitoolkit.OutputTerminalclass method), 346

unsubscribe() (acitoolkit.acitoolkit.OutsideEPGclass method), 354

unsubscribe() (acitoolkit.acitoolkit.OutsideL2 classmethod), 359

unsubscribe() (acitoolkit.acitoolkit.OutsideL2EPGclass method), 367

unsubscribe() (acitoolkit.acitoolkit.OutsideL3 classmethod), 372

unsubscribe() (acitoolkit.acitoolkit.OutsideNetworkclass method), 378

unsubscribe() (acitoolkit.acitoolkit.PhysDomainclass method), 384

unsubscribe() (acitoolkit.acitoolkit.PortChannelclass method), 390

unsubscribe() (acitoolkit.acitoolkit.Search classmethod), 396

unsubscribe() (acitoolkit.acitoolkit.Subnet classmethod), 402

unsubscribe() (acitoolkit.acitoolkit.Taboo classmethod), 407

unsubscribe() (acitoolkit.acitoolkit.Tag classmethod), 413

unsubscribe() (acitoolkit.acitoolkit.Tenant classmethod), 419

unsubscribe() (acitoolkit.acitoolkit.VMM classmethod), 424

unsubscribe() (aci-toolkit.acitoolkit.VMMCredentials classmethod), 430

unsubscribe() (acitoolkit.acitoolkit.VmmDomainclass method), 435

update_db() (acitoolkit.acibaseobject.BaseACIObjectmethod), 58

update_db() (acitoolkit.aciphysobject.Clustermethod), 67

update_db() (acitoolkit.aciphysobject.ExternalSwitchmethod), 73

update_db() (acitoolkit.aciphysobject.Fabricmethod), 79

update_db() (acitoolkit.aciphysobject.Fan method),85

update_db() (acitoolkit.aciphysobject.Fantraymethod), 91

update_db() (acitoolkit.aciphysobject.Interfacemethod), 98

update_db() (acitoolkit.aciphysobject.Linecardmethod), 104

update_db() (acitoolkit.aciphysobject.Link method),111

update_db() (acitoolkit.aciphysobject.Node method),117

update_db() (acitoolkit.aciphysobject.PhysicalModelmethod), 123

update_db() (acitoolkit.aciphysobject.Pod method),

Index 567

acitoolkit Documentation, Release 0.1

129update_db() (acitoolkit.aciphysobject.Powersupply

method), 135update_db() (acitoolkit.aciphysobject.Process

method), 141update_db() (acitoolkit.aciphysobject.Supervisorcard

method), 147update_db() (acitoolkit.aciphysobject.Systemcontroller

method), 153update_db() (acitoolkit.acitoolkit.AnyEPG method),

164update_db() (acitoolkit.acitoolkit.AppProfile

method), 169update_db() (acitoolkit.acitoolkit.AttributeCriterion

method), 175update_db() (acitoolkit.acitoolkit.BaseContract

method), 186update_db() (acitoolkit.acitoolkit.BaseSubnet

method), 193update_db() (acitoolkit.acitoolkit.BaseTerminal

method), 199update_db() (acitoolkit.acitoolkit.BGPSession

method), 180update_db() (acitoolkit.acitoolkit.BridgeDomain

method), 206update_db() (acitoolkit.acitoolkit.CommonEPG

method), 215update_db() (acitoolkit.acitoolkit.Context method),

221update_db() (acitoolkit.acitoolkit.Contract method),

226update_db() (acitoolkit.acitoolkit.ContractInterface

method), 232update_db() (acitoolkit.acitoolkit.ContractSubject

method), 238update_db() (acitoolkit.acitoolkit.Endpoint method),

257update_db() (acitoolkit.acitoolkit.EPG method), 246update_db() (acitoolkit.acitoolkit.EPGDomain

method), 252update_db() (acitoolkit.acitoolkit.FexInterface

method), 263update_db() (acitoolkit.acitoolkit.Filter method), 269update_db() (acitoolkit.acitoolkit.FilterEntry

method), 275update_db() (acitoolkit.acitoolkit.InputTerminal

method), 286update_db() (acitoolkit.acitoolkit.IPEndpoint

method), 280update_db() (acitoolkit.acitoolkit.L2ExtDomain

method), 291update_db() (acitoolkit.acitoolkit.L2Interface

method), 297update_db() (acitoolkit.acitoolkit.L3ExtDomain

method), 302update_db() (acitoolkit.acitoolkit.L3Interface

method), 309update_db() (acitoolkit.acitoolkit.LogicalModel

method), 314update_db() (acitoolkit.acitoolkit.NetworkPool

method), 324update_db() (acitoolkit.acitoolkit.OSPFInterface

method), 330update_db() (acitoolkit.acitoolkit.OSPFInterfacePolicy

method), 335update_db() (acitoolkit.acitoolkit.OSPFRouter

method), 341update_db() (acitoolkit.acitoolkit.OutputTerminal

method), 346update_db() (acitoolkit.acitoolkit.OutsideEPG

method), 354update_db() (acitoolkit.acitoolkit.OutsideL2

method), 359update_db() (acitoolkit.acitoolkit.OutsideL2EPG

method), 367update_db() (acitoolkit.acitoolkit.OutsideL3

method), 373update_db() (acitoolkit.acitoolkit.OutsideNetwork

method), 378update_db() (acitoolkit.acitoolkit.PhysDomain

method), 384update_db() (acitoolkit.acitoolkit.PortChannel

method), 390update_db() (acitoolkit.acitoolkit.Search method),

396update_db() (acitoolkit.acitoolkit.Subnet method),

402update_db() (acitoolkit.acitoolkit.Taboo method),

407update_db() (acitoolkit.acitoolkit.Tag method), 413update_db() (acitoolkit.acitoolkit.Tenant method),

419update_db() (acitoolkit.acitoolkit.VMM method), 424update_db() (acitoolkit.acitoolkit.VMMCredentials

method), 430update_db() (acitoolkit.acitoolkit.VmmDomain

method), 435

Vvalidate_fault_filter() (aci-

toolkit.aciFaults.Faults class method), 438verify() (acitoolkit.acitoolkitlib.Credentials method),

437VMM (class in acitoolkit.acitoolkit), 419VMMCredentials (class in acitoolkit.acitoolkit), 425VmmDomain (class in acitoolkit.acitoolkit), 430VMMvSwitchInfo (class in acitoolkit.acitoolkit), 430

568 Index

acitoolkit Documentation, Release 0.1

WWorkingData (class in acitoolkit.aciphysobject), 154

Index 569