diff --git a/README.md b/README.md index 83878e5..7c17dfa 100644 --- a/README.md +++ b/README.md @@ -32,13 +32,13 @@ We recommend using the provided Docker container. A pre-build version is available at [docker hub](https://hub.docker.com/repository/docker/ghga/mass): ```bash -docker pull ghga/mass:0.3.2 +docker pull ghga/mass:0.3.3 ``` Or you can build the container yourself from the [`./Dockerfile`](./Dockerfile): ```bash # Execute in the repo's root dir: -docker build -t ghga/mass:0.3.2 . +docker build -t ghga/mass:0.3.3 . ``` For production-ready deployment, we recommend using Kubernetes, however, @@ -46,7 +46,7 @@ for simple use cases, you could execute the service using docker on a single server: ```bash # The entrypoint is preconfigured: -docker run -p 8080:8080 ghga/mass:0.3.2 --help +docker run -p 8080:8080 ghga/mass:0.3.3 --help ``` If you prefer not to use containers, you may install the service from source: @@ -64,7 +64,7 @@ mass --help The service requires the following configuration parameters: - **`searchable_classes`** *(object)*: A collection of searchable_classes with facetable properties. Can contain additional properties. - - **Additional Properties**: Refer to *#/definitions/SearchableClass*. + - **Additional Properties**: Refer to *[#/definitions/SearchableClass](#definitions/SearchableClass)*. - **`resource_change_event_topic`** *(string)*: Name of the event topic used to track resource deletion and upsertion events. @@ -72,7 +72,7 @@ The service requires the following configuration parameters: - **`resource_upsertion_event_type`** *(string)*: The type to use for events with upsert instructions. -- **`service_name`** *(string)*: Default: `mass`. +- **`service_name`** *(string)*: Default: `"mass"`. - **`service_instance_id`** *(string)*: A string that uniquely identifies this instance across all instances of this service. A globally unique Kafka client ID will be created by concatenating the service_name and the service_instance_id. @@ -80,25 +80,25 @@ The service requires the following configuration parameters: - **Items** *(string)* -- **`db_connection_str`** *(string)*: MongoDB connection string. Might include credentials. For more information see: https://naiveskill.com/mongodb-connection-string/. +- **`db_connection_str`** *(string, format: password)*: MongoDB connection string. Might include credentials. For more information see: https://naiveskill.com/mongodb-connection-string/. - **`db_name`** *(string)*: Name of the database located on the MongoDB server. -- **`host`** *(string)*: IP of the host. Default: `127.0.0.1`. +- **`host`** *(string)*: IP of the host. Default: `"127.0.0.1"`. - **`port`** *(integer)*: Port to expose the server on the specified host. Default: `8080`. -- **`log_level`** *(string)*: Controls the verbosity of the log. Must be one of: `['critical', 'error', 'warning', 'info', 'debug', 'trace']`. Default: `info`. +- **`log_level`** *(string)*: Controls the verbosity of the log. Must be one of: `["critical", "error", "warning", "info", "debug", "trace"]`. Default: `"info"`. -- **`auto_reload`** *(boolean)*: A development feature. Set to `True` to automatically reload the server upon code changes. Default: `False`. +- **`auto_reload`** *(boolean)*: A development feature. Set to `True` to automatically reload the server upon code changes. Default: `false`. - **`workers`** *(integer)*: Number of workers processes to run. Default: `1`. -- **`api_root_path`** *(string)*: Root path at which the API is reachable. This is relative to the specified host and port. Default: `/`. +- **`api_root_path`** *(string)*: Root path at which the API is reachable. This is relative to the specified host and port. Default: `"/"`. -- **`openapi_url`** *(string)*: Path to get the openapi specification in JSON format. This is relative to the specified host and port. Default: `/openapi.json`. +- **`openapi_url`** *(string)*: Path to get the openapi specification in JSON format. This is relative to the specified host and port. Default: `"/openapi.json"`. -- **`docs_url`** *(string)*: Path to host the swagger documentation. This is relative to the specified host and port. Default: `/docs`. +- **`docs_url`** *(string)*: Path to host the swagger documentation. This is relative to the specified host and port. Default: `"/docs"`. - **`cors_allowed_origins`** *(array)*: A list of origins that should be permitted to make cross-origin requests. By default, cross-origin requests are not allowed. You can use ['*'] to allow any origin. @@ -117,19 +117,19 @@ The service requires the following configuration parameters: ## Definitions -- **`FacetLabel`** *(object)*: Contains the key and corresponding user-friendly name for a facet. +- **`FacetLabel`** *(object)*: Contains the key and corresponding user-friendly name for a facet. - - **`key`** *(string)*: The raw facet key, such as study.type. + - **`key`** *(string, required)*: The raw facet key, such as study.type. - - **`name`** *(string)*: The user-friendly name for the facet. Default: ``. + - **`name`** *(string)*: The user-friendly name for the facet. Default: `""`. -- **`SearchableClass`** *(object)*: Represents a searchable artifact or resource type. +- **`SearchableClass`** *(object)*: Represents a searchable artifact or resource type. - - **`description`** *(string)*: A brief description of the resource type. + - **`description`** *(string, required)*: A brief description of the resource type. - - **`facetable_properties`** *(array)*: A list of of the facetable properties for the resource type. + - **`facetable_properties`** *(array, required)*: A list of of the facetable properties for the resource type. - - **Items**: Refer to *#/definitions/FacetLabel*. + - **Items**: Refer to *[#/definitions/FacetLabel](#definitions/FacetLabel)*. ### Usage: @@ -205,7 +205,7 @@ Moreover, inside the devcontainer, a convenience commands `dev_install` is avail It installs the service with all development dependencies, installs pre-commit. The installation is performed automatically when you build the devcontainer. However, -if you update dependencies in the [`./setup.cfg`](./setup.cfg) or the +if you update dependencies in the [`./pyproject.toml`](./pyproject.toml) or the [`./requirements-dev.txt`](./requirements-dev.txt), please run it again. ## License