trivial-openstack
2016-06-28
A simple Common Lisp OpenStack REST client.
Upstream URL
Author
Smith Dhumbumroong <zodmaner@gmail.com>
License
MIT
Trivial-OpenStack
Trivial-OpenStack is a simple OpenStack REST client/library implemented in Common Lisp.
Currently, it offers bindings for the following OpenStack services:
Keystone (Identity) Service
- Authenticate and obtain token and service endpoints.
Glance (Image) Service
- List currently available images
Nova (Compute) Service
- List currently available flavors
- List, create, and delete servers
- List, create, and associate floating IPs
- List and create rules in the default security group
Expect full documentation in the near future.
Installation
Since May 1, 2016, Trivial-OpenStack is available via Quicklisp, and can be installed using the following command:
CL-USER> (ql:quickload 'trivial-openstack)
Getting Started
Getting started with Trivial-OpenStack is easy. The first thing we need to do is to authenticate with the OpenStack Keystone (identity) service:
TRIVIAL-OPENSTACK> (authenticate "192.168.1.8" "admin" "swordfish")
And that's it! Now you can invoke any API bindings that you like, for examples:
TRIVIAL-OPENSTACK> (list-images) ; list currently available images (("cirros-0.3.4-x86_64-uec" . "c4947a88-3b38-44d5-b605-edad3cf1191b") ("cirros-0.3.4-x86_64-uec-ramdisk" . "619726e7-b3b1-4d39-8669-cf05fb04981d") ("cirros-0.3.4-x86_64-uec-kernel" . "b5afe28f-3ed5-4d4e-8094-fac19d2d7ac3")) TRIVIAL-OPENSTACK> (list-flavors) ; list currently available flavors (("m1.tiny" . "1") ("m1.small" . "2") ("m1.medium" . "3") ("m1.large" . "4") ("m1.nano" . "42") ("m1.xlarge" . "5") ("m1.micro" . "84")) TRIVIAL-OPENSTACK> (create-server "test-00" "c4947a88-3b38-44d5-b605-edad3cf1191b" "1") ; create a new server "0a427e44-8d69-4b02-a747-0eb731ba02ad" TRIVIAL-OPENSTACK>
Dependencies
- drakma
- st-json
- local-time
- alexandria
License
Copyright (c) 2016 Smith Dhumbumroong
Licensed under the MIT License.