[Openstack-docs] Automated CLI Reference
Anne Gentle
anne at openstack.org
Fri Jan 17 21:52:04 UTC 2014
Hi again all,
Are we doing any work towards automating a CLI reference?
I ask because at the Summit we talked like we wanted it, but I don't know
if it has an owner.
Thanks -
Anne
On Tue, Nov 5, 2013 at 11:46 AM, Anne Gentle <anne at openstack.org> wrote:
>
>
>
> On Tue, Nov 5, 2013 at 8:10 AM, Diane Fleming <diane.fleming at rackspace.com
> > wrote:
>
>> Great summary!
>>
>> As for Cli reference, what about doing what we do for API ref? Just a
>> web page with list of calls and ref info? There really isn't enough info
>> for a book (I think).
>>
>
> Yes, that's the idea, automated. The output could certainly look nicer
> than monspaced text. And we'd gather into one deliverable so as to avoid
> the appendix listing at the end of both user guides. What do you think?
>
> The CLI reference would be the listings of commands and subcommands, once
> you get to subcommands there may be a 100-page book in there. Maybe 200.
> Think of nova help for example. Then the output for nova help boot, which
> is rather large, but nova help add-fixed-ip is just:
> usage: nova add-fixed-ip <server> <network-id>
>
> Add new IP address on a network to server.
>
> Positional arguments:
> <server> Name or ID of server.
> <network-id> Network ID.
>
> Here's the output of nova help:
> usage: nova [--version] [--debug] [--os-cache] [--timings]
> [--timeout <seconds>] [--os-username <auth-user-name>]
> [--os-password <auth-password>]
> [--os-tenant-name <auth-tenant-name>]
> [--os-tenant-id <auth-tenant-id>] [--os-auth-url <auth-url>]
> [--os-region-name <region-name>] [--os-auth-system
> <auth-system>]
> [--service-type <service-type>] [--service-name <service-name>]
> [--volume-service-name <volume-service-name>]
> [--endpoint-type <endpoint-type>]
> [--os-compute-api-version <compute-api-ver>]
> [--os-cacert <ca-certificate>] [--insecure]
> [--bypass-url <bypass-url>]
> <subcommand> ...
>
> Command-line interface to the OpenStack Nova API.
>
> Positional arguments:
> <subcommand>
> absolute-limits Print a list of absolute limits for a user
> add-fixed-ip Add new IP address on a network to server.
> add-floating-ip Add a floating IP address to a server.
> add-secgroup Add a Security Group to a server.
> agent-create Create new agent build.
> agent-delete Delete existing agent build.
> agent-list List all builds.
> agent-modify Modify existing agent build.
> aggregate-add-host Add the host to the specified aggregate.
> aggregate-create Create a new aggregate with the specified details.
> aggregate-delete Delete the aggregate.
> aggregate-details Show details of the specified aggregate.
> aggregate-list Print a list of all aggregates.
> aggregate-remove-host
> Remove the specified host from the specified
> aggregate.
> aggregate-set-metadata
> Update the metadata associated with the aggregate.
> aggregate-update Update the aggregate's name and optionally
> availability zone.
> availability-zone-list
> List all the availability zones.
> backup Backup a instance by create a 'backup' type
> snapshot.
> boot Boot a new server.
> clear-password Clear password for a server.
> cloudpipe-configure
> Update the VPN IP/port of a cloudpipe instance.
> cloudpipe-create Create a cloudpipe instance for the given project.
> cloudpipe-list Print a list of all cloudpipe instances.
> console-log Get console log output of a server.
> coverage-report Generate coverage report.
> coverage-reset Reset coverage data.
> coverage-start Start Nova coverage reporting.
> coverage-stop Stop Nova coverage reporting.
> credentials Show user credentials returned from auth.
> delete Immediately shut down and delete specified
> server(s).
> diagnostics Retrieve server diagnostics.
> dns-create Create a DNS entry for domain, name and ip.
> dns-create-private-domain
> Create the specified DNS domain.
> dns-create-public-domain
> Create the specified DNS domain.
> dns-delete Delete the specified DNS entry.
> dns-delete-domain Delete the specified DNS domain.
> dns-domains Print a list of available dns domains.
> dns-list List current DNS entries for domain and ip or
> domain
> and name.
> endpoints Discover endpoints that get returned from the
> authenticate services.
> evacuate Evacuate server from failed host to specified one.
> fixed-ip-get Retrieve info on a fixed ip.
> fixed-ip-reserve Reserve a fixed IP.
> fixed-ip-unreserve Unreserve a fixed IP.
> flavor-access-add Add flavor access for the given tenant.
> flavor-access-list Print access information about the given flavor.
> flavor-access-remove
> Remove flavor access for the given tenant.
> flavor-create Create a new flavor
> flavor-delete Delete a specific flavor
> flavor-key Set or unset extra_spec for a flavor.
> flavor-list Print a list of available 'flavors' (sizes of
> servers).
> flavor-show Show details about the given flavor.
> floating-ip-bulk-create
> Bulk create floating ips by range.
> floating-ip-bulk-delete
> Bulk delete floating ips by range.
> floating-ip-bulk-list
> List all floating ips.
> floating-ip-create Allocate a floating IP for the current tenant.
> floating-ip-delete De-allocate a floating IP.
> floating-ip-list List floating ips for this tenant.
> floating-ip-pool-list
> List all floating ip pools.
> get-password Get password for a server.
> get-spice-console Get a spice console to a server.
> get-vnc-console Get a vnc console to a server.
> host-action Perform a power action on a host.
> host-describe Describe a specific host.
> host-list List all hosts by service.
> host-update Update host settings.
> hypervisor-list List hypervisors.
> hypervisor-servers List instances belonging to specific hypervisors.
> hypervisor-show Display the details of the specified hypervisor.
> hypervisor-stats Get hypervisor statistics over all compute nodes.
> hypervisor-uptime Display the uptime of the specified hypervisor.
> image-create Create a new image by taking a snapshot of a
> running
> server.
> image-delete Delete specified image(s).
> image-list Print a list of available images to boot from.
> image-meta Set or Delete metadata on an image.
> image-show Show details about the given image.
> interface-attach Attach a network interface to an instance.
> interface-detach Detach a network interface from an instance.
> interface-list List interfaces attached to an instance.
> keypair-add Create a new key pair for use with instances.
> keypair-delete Delete keypair given by its name.
> keypair-list Print a list of keypairs for a user
> keypair-show Show details about the given keypair.
> list List active servers.
> list-secgroup List Security Group(s) of a server.
> live-migration Migrate running instance to a new machine.
> lock Lock a server.
> meta Set or Delete metadata on a server.
> migrate Migrate a server. The new host will be selected by
> the
> scheduler.
> network-associate-host
> Associate host with network.
> network-associate-project
> Associate project with network.
> network-create Create a network.
> network-disassociate
> Disassociate host and/or project from the given
> network.
> network-list Print a list of available networks.
> network-show Show details about the given network.
> pause Pause a server.
> quota-class-show List the quotas for a quota class.
> quota-class-update Update the quotas for a quota class.
> quota-defaults List the default quotas for a tenant.
> quota-delete Delete quota for a tenant/user so their quota will
> Revert back to default.
> quota-show List the quotas for a tenant/user.
> quota-update Update the quotas for a tenant/user.
> rate-limits Print a list of rate limits for a user
> reboot Reboot a server.
> rebuild Shutdown, re-image, and re-boot a server.
> remove-fixed-ip Remove an IP address from a server.
> remove-floating-ip Remove a floating IP address from a server.
> remove-secgroup Remove a Security Group from a server.
> rename Rename a server.
> rescue Rescue a server.
> reset-network Reset network of an instance.
> reset-state Reset the state of an instance.
> resize Resize a server.
> resize-confirm Confirm a previous resize.
> resize-revert Revert a previous resize (and return to the
> previous
> VM).
> resume Resume a server.
> root-password Change the root password for a server.
> scrub Delete data associated with the project.
> secgroup-add-group-rule
> Add a source group rule to a security group.
> secgroup-add-rule Add a rule to a security group.
> secgroup-create Create a security group.
> secgroup-delete Delete a security group.
> secgroup-delete-group-rule
> Delete a source group rule from a security group.
> secgroup-delete-rule
> Delete a rule from a security group.
> secgroup-list List security groups for the current tenant.
> secgroup-list-rules
> List rules for a security group.
> secgroup-update Update a security group.
> service-disable Disable the service.
> service-enable Enable the service.
> service-list Show a list of all running services. Filter by
> host &
> binary.
> show Show details about the given server.
> ssh SSH into a server.
> start Start a server.
> stop Stop a server.
> suspend Suspend a server.
> unlock Unlock a server.
> unpause Unpause a server.
> unrescue Unrescue a server.
> usage Show usage data for a single tenant.
> usage-list List usage data for all tenants.
> volume-attach Attach a volume to a server.
> volume-create Add a new volume.
> volume-delete Remove a volume.
> volume-detach Detach a volume from a server.
> volume-list List all the volumes.
> volume-show Show details about a volume.
> volume-snapshot-create
> Add a new snapshot.
> volume-snapshot-delete
> Remove a snapshot.
> volume-snapshot-list
> List all the snapshots.
> volume-snapshot-show
> Show details about a snapshot.
> volume-type-create Create a new volume type.
> volume-type-delete Delete a specific flavor
> volume-type-list Print a list of available 'volume types'.
> volume-update Update volume attachment.
> x509-create-cert Create x509 cert for a user in tenant.
> x509-get-root-cert Fetch the x509 root cert.
> bash-completion Prints all of the commands and options to stdout so
> that the nova.bash_completion script doesn't have
> to
> hard code them.
> help Display help about this program or one of its
> subcommands.
> baremetal-interface-add
> Add a network interface to a baremetal node.
> baremetal-interface-list
> List network interfaces associated with a baremetal
> node.
> baremetal-interface-remove
> Remove a network interface from a baremetal node.
> baremetal-node-create
> Create a baremetal node.
> baremetal-node-delete
> Remove a baremetal node and any associated
> interfaces.
> baremetal-node-list
> Print list of available baremetal nodes.
> baremetal-node-show
> Show information about a baremetal node.
> cell-capacities Get cell capacities for all cells or a given cell.
> cell-show Show details of a given cell.
> force-delete Force delete a server.
> restore Restore a soft-deleted server.
> host-evacuate Evacuate all instances from failed host to
> specified
> one.
> host-servers-migrate
> Migrate all instances of the specified host to
> other
> available hosts.
> instance-action Show an action.
> instance-action-list
> List actions on a server.
> list-extensions List all the os-api extensions that are available.
> host-meta Set or Delete metadata on all instances of a host.
> migration-list Print a list of migrations.
> net Show a network
> net-create Create a network
> net-delete Delete a network
> net-list List networks
>
> Optional arguments:
> --version show program's version number and exit
> --debug Print debugging output
> --os-cache Use the auth token cache.
> --timings Print call timing info
> --timeout <seconds> Set HTTP call timeout (in seconds)
> --os-username <auth-user-name>
> Defaults to env[OS_USERNAME].
> --os-password <auth-password>
> Defaults to env[OS_PASSWORD].
> --os-tenant-name <auth-tenant-name>
> Defaults to env[OS_TENANT_NAME].
> --os-tenant-id <auth-tenant-id>
> Defaults to env[OS_TENANT_ID].
> --os-auth-url <auth-url>
> Defaults to env[OS_AUTH_URL].
> --os-region-name <region-name>
> Defaults to env[OS_REGION_NAME].
> --os-auth-system <auth-system>
> Defaults to env[OS_AUTH_SYSTEM].
> --service-type <service-type>
> Defaults to compute for most actions
> --service-name <service-name>
> Defaults to env[NOVA_SERVICE_NAME]
> --volume-service-name <volume-service-name>
> Defaults to env[NOVA_VOLUME_SERVICE_NAME]
> --endpoint-type <endpoint-type>
> Defaults to env[NOVA_ENDPOINT_TYPE] or publicURL.
> --os-compute-api-version <compute-api-ver>
> Accepts 1.1 or 3, defaults to
> env[OS_COMPUTE_API_VERSION].
> --os-cacert <ca-certificate>
> Specify a CA bundle file to use in verifying a TLS
> (https) server certificate. Defaults to
> env[OS_CACERT]
> --insecure Explicitly allow novaclient to perform "insecure"
> SSL
> (https) requests. The server's certificate will
> not be
> verified against any certificate authorities. This
> option should be used with caution.
> --bypass-url <bypass-url>
> Use this API endpoint instead of the Service
> Catalog
>
> See "nova help COMMAND" for help on a specific command.
>
> Here's the output for nova help boot:
> usage: nova boot [--flavor <flavor>] [--image <image>]
> [--image-with <key=value>] [--boot-volume <volume_id>]
> [--snapshot <snapshot_id>] [--num-instances <number>]
> [--meta <key=value>] [--file <dst-path=src-path>]
> [--key-name <key-name>] [--user-data <user-data>]
> [--availability-zone <availability-zone>]
> [--security-groups <security-groups>]
> [--block-device-mapping <dev-name=mapping>]
> [--block-device key1=value1[,key2=value2...]]
> [--swap <swap_size>]
> [--ephemeral size=<size>[,format=<format>]]
> [--hint <key=value>]
> [--nic
> <net-id=net-uuid,v4-fixed-ip=ip-addr,port-id=port-uuid>]
> [--config-drive <value>] [--poll]
> <name>
>
> Boot a new server.
>
> Positional arguments:
> <name> Name for the new server
>
> Optional arguments:
> --flavor <flavor> Name or ID of flavor (see 'nova flavor-list').
> --image <image> Name or ID of image (see 'nova image-list').
> --image-with <key=value>
> Image metadata property (see 'nova image-show').
> --boot-volume <volume_id>
> Volume ID to boot from.
> --snapshot <snapshot_id>
> Sapshot ID to boot from (will create a volume).
> --num-instances <number>
> boot multi instances at a time (limited by quota).
> --meta <key=value> Record arbitrary key/value metadata to /meta.js on
> the
> new server. Can be specified multiple times.
> --file <dst-path=src-path>
> Store arbitrary files from <src-path> locally to
> <dst-
> path> on the new server. You may store up to 5
> files.
> --key-name <key-name>
> Key name of keypair that should be created earlier
> with the command keypair-add
> --user-data <user-data>
> user data file to pass to be exposed by the
> metadata
> server.
> --availability-zone <availability-zone>
> The availability zone for instance placement.
> --security-groups <security-groups>
> Comma separated list of security group names.
> --block-device-mapping <dev-name=mapping>
> Block device mapping in the format <dev-
> name>=<id>:<type>:<size(GB)>:<delete-on-terminate>.
> --block-device key1=value1[,key2=value2...]
> Block device mapping with the keys: id=image_id,
> snapshot_id or volume_id, source=source type
> (image,
> snapshot, volume or blank), dest=destination type
> of
> the block device (volume or local), bus=device's
> bus,
> device=name of the device (e.g. vda, xda, ...),
> size=size of the block device in GB, format=device
> will be formatted (e.g. swap, ext3, ntfs, ...),
> bootindex=integer used for ordering the boot disks,
> type=device type (e.g. disk, cdrom, ...) and
> shutdown=shutdown behaviour (either preserve or
> remove).
> --swap <swap_size> Create and attach a local swap block device of
> <swap_size> MB.
> --ephemeral size=<size>[,format=<format>]
> Create and attach a local ephemeral block device of
> <size> GB and format it to <format>.
> --hint <key=value> Send arbitrary key/value pairs to the scheduler for
> custom use.
> --nic <net-id=net-uuid,v4-fixed-ip=ip-addr,port-id=port-uuid>
> Create a NIC on the server. Specify option multiple
> times to create multiple NICs. net-id: attach NIC
> to
> network with this UUID (required if no port-id), v4
> -fixed-ip: IPv4 fixed address for NIC (optional),
> port-id: attach NIC to port with this UUID
> (required
> if no net-id)
> --config-drive <value>
> Enable config drive
> --poll Blocks while instance builds so progress can be
> reported.
>
>
>
>
>>
>> As for horizon screenshots, do we need them? That GUI is not that
>> complicated and screenshots are a pain to maintain (automated or not). A
>> better project might be to add some online help to the GUI itself?
>>
>
> I'll see if Summer can comment further. Workflows were a bit deal to
> Horizon and there's plenty we're not documenting that you can do in the
> Dashboard. I see this as just a research spike in viability.
>
> Thanks -
> Anne
>
>
>>
>> Thanks Anne (and all)!
>>
>> Sent from my iPhone
>>
>> On Nov 5, 2013, at 3:25 AM, "Anne Gentle" <anne at openstack.org> wrote:
>>
>> Hi all,
>> The first four docs discussions are done and we've got some decisions we
>> want to bring to the group. Ideally these decisions will stick for the
>> Icehouse time frame, the next six months. Tom, Summer, Stephen, and I were
>> here but we want to be sure we came to the same conclusions on our own that
>> our larger group would have as well.
>>
>> Doc automation:
>> - We want to set up a doctools repo just for doc tools like the
>> automation tools and gate tests. Should help with translation tools also.
>> Open to ITS use.
>> - Config items automation - Oslo will likely change enough this release
>> that our tool needs to change as well.
>> - CLI reference automation - part of the restructure discussion uncovered
>> a need to streamline the Config ref to reference only, and also create a
>> CLI reference for CLI reference only. We want to prioritize automating this
>> as highly as config automation.
>> - API doc automation - still under discussion, stay tuned after this
>> Friday.
>> - RST to XML workflow for training guides - Sean wants to filter the dev
>> doc further.
>> - Ceilometer has tables they auto-generate in their dev docs that they
>> want to bring into openstack-manuals.
>> - Horizon workflows: Summer had a great idea to automate screen
>> captures of common workflows in the dashboard. This work would be great to
>> do in the coming release, Summer is going to do a research spike into
>> tooling.
>>
>> Restructure:
>> Despite the tradeoff that we have to re-communicate some more moves to
>> all the teams, we want to trim the configuration reference down to just
>> listings of options, no how-to or explanatory information. Move this type
>> of info to the Cloud Admin Guide. Are we good with this plan for Icehouse?
>> Pull out CLI reference info from the end-user guide and admin user
>> guide, put into a CLI reference that goes to the submenu level. Sound good?
>>
>> Install guide (always seems to be a topic of its own):
>> - Continue with current guide, maintain and update for icehouse.
>> - Look for 2-3 more resources to help with install guides.
>> - Push for a real big testing drive a month before release instead of 2
>> weeks.
>>
>> Any questions? If you're not here, we sure wish you were here!
>>
>> As a side note, here are some pics from our women of OpenStack boat
>> outing last night on the harbor. The grey fog was everywhere and we
>> couldn't go on deck it was just too wet. But the buildings lighting up are
>> amazing here, you can hardly capture the sights in photos.
>> http://flic.kr/s/aHsjLUoHM2
>>
>> Here's the one sightseeing day I've had so far, going on a "crystal
>> bottom" cable car ride to get to a big Buddha statue with a monastery
>> nearby.
>> http://flic.kr/s/aHsjLWowHf
>>
>> Anne
>>
>> _______________________________________________
>> Openstack-docs mailing list
>> Openstack-docs at lists.openstack.org
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-docs
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-docs/attachments/20140117/36382ba8/attachment-0001.html>
More information about the Openstack-docs
mailing list