The standard library's strconv.ParseBool() is used to parse boolean environment
variables.  It accepts 1, t, T, TRUE, true, True, 0, f, F, FALSE, false,
False. Any other value is an implicit false.

For integer values, strconv.Atoi() is used which means only base 10 numbers are
valid.

AWS_ACCESS_KEY_ID (string):
AWS_ACCESS_KEY_SECRET (string):
  See http://docs.aws.amazon.com/fws/1.1/GettingStartedGuide/index.html?AWSCredentials.html
  Used in s3 tests.  If not set some tests are skip.  If set, queries will be
  sent to Amazon's S3 service.

CAMLI_APP_BINDIR (string):
  Path to the directory where Camlistore first looks for the server applications
  executables, when starting them. It looks in PATH otherwise.

CAMLI_AUTH (string):
  See http://camlistore.org/docs/server-config
  Used as a fallback in pkg/client.Client (except on android) when
  configuration files lack and 'auth' entry.  If a client is using the -server
  commandline to specify the camlistore instance to talk to, this env var
  takes precedence over that specified in the configuration files.

CAMLI_BASEURL (string):
  URL set in devcam to act as a baseURL in the devcam launched camlistored.

CAMLI_CACHE_DIR (string):
  Path used by pkg/osutil to override operating system specific cache
  directory.

CAMLI_CONFIG_DIR (string):
  Path used by pkg/osutil to override operating system specific configuration
  directory.

CAMLI_DBNAME (string):
  Backend specific data source name (DSN).
  Set in devcam to pass database configuration for the indexer to the devcam
  launched camlistored.

CAMLI_DEBUG (bool):
  Used by camlistored and camput to enable additional commandline options.
  Used in pkg/schema to enable additional logging.

CAMLI_DEBUG_CONFIG (bool):
  Causes pkg/serverconfig to dump low-level configuration derived from
  high-level configuation on load.

CAMLI_DEBUG_X (string):
  String containing magic substring(s) to enable debuggging in code.

CAMLI_DEBUG_UPLOADS (bool):
  Used by pkg/client to enable additional logging.

CAMLI_DEFAULT_SERVER (string):
  The server alias to use by default. The string is the server's alias key
  in the client-config.json "servers" object. If set, the CAMLI_DEFAULT_SERVER
  takes precedence over the "default" bool in client-config.json.

CAMLI_DEV_CAMLI_ROOT (string):
  If set, the base directory of Camlistore when in dev mode.
  Used by pkg/server for finding static assests (js, css, html).
  Used as a signal by pkg/index/* and pkg/server to output more helpful error
  message when run under devcam.

CAMLI_DEV_CLOSURE_DIR (string):
  Path override for pkg/server. If specified, this path will be used to serve
  the closure handler.

CAMLI_DISABLE_IMPORTERS (bool):
  If true, importers are disabled (at least automatic background
  importing, e.g. at start-up). Mostly for debugging.

CAMLI_FAST_DEV (bool):
  Used by dev/demo.sh for giving presentations with devcam server/put/etc
  for faster pre-built builds, without calling make.go.

CAMLI_FORCE_OSARCH (bool):
  Used by make.go to force building an unrecommended OS/ARCH pair.

CAMLI_GCE_*:
  Variables prefixed with CAMLI_GCE_ concern the Google Compute Engine deploy handler in
  pkg/deploy/gce, which is only used by camweb to launch Camlistore on Google Compute
  Engine. They do not affect Camlistore's behaviour.

CAMLI_GCE_CLIENTID (string):
  See CAMLI_GCE_* first. This string is used by gce.DeployHandler as the application's
  OAuth Client ID. If blank, camweb does not enable the Google Compute Engine launcher.

CAMLI_GCE_CLIENTSECRET (string):
  See CAMLI_GCE_* first. Used by gce.DeployHandler as the application's OAuth Client
  Secret. If blank, gce.NewDeployHandler returns an error, and camweb fails to start if
  the Google Compute Engine launcher was enabled.

CAMLI_GCE_DATA (string):
  See CAMLI_GCE_* first. Path to the directory where gce.DeployHandler stores the
  instances configuration and state. If blank, the "camli-gce-data" default is used
  instead.

CAMLI_GCE_PROJECT (string):
  See CAMLI_GCE_* first. ID of the Google Project that provides the above client ID and
  secret. It is used when we query for the list of all the existing zones, since such a
  query requires a project ID. If blank, a hard-coded list of zones is used instead.

CAMLI_GCE_SERVICE_ACCOUNT (string):
  See CAMLI_GCE_* first. Path to a Google service account JSON file. This account should
  have at least compute.readonly permissions on the Google Project wih ID CAMLI_GCE_PROJECT.
  It is used to authenticate when querying for the list of all the existing zones. If blank,
  a hard-coded list of zones is used instead.

CAMLI_GCE_XSRFKEY (string):
  See CAMLI_GCE_* first. Used by gce.DeployHandler as the XSRF protection key. If blank,
  gce.NewDeployHandler generates a new random key instead.

CAMLI_HTTP_DEBUG (bool):
  Enable per-request logging in pkg/webserver.

CAMLI_HTTP_EXPVAR (bool):
  Enable json export of expvars at /debug/vars

CAMLI_HTTP_PPROF (bool):
  Enable standard library's pprof handler at /debug/pprof/

CAMLI_IGNORED_FILES (string):
  Override client configuration option 'ignoredFiles'.
  Comma-seperated list of files to be ignored by pkg/client when uploading.

CAMLI_INCLUDE_PATH (string):
  Path to search for files.
  Referenced in pkg/osutil and used indirectly by pkg/jsonconfig.ConfigParser
  to search for files mentioned in configurations.  This is used as a last
  resort after first checking the current directory and the camlistore config
  directory. It should be in the OS path form, i.e. unix-like systems would be
  /path/1:/path/two:/some/other/path, and Windows would be C:\path\one;D:\path\2

CAMLI_KEYID (string):
  Optional GPG identity to use, taking precedence over config files.
  Used by devcam commands, in config/dev-server-config.json, and
  config/dev-client-dir/client-config.json as the public ID of the GPG
  key to use for signing.

CAMLI_KV_VERIFY (bool):
  Enable all the VerifyDb* options in cznic/kv, to e.g. track down
  corruptions.

CAMLI_KVINDEX_ENABLED (bool):
  Use cznic/kv as the indexer. Variable used only by devcam server.

CAMLI_LEVELDB_ENABLED (bool):
  Use syndtr/goleveldb as the indexer. Variable used only by devcam server.

CAMLI_MEMINDEX_ENABLED (bool):
  Use a memory-only indexer. Supported only by devcam server.

CAMLI_MONGO_WIPE (bool):
  Wipe out mongo based index on startup.

CAMLI_MAKE_USEGOPATH (bool):
  When running make.go, overrides the -use_gopath flag.

CAMLI_NO_FILE_DUP_SEARCH (bool):
  This will cause the search-for-exists-before-upload step to be skipped when
  camput is uploading files.

CAMLI_PPROF_START (string):
  Filename base to write a "<base>.cpu" and "<base>.mem" profile out
  to during server start-up.  Used to profile index corpus scanning,
  mostly.

CAMLI_QUIET (bool):
  Used by devcam to enable -verbose flag for camput/camget.

CAMLI_SECRET_RING (string):
  Path to the GPG secret keyring, which is otherwise set by identitySecretRing
  in the server config, and secretRing in the client config.

CAMLI_DISABLE_CLIENT_CONFIG_FILE (bool):
  If set, the pkg/client code will never use the on-disk config file.

CAMLI_TRACK_FS_STATS (bool):
  Enable operation counts for fuse filesystem.

CAMLI_TRUSTED_CERT (string):
  Override client configuration option 'trustedCerts'.
  Comma-seperated list of paths to trusted certificate fingerprints.

CAMPUT_ANDROID_OUTPUT (bool):
  Enable pkg/client status messages to print to stdout. Used in android client.

CAMLI_DEBUG_IMAGES (bool):
  Enable extra debugging in pkg/images when decoding images.  Used by indexers.

CAMLI_DISABLE_DJPEG (bool):
  Disable use of djpeg(1) to down-sample JPEG images by a factor of 2, 4 or 8.
  Only has an effect when djpeg is found in the PATH.

CAMLI_DISABLE_THUMB_CACHE (bool):
  If true, no thumbnail caching is done, and URLs even have cache
  buster components, to force browsers to reload a lot.

CAMLI_VAR_DIR (string):
  Path used by pkg/osutil to override operating system specific application
  storage directory. Generally unused.

CAMLI_S3_FAIL_PERCENT (int):
  Number from 0-100 of what percentage of the time to fail receiving blobs
  for the S3 handler.

DEV_THROTTLE_KBPS (integer):
DEV_THROTTLE_LATENCY_MS (integer):
  Rate limit and/or inject latency in pkg/webserver responses. A value of 0
  disables traffic-shaping.

RUN_BROKEN_TESTS (bool):
  Run known-broken tests.
