<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif; ">
<div>
<div>
<div>I think I'm the owner, but I haven't done any work with it yet. </div>
<div><br>
</div>
<div>There is mention of it in this blueprint: <a href="https://wiki.openstack.org/wiki/Blueprint-os-user-docs#APPENDIX_A._OpenStack_Command_Reference_2">https://wiki.openstack.org/wiki/Blueprint-os-user-docs#APPENDIX_A._OpenStack_Command_Reference_2</a></div>
<div><br>
</div>
<div>If someone else wants to work on it, let me know!</div>
<div><br>
</div>
<div><br>
</div>
<div>
<div>
<div style="color: rgb(0, 0, 0); "><font class="Apple-style-span" color="rgb(0, 0, 0)" face="Apple Chancery"><i>Diane</i></font></div>
<div style="font-family: Calibri, sans-serif; font-size: 14px; color: rgb(0, 0, 0); ">
<font class="Apple-style-span" color="rgb(0, 0, 0)"><i>----------------------------------------------</i></font></div>
<div style="font-family: Calibri, sans-serif; font-size: 14px; color: rgb(0, 0, 0); ">
<font class="Apple-style-span" color="rgb(0, 0, 0)">Diane Fleming</font></div>
<div style="font-family: Calibri, sans-serif; font-size: 14px; ">
<div style="color: rgb(0, 0, 0); ">Software Developer II - US</div>
</div>
diane.fleming@rackspace.com</div>
<div>Cell 512.323.6799</div>
<div>Office 512.874.1260<br>
<span class="Apple-style-span" style="font-family: Calibri, sans-serif; ">
<div style="font-family: Calibri, sans-serif; font-size: 14px; ">
<div style="color: rgb(0, 0, 0); ">Skype drfleming0227</div>
<div style="color: rgb(0, 0, 0); ">Google-plus diane.fleming@gmail.com</div>
</div>
</span></div>
</div>
</div>
</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>Anne Gentle <<a href="mailto:anne@openstack.org">anne@openstack.org</a>><br>
<span style="font-weight:bold">Date: </span>Friday, January 17, 2014 3:52 PM<br>
<span style="font-weight:bold">To: </span>"<a href="mailto:openstack-docs@lists.openstack.org">openstack-docs@lists.openstack.org</a>" <<a href="mailto:openstack-docs@lists.openstack.org">openstack-docs@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>[Openstack-docs] Automated CLI Reference<br>
</div>
<div><br>
</div>
<div>
<div>
<div dir="ltr">Hi again all,
<div><br>
</div>
<div>Are we doing any work towards automating a CLI reference? </div>
<div><br>
</div>
<div>I ask because at the Summit we talked like we wanted it, but I don't know if it has an owner. </div>
<div><br>
</div>
<div>Thanks -</div>
<div>Anne</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Tue, Nov 5, 2013 at 11:46 AM, Anne Gentle <span dir="ltr">
<<a href="mailto:anne@openstack.org" target="_blank">anne@openstack.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<br>
<div>
<div class="im">On Tue, Nov 5, 2013 at 8:10 AM, Diane Fleming <span dir="ltr"><<a href="mailto:diane.fleming@rackspace.com" target="_blank">diane.fleming@rackspace.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="auto">
<div>Great summary!</div>
<div><br>
</div>
<div>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). </div>
</div>
</blockquote>
<div> </div>
</div>
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?<br>
<br>
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:<br>
usage: nova add-fixed-ip <server> <network-id><br>
<br>
Add new IP address on a network to server.<br>
<br>
Positional arguments:<br>
<server> Name or ID of server.<br>
<network-id> Network ID.<br>
<br>
Here's the output of nova help: <br>
usage: nova [--version] [--debug] [--os-cache] [--timings]<br>
[--timeout <seconds>] [--os-username <auth-user-name>]<br>
[--os-password <auth-password>]<br>
[--os-tenant-name <auth-tenant-name>]<br>
[--os-tenant-id <auth-tenant-id>] [--os-auth-url <auth-url>]<br>
[--os-region-name <region-name>] [--os-auth-system <auth-system>]<br>
[--service-type <service-type>] [--service-name <service-name>]<br>
[--volume-service-name <volume-service-name>]<br>
[--endpoint-type <endpoint-type>]<br>
[--os-compute-api-version <compute-api-ver>]<br>
[--os-cacert <ca-certificate>] [--insecure]<br>
[--bypass-url <bypass-url>]<br>
<subcommand> ...<br>
<br>
Command-line interface to the OpenStack Nova API.<br>
<br>
Positional arguments:<br>
<subcommand><br>
absolute-limits Print a list of absolute limits for a user<br>
add-fixed-ip Add new IP address on a network to server.<br>
add-floating-ip Add a floating IP address to a server.<br>
add-secgroup Add a Security Group to a server.<br>
agent-create Create new agent build.<br>
agent-delete Delete existing agent build.<br>
agent-list List all builds.<br>
agent-modify Modify existing agent build.<br>
aggregate-add-host Add the host to the specified aggregate.<br>
aggregate-create Create a new aggregate with the specified details.<br>
aggregate-delete Delete the aggregate.<br>
aggregate-details Show details of the specified aggregate.<br>
aggregate-list Print a list of all aggregates.<br>
aggregate-remove-host<br>
Remove the specified host from the specified<br>
aggregate.<br>
aggregate-set-metadata<br>
Update the metadata associated with the aggregate.<br>
aggregate-update Update the aggregate's name and optionally<br>
availability zone.<br>
availability-zone-list<br>
List all the availability zones.<br>
backup Backup a instance by create a 'backup' type snapshot.<br>
boot Boot a new server.<br>
clear-password Clear password for a server.<br>
cloudpipe-configure<br>
Update the VPN IP/port of a cloudpipe instance.<br>
cloudpipe-create Create a cloudpipe instance for the given project.<br>
cloudpipe-list Print a list of all cloudpipe instances.<br>
console-log Get console log output of a server.<br>
coverage-report Generate coverage report.<br>
coverage-reset Reset coverage data.<br>
coverage-start Start Nova coverage reporting.<br>
coverage-stop Stop Nova coverage reporting.<br>
credentials Show user credentials returned from auth.<br>
delete Immediately shut down and delete specified server(s).<br>
diagnostics Retrieve server diagnostics.<br>
dns-create Create a DNS entry for domain, name and ip.<br>
dns-create-private-domain<br>
Create the specified DNS domain.<br>
dns-create-public-domain<br>
Create the specified DNS domain.<br>
dns-delete Delete the specified DNS entry.<br>
dns-delete-domain Delete the specified DNS domain.<br>
dns-domains Print a list of available dns domains.<br>
dns-list List current DNS entries for domain and ip or domain<br>
and name.<br>
endpoints Discover endpoints that get returned from the<br>
authenticate services.<br>
evacuate Evacuate server from failed host to specified one.<br>
fixed-ip-get Retrieve info on a fixed ip.<br>
fixed-ip-reserve Reserve a fixed IP.<br>
fixed-ip-unreserve Unreserve a fixed IP.<br>
flavor-access-add Add flavor access for the given tenant.<br>
flavor-access-list Print access information about the given flavor.<br>
flavor-access-remove<br>
Remove flavor access for the given tenant.<br>
flavor-create Create a new flavor<br>
flavor-delete Delete a specific flavor<br>
flavor-key Set or unset extra_spec for a flavor.<br>
flavor-list Print a list of available 'flavors' (sizes of<br>
servers).<br>
flavor-show Show details about the given flavor.<br>
floating-ip-bulk-create<br>
Bulk create floating ips by range.<br>
floating-ip-bulk-delete<br>
Bulk delete floating ips by range.<br>
floating-ip-bulk-list<br>
List all floating ips.<br>
floating-ip-create Allocate a floating IP for the current tenant.<br>
floating-ip-delete De-allocate a floating IP.<br>
floating-ip-list List floating ips for this tenant.<br>
floating-ip-pool-list<br>
List all floating ip pools.<br>
get-password Get password for a server.<br>
get-spice-console Get a spice console to a server.<br>
get-vnc-console Get a vnc console to a server.<br>
host-action Perform a power action on a host.<br>
host-describe Describe a specific host.<br>
host-list List all hosts by service.<br>
host-update Update host settings.<br>
hypervisor-list List hypervisors.<br>
hypervisor-servers List instances belonging to specific hypervisors.<br>
hypervisor-show Display the details of the specified hypervisor.<br>
hypervisor-stats Get hypervisor statistics over all compute nodes.<br>
hypervisor-uptime Display the uptime of the specified hypervisor.<br>
image-create Create a new image by taking a snapshot of a running<br>
server.<br>
image-delete Delete specified image(s).<br>
image-list Print a list of available images to boot from.<br>
image-meta Set or Delete metadata on an image.<br>
image-show Show details about the given image.<br>
interface-attach Attach a network interface to an instance.<br>
interface-detach Detach a network interface from an instance.<br>
interface-list List interfaces attached to an instance.<br>
keypair-add Create a new key pair for use with instances.<br>
keypair-delete Delete keypair given by its name.<br>
keypair-list Print a list of keypairs for a user<br>
keypair-show Show details about the given keypair.<br>
list List active servers.<br>
list-secgroup List Security Group(s) of a server.<br>
live-migration Migrate running instance to a new machine.<br>
lock Lock a server.<br>
meta Set or Delete metadata on a server.<br>
migrate Migrate a server. The new host will be selected by the<br>
scheduler.<br>
network-associate-host<br>
Associate host with network.<br>
network-associate-project<br>
Associate project with network.<br>
network-create Create a network.<br>
network-disassociate<br>
Disassociate host and/or project from the given<br>
network.<br>
network-list Print a list of available networks.<br>
network-show Show details about the given network.<br>
pause Pause a server.<br>
quota-class-show List the quotas for a quota class.<br>
quota-class-update Update the quotas for a quota class.<br>
quota-defaults List the default quotas for a tenant.<br>
quota-delete Delete quota for a tenant/user so their quota will<br>
Revert back to default.<br>
quota-show List the quotas for a tenant/user.<br>
quota-update Update the quotas for a tenant/user.<br>
rate-limits Print a list of rate limits for a user<br>
reboot Reboot a server.<br>
rebuild Shutdown, re-image, and re-boot a server.<br>
remove-fixed-ip Remove an IP address from a server.<br>
remove-floating-ip Remove a floating IP address from a server.<br>
remove-secgroup Remove a Security Group from a server.<br>
rename Rename a server.<br>
rescue Rescue a server.<br>
reset-network Reset network of an instance.<br>
reset-state Reset the state of an instance.<br>
resize Resize a server.<br>
resize-confirm Confirm a previous resize.<br>
resize-revert Revert a previous resize (and return to the previous<br>
VM).<br>
resume Resume a server.<br>
root-password Change the root password for a server.<br>
scrub Delete data associated with the project.<br>
secgroup-add-group-rule<br>
Add a source group rule to a security group.<br>
secgroup-add-rule Add a rule to a security group.<br>
secgroup-create Create a security group.<br>
secgroup-delete Delete a security group.<br>
secgroup-delete-group-rule<br>
Delete a source group rule from a security group.<br>
secgroup-delete-rule<br>
Delete a rule from a security group.<br>
secgroup-list List security groups for the current tenant.<br>
secgroup-list-rules<br>
List rules for a security group.<br>
secgroup-update Update a security group.<br>
service-disable Disable the service.<br>
service-enable Enable the service.<br>
service-list Show a list of all running services. Filter by host &<br>
binary.<br>
show Show details about the given server.<br>
ssh SSH into a server.<br>
start Start a server.<br>
stop Stop a server.<br>
suspend Suspend a server.<br>
unlock Unlock a server.<br>
unpause Unpause a server.<br>
unrescue Unrescue a server.<br>
usage Show usage data for a single tenant.<br>
usage-list List usage data for all tenants.<br>
volume-attach Attach a volume to a server.<br>
volume-create Add a new volume.<br>
volume-delete Remove a volume.<br>
volume-detach Detach a volume from a server.<br>
volume-list List all the volumes.<br>
volume-show Show details about a volume.<br>
volume-snapshot-create<br>
Add a new snapshot.<br>
volume-snapshot-delete<br>
Remove a snapshot.<br>
volume-snapshot-list<br>
List all the snapshots.<br>
volume-snapshot-show<br>
Show details about a snapshot.<br>
volume-type-create Create a new volume type.<br>
volume-type-delete Delete a specific flavor<br>
volume-type-list Print a list of available 'volume types'.<br>
volume-update Update volume attachment.<br>
x509-create-cert Create x509 cert for a user in tenant.<br>
x509-get-root-cert Fetch the x509 root cert.<br>
bash-completion Prints all of the commands and options to stdout so<br>
that the nova.bash_completion script doesn't have to<br>
hard code them.<br>
help Display help about this program or one of its<br>
subcommands.<br>
baremetal-interface-add<br>
Add a network interface to a baremetal node.<br>
baremetal-interface-list<br>
List network interfaces associated with a baremetal<br>
node.<br>
baremetal-interface-remove<br>
Remove a network interface from a baremetal node.<br>
baremetal-node-create<br>
Create a baremetal node.<br>
baremetal-node-delete<br>
Remove a baremetal node and any associated interfaces.<br>
baremetal-node-list<br>
Print list of available baremetal nodes.<br>
baremetal-node-show<br>
Show information about a baremetal node.<br>
cell-capacities Get cell capacities for all cells or a given cell.<br>
cell-show Show details of a given cell.<br>
force-delete Force delete a server.<br>
restore Restore a soft-deleted server.<br>
host-evacuate Evacuate all instances from failed host to specified<br>
one.<br>
host-servers-migrate<br>
Migrate all instances of the specified host to other<br>
available hosts.<br>
instance-action Show an action.<br>
instance-action-list<br>
List actions on a server.<br>
list-extensions List all the os-api extensions that are available.<br>
host-meta Set or Delete metadata on all instances of a host.<br>
migration-list Print a list of migrations.<br>
net Show a network<br>
net-create Create a network<br>
net-delete Delete a network<br>
net-list List networks<br>
<br>
Optional arguments:<br>
--version show program's version number and exit<br>
--debug Print debugging output<br>
--os-cache Use the auth token cache.<br>
--timings Print call timing info<br>
--timeout <seconds> Set HTTP call timeout (in seconds)<br>
--os-username <auth-user-name><br>
Defaults to env[OS_USERNAME].<br>
--os-password <auth-password><br>
Defaults to env[OS_PASSWORD].<br>
--os-tenant-name <auth-tenant-name><br>
Defaults to env[OS_TENANT_NAME].<br>
--os-tenant-id <auth-tenant-id><br>
Defaults to env[OS_TENANT_ID].<br>
--os-auth-url <auth-url><br>
Defaults to env[OS_AUTH_URL].<br>
--os-region-name <region-name><br>
Defaults to env[OS_REGION_NAME].<br>
--os-auth-system <auth-system><br>
Defaults to env[OS_AUTH_SYSTEM].<br>
--service-type <service-type><br>
Defaults to compute for most actions<br>
--service-name <service-name><br>
Defaults to env[NOVA_SERVICE_NAME]<br>
--volume-service-name <volume-service-name><br>
Defaults to env[NOVA_VOLUME_SERVICE_NAME]<br>
--endpoint-type <endpoint-type><br>
Defaults to env[NOVA_ENDPOINT_TYPE] or publicURL.<br>
--os-compute-api-version <compute-api-ver><br>
Accepts 1.1 or 3, defaults to<br>
env[OS_COMPUTE_API_VERSION].<br>
--os-cacert <ca-certificate><br>
Specify a CA bundle file to use in verifying a TLS<br>
(https) server certificate. Defaults to env[OS_CACERT]<br>
--insecure Explicitly allow novaclient to perform "insecure" SSL<br>
(https) requests. The server's certificate will not be<br>
verified against any certificate authorities. This<br>
option should be used with caution.<br>
--bypass-url <bypass-url><br>
Use this API endpoint instead of the Service Catalog<br>
<br>
See "nova help COMMAND" for help on a specific command.<br>
<br>
Here's the output for nova help boot:<br>
usage: nova boot [--flavor <flavor>] [--image <image>]<br>
[--image-with <key=value>] [--boot-volume <volume_id>]<br>
[--snapshot <snapshot_id>] [--num-instances <number>]<br>
[--meta <key=value>] [--file <dst-path=src-path>]<br>
[--key-name <key-name>] [--user-data <user-data>]<br>
[--availability-zone <availability-zone>]<br>
[--security-groups <security-groups>]<br>
[--block-device-mapping <dev-name=mapping>]<br>
[--block-device key1=value1[,key2=value2...]]<br>
[--swap <swap_size>]<br>
[--ephemeral size=<size>[,format=<format>]]<br>
[--hint <key=value>]<br>
[--nic <net-id=net-uuid,v4-fixed-ip=ip-addr,port-id=port-uuid>]<br>
[--config-drive <value>] [--poll]<br>
<name><br>
<br>
Boot a new server.<br>
<br>
Positional arguments:<br>
<name> Name for the new server<br>
<br>
Optional arguments:<br>
--flavor <flavor> Name or ID of flavor (see 'nova flavor-list').<br>
--image <image> Name or ID of image (see 'nova image-list').<br>
--image-with <key=value><br>
Image metadata property (see 'nova image-show').<br>
--boot-volume <volume_id><br>
Volume ID to boot from.<br>
--snapshot <snapshot_id><br>
Sapshot ID to boot from (will create a volume).<br>
--num-instances <number><br>
boot multi instances at a time (limited by quota).<br>
--meta <key=value> Record arbitrary key/value metadata to /meta.js on the<br>
new server. Can be specified multiple times.<br>
--file <dst-path=src-path><br>
Store arbitrary files from <src-path> locally to <dst-<br>
path> on the new server. You may store up to 5 files.<br>
--key-name <key-name><br>
Key name of keypair that should be created earlier<br>
with the command keypair-add<br>
--user-data <user-data><br>
user data file to pass to be exposed by the metadata<br>
server.<br>
--availability-zone <availability-zone><br>
The availability zone for instance placement.<br>
--security-groups <security-groups><br>
Comma separated list of security group names.<br>
--block-device-mapping <dev-name=mapping><br>
Block device mapping in the format <dev-<br>
name>=<id>:<type>:<size(GB)>:<delete-on-terminate>.<br>
--block-device key1=value1[,key2=value2...]<br>
Block device mapping with the keys: id=image_id,<br>
snapshot_id or volume_id, source=source type (image,<br>
snapshot, volume or blank), dest=destination type of<br>
the block device (volume or local), bus=device's bus,<br>
device=name of the device (e.g. vda, xda, ...),<br>
size=size of the block device in GB, format=device<br>
will be formatted (e.g. swap, ext3, ntfs, ...),<br>
bootindex=integer used for ordering the boot disks,<br>
type=device type (e.g. disk, cdrom, ...) and<br>
shutdown=shutdown behaviour (either preserve or<br>
remove).<br>
--swap <swap_size> Create and attach a local swap block device of<br>
<swap_size> MB.<br>
--ephemeral size=<size>[,format=<format>]<br>
Create and attach a local ephemeral block device of<br>
<size> GB and format it to <format>.<br>
--hint <key=value> Send arbitrary key/value pairs to the scheduler for<br>
custom use.<br>
--nic <net-id=net-uuid,v4-fixed-ip=ip-addr,port-id=port-uuid><br>
Create a NIC on the server. Specify option multiple<br>
times to create multiple NICs. net-id: attach NIC to<br>
network with this UUID (required if no port-id), v4<br>
-fixed-ip: IPv4 fixed address for NIC (optional),<br>
port-id: attach NIC to port with this UUID (required<br>
if no net-id)<br>
--config-drive <value><br>
Enable config drive<br>
--poll Blocks while instance builds so progress can be<br>
reported.<br>
<br>
<br>
</div>
<div class="gmail_quote">
<div class="im">
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="auto">
<div><br>
</div>
<div>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? </div>
</div>
</blockquote>
<div><br>
</div>
</div>
<div>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.<br>
<br>
Thanks -<br>
Anne<br>
</div>
<div>
<div class="h5">
<div> </div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div dir="auto">
<div><br>
</div>
<div>Thanks Anne (and all)!<br>
<br>
Sent from my iPhone</div>
<div>
<div>
<div><br>
On Nov 5, 2013, at 3:25 AM, "Anne Gentle" <<a href="mailto:anne@openstack.org" target="_blank">anne@openstack.org</a>> wrote:<br>
<br>
</div>
<blockquote type="cite">
<div>
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>Hi all, <br>
</div>
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. <br>
<br>
</div>
Doc automation:<br>
</div>
<div>- 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.<br>
</div>
<div>- Config items automation - Oslo will likely change enough this release that our tool needs to change as well.
<br>
- 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.<br>
- API doc automation - still under discussion, stay tuned after this Friday.<br>
<span>- RST to XML workflow for training guides - Sean wants to filter the dev doc further.</span><br>
</div>
<div>- Ceilometer has tables they auto-generate in their dev docs that they want to bring into openstack-manuals.
<br>
</div>
<div>- 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.<br>
</div>
<div><br>
</div>
Restructure:<br>
</div>
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? <br>
</div>
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?
<br>
<br>
</div>
Install guide (always seems to be a topic of its own):<br>
<span>- Continue with current guide, maintain and update for icehouse. <br>
</span></div>
<span>- Look for 2-3 more resources to help with install guides.<br>
</span></div>
<span>- Push for a real big testing drive a month before release instead of 2 weeks.<br>
</span></div>
<span><br>
</span></div>
<span>Any questions? </span>If you're not here, we sure wish you were here!<br>
<br>
</div>
As a side note, he<span>re 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.<br>
<a href="http://flic.kr/s/aHsjLUoHM2" target="_blank">http://flic.kr/s/aHsjLUoHM2</a><br>
<br>
</span><span>Here's the one sightseeing day I've had so far, going on a "crystal bottom" cable car ride to get to a</span> big Buddha statue with a monastery nearby.
<br clear="all">
<span><a href="http://flic.kr/s/aHsjLWowHf" target="_blank">http://flic.kr/s/aHsjLWowHf</a><br>
<br>
</span></div>
<span>Anne <br>
</span></div>
</div>
</blockquote>
</div>
</div>
<blockquote type="cite">
<div><span>_______________________________________________</span><br>
<span>Openstack-docs mailing list</span><br>
<span><a href="mailto:Openstack-docs@lists.openstack.org" target="_blank">Openstack-docs@lists.openstack.org</a></span><br>
<span><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-docs" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-docs</a></span><br>
</div>
</blockquote>
</div>
</blockquote>
</div>
</div>
</div>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</div>
</span>
</body>
</html>