A fast openstack client

Timothy Rice d694a491e5 Print aggregates as a table 2 سال پیش
.gitignore f661175a04 Add nova client 2 سال پیش
LICENSE.md b68e1f6493 Refactor generic osc into keystone to successfully retrieve tokens 4 سال پیش
Makefile 15332ec65a Break up nova 2 سال پیش
README.md 3da3fd7720 Show how to format the output with jq 2 سال پیش
aggregates.c d694a491e5 Print aggregates as a table 2 سال پیش
cJSON.c 0cdaeb7e20 Initial commit 6 سال پیش
cJSON.h 0cdaeb7e20 Initial commit 6 سال پیش
catalog.c 8b29fdaad4 Abstract main 2 سال پیش
compute.h 15332ec65a Break up nova 2 سال پیش
curl.c 1ee0c59359 Abstract api queries 2 سال پیش
curl.h 1ee0c59359 Abstract api queries 2 سال پیش
keystone.c 8b29fdaad4 Abstract main 2 سال پیش
keystone.h c207888177 Make it possible for other functions to retrieve catalog 2 سال پیش
nova.c 15332ec65a Break up nova 2 سال پیش
osc.c b68e1f6493 Refactor generic osc into keystone to successfully retrieve tokens 4 سال پیش
service.c 392a001acd Abstract the url building step of api call 2 سال پیش
token.c 8b29fdaad4 Abstract main 2 سال پیش
utils.c 8b29fdaad4 Abstract main 2 سال پیش
utils.h 8b29fdaad4 Abstract main 2 سال پیش

README.md

Openstack C Client

A fast, lightweight client for interacting with the OpenStack API.

Note that while formatting functions might be added later, they aren't an initial priority. The json output can be manipulated with jq. For example:

$ ./keystone catalog list | jq -r '.catalog[] | .type as $t | .name as $n | .endpoints[] | select(.interface == "public") | [$t, $n, .region, .url] | @tsv' | column -s$'\t' -t
s3                   S3 Service                       My Region  https://swift.example.com/
reservation          Reservation Service              My Region  https://blazar.example.com:8010
account              Nectar Account Service           My Region  https://accounts.example.com/api/
container-infra      Container Orchestration Service  My Region  https://magnum.example.com:9511/v1
metric               Metric Service                   My Region  https://gnocchi.example.com:8041/
metric               Metric Service                   Other      https://gnocchi-metrics.example.com:8040/
placement            Placement Service                My Region  https://placement.example.com/placement
database             Database Service                 My Region  https://trove.example.com:8779/v1.0/b70bb69ede2a3fbd5fd71306da957ec1
compute              Compute Service                  My Region  https://nova.example.com:8774/v2.1/b70bb69ede2a3fbd5fd71306da957ec1
ec2                  EC2 Service                      My Region  https://nova.example.com:8773/services/Cloud
sharev2              Shared Filesystem Service        My Region  https://manila.example.com:8786/v2/b70bb69ede2a3fbd5fd71306da957ec1
load-balancer        Load Balancer Service            My Region  https://octavia.example.com:9876
network              network                          My Region  https://neutron.example.com:9696/
volumev2             Volume Service v2                My Region  https://cinder.example.com:8776/v2/b70bb69ede2a3fbd5fd71306da957ec1
share                Shared Filesystem Service        My Region  https://manila.example.com:8786/v1/b70bb69ede2a3fbd5fd71306da957ec1
application-catalog  Application Catalog Service      My Region  https://murano.example.com:8082/
dns                  DNS Service                      My Region  https://designate.example.com:9001/
image                Image Service                    My Region  https://glance.example.com:9292/
identity             Identity Service                 My Region  https://keystone.example.com:5000/v3
object-store         Object Storage Service           My Region  https://swift.example.com/v1/AUTH_b70bb69ede2a3fbd5fd71306da957ec1
orchestration        Orchestration Service            My Region  https://heat.example.com:8004/v1/b70bb69ede2a3fbd5fd71306da957ec1
volumev3             Volume Service v3                My Region  https://cinder.example.com:8776/v3/b70bb69ede2a3fbd5fd71306da957ec1
key-manager          barbican                         My Region  https://barbican.example.com:9311/
alarming             Alarming Service                 My Region  https://aodh.example.com:8042

Dependencies