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