'spinnaker.azure.enabled' conflicted with the environment variable used for the Azure cloudprovider config. Since azure storage can be used with other providers (like Kubernetes) we want the names to be different.
The default clouddriver.yml ignores the repository specified in spinnaker.yml and instead gets the entire catalog. This is confusing because some registries (like the default 'index.docker.io') don't let you get the entire catalog and return a '401 Unauthorized'. I modified clouddriver.yml to use the repository, but also removed 'library/nginx' so that it still gets the entire catalog by default
Add ‘:’ to the username and passwordFile environment vars so that they default to null (and thus you can connect to public repos). Otherwise it was using the literal string “${SPINNAKER_DOCKER_USERNAME}” as my username
This is currently configurable by command line parameters with fixed service
names so is restricted to the pre-existing service names (not HA names).
However except for that one function that converts the options toa list of
endpoints, that is the only place for that restriction. So in the interim
you can replace that method with a different mechanism if you need different
names (such as 'clouddriver-ro', etc) and it should work.
--service_hosts=<comma delimited list of IPs, defaulting to "localhost">
--<service>=<comma listed list of network locations> where <service> is
"clouddriver", etc and <network location> is <host[:port]> where the
standard port will be assumed if not provided. A host of "*" means
use all the hosts in --service_hosts.
If --service_hosts is empty then by default no services will be used.
If --<service>=<empty> then that service will be ignored. If non empty
it will override --service_hosts (unless it is "*" in which case it is
service_hosts).
By default each service specifies its endpoints as "*" so the net effect
is that it will look at the standard ports for localhost if you say nothing,
or the standard ports for --service_hosts if you just specify that.