Skip to main content

A10 Networks ACOS API Client

Project description

# ACOS Client

A10 github repos:

- [a10-openstack-lbaas](https://github.com/a10networks/a10-openstack-lbaas) - OpenStack LBaaS driver,
identical to the files that are currently merged into Juno. Also supports Icehouse. Pypi package
'a10-openstack-lbaas'.
- [a10-openstack-lbaas, havana branch](https://github.com/a10networks/a10-openstack-lbaas/tree/havana) - OpenStack
LBaaS driver, for the Havana release. Pypi package 'a10-openstack-lbaas-havana'.
- [a10-neutron-lbaas](https://github.com/a10networks/a10-neutron-lbaas) - Middleware sitting between the
openstack driver and our API client, mapping openstack constructs to A10's AxAPI.
- [acos-client](https://github.com/a10networks/acos-client) - AxAPI client used by A10's OpenStack driver.
- [neutron-thirdparty-ci](https://github.com/a10networks/neutron-thirdparty-ci) - Scripts used by
our Jenkins/Zuul/Devstack-Gate setup, used to test every openstack code review submission against
A10 appliances and our drivers.
- [a10_lbaas_driver](https://github.com/a10networks/a10_lbaas_driver) - An older revision of A10's
LBaaS driver; no longer supported.

## Installation

### Install using pip

```sh
$ pip install acos-client
```

### Install from source

```sh
$ git clone https://github.com/a10networks/acos-client.git
$ cd acos-client
$ python setup.py install
```

## Usage

```python
c = acos_client.Client('somehost.example.com', acos_client.AXAPI_21,
'admin', 'password')
```

#### Example setting up an SLB:

```python
import acos_client as acos

c = acos.Client('1.2.3.4', acos.AXAPI_21, 'admin', 'password')
c.slb.server.create('s1', '1.1.1.1')
c.slb.server.create('s2', '1.1.1.2')
c.slb.service_group.create('pool1',
c.slb.service_group.TCP,
c.slb.service_group.ROUND_ROBIN)
c.slb.virtual_server.create('vip1', '1.1.1.3')
c.slb.hm.create('hm1', c.slb.hm.HTTP, 5, 5, 5, 'GET', '/', '200', 80)
c.slb.service_group.update('pool1', health_monitor='hm1')
c.slb.service_group.member.create('pool1', 's1', 80)
c.slb.service_group.member.create('pool1', 's2', 80)
```

## Contributing

1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request

## Testing

This project uses [tox](https://pypi.python.org/pypi/tox) for testing. To run
the test suite simply:

```sh
$ sudo pip install tox # use pip2 if using Arch Linux
$ cd /path/to/acos_client
$ tox
```

[pypy](http://pypy.org/index.html) needs to be installed as well as Python 2.6
side by side 2.7 7. We recommend
[deadsnakes](http://coreygoldberg.blogspot.com/2013/10/deadsnakes-using-old-versions-of-python.html)
if you're on Ubuntu, and the [python26 AUR
package](https://aur.archlinux.org/packages/python26/) if you use Arch Linux.

## Supported Versions

* axapi 2.1, ACOS 2.7.2+ (2.7.1 works if you avoid partitions)
* axapi 3.0, ACOS 4.0.0+

Project details


Download files

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

Source Distribution

acos-client-1.2.5.tar.gz (35.8 kB view details)

Uploaded Source

File details

Details for the file acos-client-1.2.5.tar.gz.

File metadata

  • Download URL: acos-client-1.2.5.tar.gz
  • Upload date:
  • Size: 35.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for acos-client-1.2.5.tar.gz
Algorithm Hash digest
SHA256 3c5239d4cab881efa80c51ac11edf54277ec96e2bea1d4513032ff3f97530600
MD5 b1f9833b924effeb6f515d0d56ebf2fa
BLAKE2b-256 87543d3615aa93454896fed9c626c8253f9e6a927049d965fe1e0ed39bc4afe3

See more details on using hashes here.

Supported by

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