Config Service
wasmCloud hosts can be configured at start time with a variety of host config options. However, in some production deploys, it is useful to provide supplemental configuration to a host from an external source.
For example, wasmCloud hosts can be configured to pull artifacts from private OCI registries. The host can be started with credentials to a single registry, but in cases where multiple registries are used to host artifacts, a config service can be used to provide credentials for multiple registries to hosts.
The config service is disabled by default. When enabled, wasmCloud hosts will make a request to wasmbus.cfg.{lattice-id}.req
during initialization.
Config Requests and Responses
When making a request for configuration, the host provides its labels as the payload:
{
"labels": {
"foo": "bar",
"baz": "qux"
}
}
In response, the host receives supplemental configuration. At this time, the only configuration returned is a set of credentials for OCI registries:
{
"registryCredentials": {
"someregistry.io": {
"username": "user1",
"password": "hunter2"
},
"anotherregistry.io": {
"username": "myuser",
"password": "asecurepassword"
}
}
}
Hosting a Config Service
Since the config service API is over NATS, it can be implemented by anything that can subscribe and publish responses to wasmbus.cfg.{lattice-id}.req
(including a wasmCloud actor!).