Configuration variables

Configuration settings for dataClay (Client and Services).

The following classes contain all the configuration that are used by the different dataClay services as well as by the Client.

All the configuration can be set through environment variables. This is true for dataClay deployment (i.e. services, so Backend, Metadata and Proxy) as well as for the client application.

class BackendSettings[source]

These settings are exclusive to the Backend service.

The configuration fields can be established through environment variables with the prefix DATACLAY_BACKEND_. For example, to set the host field, you can set the environment variable DATACLAY_BACKEND_HOST.

id: uuid.UUID | None

The ID for the backend. Will be autogenerated and persisted to disk if not provided.

name: str | None

A human-readable name for this backend.

host: str

Hostname or IP address for this backend. This should be reachable by other dataClay services. By default, the hostname of the machine is used. Change if you are using an external reverse proxy or need to accommodate some NAT environment where manual port forwarding has been configured.

port: int

Port for the backend service. Defaults to 6867.

listen_address: str

Address to listen on. Defaults to 0.0.0.0 (any network).

enable_healthcheck: bool

Enable healthcheck endpoint. Defaults to True.

class MetadataSettings[source]

These settings are exclusive to the Metadata service.

The configuration fields can be established through environment variables with the prefix DATACLAY_METADATA_. For example, to set the host field, you can set the environment variable DATACLAY_METADATA_HOST.

host: str

Hostname or IP address for this metadata service. This should be reachable by other dataClay services.. By default, the hostname of the machine is used.

port: int

Port for the metadata service. Defaults to 16587.

listen_address: str

Address to listen on. Defaults to 0.0.0.0 (any network).

enable_healthcheck: bool

Enable healthcheck endpoint. Defaults to True.

class ProxySettings[source]

These settings are exclusive to the Proxy service.

The configuration fields can be established through environment variables with the prefix DATACLAY_PROXY_. For example, to set the mds_host field, you can set the environment variable DATACLAY_PROXY_MDS_HOST.

port: int

Port for the proxy service. Defaults to 8676.

listen_address: str

Address to listen on. Defaults to 0.0.0.0 (any network).

mds_host: str

Address of the metadata service.

mds_port: int

Port of the metadata service. Defaults to 16587.

config_module: str

Python module to use for the proxy configuration. Defaults to “proxy_config”.

class ClientSettings[source]

These settings are consumed by the dataClay Client.

The configuration fields can be established through environment variables with the prefix DC_. For example, to set the dataset field, you can set the environment variable DC_DATASET.

username: str

Username to use for the client. Defaults to “admin”.

dataset: str

Dataset to use for the client. Defaults to “admin”.

local_backend: str | None

Specifying this option will result in most client operations to be performed against this _local_ backend instead of being performed to a random backend.

dataclay_port: int

Port for the metadata service. Defaults to 16587. Aliases: dc_port, dataclay_metadata_port, dataclay_port.

proxy_enabled: bool

Enable proxy. Defaults to False. If proxy_host or proxy_port are explicitly set, this flag will be set to True automatically. When proxy is being used, dataclay_host and dataclay_port will be ignored.

proxy_host: str

Hostname or IP address for the proxy service. Defaults to 127.0.0.1 (but proxy won’t be used unless proxy_enabled is set to True).

proxy_port: int

Port for the proxy service. Defaults to 8676.

async_enabled: bool

Enable async. Defaults to False.

class Settings[source]

Global configuration settings for dataClay.

io_bound_multiplier: int

Multiplier for I/O-bound tasks