A utility to control the imaginator image building service.
The builder-tool utility may be used to build images from manifests, either
locally (for advanced debugging) or by sending a build request to the
imaginator image building service.
Usage
Builder-tool supports several sub-commands. There are many command-line flags
which provide parameters for these sub-commands. The most commonly used
parameter is -imaginatorHostname
which specifies which host the imaginator
is running on. The -alwaysShowBuildLog
parameter is also commonly used.
The basic usage pattern is:
builder-tool [flags...] command [args...]
Built-in help is available with the command:
builder-tool -h
Some of the sub-commands available are:
- build-from-manifest: build an image locally from the specified manifest
directory and upload a new datestamped image for the
specified image stream name. The source image will be
fetched from the imageserver
- build-image: request the imaginator to build
and upload an image for the specified image stream (this is
the most commonly-used sub-command)
- build-raw-from-manifest: build an image locally from the specified
manifest and write a RAW image file which can be
copied/uploaded for launching VMs. The source
image will be fetched from the imageserver
- build-tree-from-manifest: build an image file-system tree locally from the
specified manifest directory. The root directory
for the tree is created and written to stdout.
The source image will be fetched from the
imageserver
- disable-auto-builds: disable automatic image building for the period
specified by
-disableFor
- disable-build-requests: disable automatic image building for the period
specified by
-disableFor
- get-dependencies: get the dependencies for all the imaginator
image streams and write a JSON representation to stdout
- get-digraph: get the image stream dependencies represented as a directed
graph suitable for passing to the dot command from the
Graphviz tools
- process-manifest: process a manifest locally in the specified root
directory containing an already unpacked source image
- replace-idle-slaves: replace build slaves which are idle
Security
Imaginator restricts RPC access using TLS client
authentication. Builder-tool will load certificate and key files from the
~/.ssl
directory. Builder-tool will present these certificates to the
imaginator. If one of the certificates is signed by a certificate authority
that the imaginator trusts, the imaginator will grant access.