blob: 7d07f7598f9df49c7bd6d06733b9327a8aea14bc [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// This file was auto-generated via go generate.
// DO NOT UPDATE MANUALLY
/*
Command vcloud is a wrapper over the Google Compute Engine gcloud tool. It
simplifies common usage scenarios and provides some Vanadium-specific support.
Usage:
vcloud [flags] <command>
The vcloud commands are:
list List GCE node information
cp Copy files to or from GCE nodes
node Manage GCE nodes
run Copy files to GCE nodes and run
sh Start a shell or run a command on GCE nodes
help Display help for commands or topics
The vcloud flags are:
-color=true
Use color to format output.
-v=false
Print verbose output.
The global flags are:
-metadata=<just specify -metadata to activate>
Displays metadata for the program and exits.
-project=vanadium-internal
Specify the gcloud project.
-time=false
Dump timing information to stderr before exiting the program.
-user=veyron
Run operations as the given user on each node.
Vcloud list - List GCE node information
List GCE node information. Runs 'gcloud compute instances list'.
Usage:
vcloud list [flags] [nodes]
[nodes] is a comma-separated list of node name(s). Each node name is a regular
expression, with matches performed on the full node name. We select nodes that
match any of the regexps. The comma-separated list allows you to easily specify
a list of specific node names, without using regexp alternation. We assume node
names do not have embedded commas.
If [nodes] is not provided, lists information for all nodes.
The vcloud list flags are:
-fields=
Only display these fields, specified as comma-separated column header names.
-noheader=false
Don't print list table header.
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud cp - Copy files to or from GCE nodes
Copy files to GCE node(s). Runs 'gcloud compute copy-files'. The default is to
copy to/from all nodes in parallel.
Usage:
vcloud cp [flags] <nodes> <src...> <dst>
<nodes> is a comma-separated list of node name(s). Each node name is a regular
expression, with matches performed on the full node name. We select nodes that
match any of the regexps. The comma-separated list allows you to easily specify
a list of specific node names, without using regexp alternation. We assume node
names do not have embedded commas.
<src...> are the source file argument(s) to 'gcloud compute copy-files', and
<dst> is the destination. The syntax for each file is:
[:]file
Files with the ':' prefix are remote; files without any such prefix are local.
As with 'gcloud compute copy-files', if <dst> is local, all <src...> must be
remote. If <dst> is remote, all <src...> must be local.
Each matching node in <nodes> is applied to the remote side of the copy
operation, either src or dst. If <dst> is local and there is more than one
matching node, sub directories will be automatically created under <dst>.
E.g. if <nodes> matches A, B and C:
// Copies local src{1,2,3} to {A,B,C}:dst
vcloud cp src1 src2 src3 :dst
// Copies remote {A,B,C}:src{1,2,3} to dst/{A,B,C} respectively.
vcloud cp :src1 :src2 :src3 dst
The vcloud cp flags are:
-failfast=false
Skip unstarted nodes after the first failing node.
-p=-1
Copy to/from this many nodes in parallel.
<0 means all nodes in parallel
0,1 means sequentially
2+ means at most this many nodes in parallel
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud node - Manage GCE nodes
Manage GCE nodes.
Usage:
vcloud node [flags] <command>
The vcloud node commands are:
authorize Authorize a user to login to a GCE node
deauthorize Deauthorize a user to login to a GCE node
create Create GCE nodes
delete Delete GCE nodes
The vcloud node flags are:
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud node authorize - Authorize a user to login to a GCE node
Authorizes a user to login to a GCE node (possibly as other user). For instance,
this mechanism is used to give Jenkins slave nodes access to the GCE mirror of
Vanadium repositories.
Usage:
vcloud node authorize [flags] <userA>@<hostA> [<userB>@]<hostB>
<userA>@<hostA> [<userB>@]<hostB> authorizes userA to log into GCE node hostB
from GCE node hostA as user userB. The default value for userB is userA.
The vcloud node authorize flags are:
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud node deauthorize - Deauthorize a user to login to a GCE node
Deuthorizes a user to login to a GCE node (possibly as other user). For
instance, this mechanism is used to revoke access of give Jenkins slave nodes to
the GCE mirror of Vanadium repositories.
Usage:
vcloud node deauthorize [flags] <userA>@<hostA> [<userB>@]<hostB>
<userA>@<hostA> [<userB>@]<hostB> deauthorizes userA to log into GCE node hostB
from GCE node hostA as user userB. The default value for userB is userA.
The vcloud node deauthorize flags are:
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud node create - Create GCE nodes
Create GCE nodes. Runs 'gcloud compute instances create'.
Usage:
vcloud node create [flags] <names>
<names> is a list of names identifying nodes to be created.
The vcloud node create flags are:
-boot-disk-size=500GB
Size of the machine boot disk.
-image=ubuntu-14-04
Image to create the machine from.
-machine-type=n1-standard-8
Machine type to create.
-scopes=storage-full,logging-write
Scopes of the machine.
-setup-script=
Script to set up the machine.
-zone=us-central1-f
Zone to create the machine in.
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud node delete - Delete GCE nodes
Delete GCE nodes. Runs 'gcloud compute instances delete'.
Usage:
vcloud node delete [flags] <names>
<names> is a list of names identifying nodes to be deleted.
The vcloud node delete flags are:
-zone=us-central1-f
Zone to delete the machine in.
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud run - Copy files to GCE nodes and run
Copy file(s) to GCE node(s) and run. Uses the logic of both cp and sh.
Usage:
vcloud run [flags] <nodes> <files...> [++ [command...]]
<nodes> is a comma-separated list of node name(s). Each node name is a regular
expression, with matches performed on the full node name. We select nodes that
match any of the regexps. The comma-separated list allows you to easily specify
a list of specific node names, without using regexp alternation. We assume node
names do not have embedded commas.
<files...> are the local source file argument(s) to copy to each matching node.
[command...] is the shell command line to run on each node. Specify the entire
command line without extra quoting, just like 'vcloud sh'. If a command is
specified, it must be preceeded by a single ++ argument, to distinguish it from
the files. If no command is given, runs the first file from <files...>.
We run the following logic on each matching node, in parallel by default:
1) Create a temporary directory TMPDIR based on a random number.
2) Copy run files to TMPDIR.
3) Change current directory to TMPDIR.
4) Runs the [command...], or if no command is given, runs the first run file.
5) If -outdir is specified, remove run files from TMPDIR, and copy TMPDIR from
the node to the local -outdir.
6) Delete TMPDIR.
The vcloud run flags are:
-failfast=false
Skip unstarted nodes after the first failing node.
-outdir=
Output directory to store results from each node.
-p=-1
Copy/run on this many nodes in parallel.
<0 means all nodes in parallel
0,1 means sequentially
2+ means at most this many nodes in parallel
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud sh - Start a shell or run a command on GCE nodes
Start a shell or run a command on GCE node(s). Runs 'gcloud compute ssh'.
Usage:
vcloud sh [flags] <nodes> [command...]
<nodes> is a comma-separated list of node name(s). Each node name is a regular
expression, with matches performed on the full node name. We select nodes that
match any of the regexps. The comma-separated list allows you to easily specify
a list of specific node names, without using regexp alternation. We assume node
names do not have embedded commas.
[command...] is the shell command line to run on each node. Specify the entire
command line without extra quoting, e.g. like this:
vcloud sh jenkins-node uname -a
But NOT like this:
vcloud sh jenkins-node 'uname -a'
If quoting and escaping becomes too complicated, use 'vcloud run' instead.
If <nodes> matches exactly one node and no [command] is given, sh starts a shell
on the specified node.
Otherwise [command...] is required; sh runs the command on all matching nodes.
The default is to run on all nodes in parallel.
The vcloud sh flags are:
-failfast=false
Skip unstarted nodes after the first failing node.
-p=-1
Run command on this many nodes in parallel.
<0 means all nodes in parallel
0,1 means sequentially
2+ means at most this many nodes in parallel
-color=true
Use color to format output.
-v=false
Print verbose output.
Vcloud help - Display help for commands or topics
Help with no args displays the usage of the parent command.
Help with args displays the usage of the specified sub-command or help topic.
"help ..." recursively displays help for all commands and topics.
Usage:
vcloud help [flags] [command/topic ...]
[command/topic ...] optionally identifies a specific sub-command or help topic.
The vcloud help flags are:
-style=compact
The formatting style for help output:
compact - Good for compact cmdline output.
full - Good for cmdline output, shows all global flags.
godoc - Good for godoc processing.
shortonly - Only output short description.
Override the default by setting the CMDLINE_STYLE environment variable.
-width=<terminal width>
Format output to this target width in runes, or unlimited if width < 0.
Defaults to the terminal width if available. Override the default by setting
the CMDLINE_WIDTH environment variable.
*/
package main