diff --git a/intent_types/mongo/v1alpha1/README.md b/intent_types/mongo/v1alpha1/README.md new file mode 100644 index 0000000..aa5774a --- /dev/null +++ b/intent_types/mongo/v1alpha1/README.md @@ -0,0 +1,20 @@ +# Mongo Intent Type + +## Overview + +This intent type is designed to represent a Mongo database configuration within an Infrastructure Catalog. It encapsulates the necessary information for provisioning and managing a Mongo database instance. + +## Fields + +- `metadata`: Contains auxiliary information such as the maintainer, documentation link, labels, name, and description. +- `kind`: Specifies the kind of the resource, in this case, `Mongo`. +- `spec`: Contains detailed information about the Mongo instance including the Mongo version and optional server variables. +- `disabled`: Indicates if the resource is disabled (`true`) or enabled (`false`) by default. +- `flavor`: Specifies the default implementation details, including the version and name. + +## Specification (TBD) + + +## Example + +See the `sample.json` file for an example instance of this intent type. \ No newline at end of file diff --git a/intent_types/mongo/v1alpha1/intent_type.json b/intent_types/mongo/v1alpha1/intent_type.json new file mode 100644 index 0000000..3a02d91 --- /dev/null +++ b/intent_types/mongo/v1alpha1/intent_type.json @@ -0,0 +1,5 @@ +{ + "name": "MongoDB", + "api_version": "v1alpha1", + "description": "An Intent Type for deploying and managing MongoDB, following Kubernetes style version naming." +} diff --git a/intent_types/mongo/v1alpha1/sample.json b/intent_types/mongo/v1alpha1/sample.json new file mode 100644 index 0000000..7711f42 --- /dev/null +++ b/intent_types/mongo/v1alpha1/sample.json @@ -0,0 +1,38 @@ +{ + "api_version": "v1alpha1", + "metadata": { + "maintainer": "rohit@example.com", + "documentation_link": "https://example.com/documentation", + "labels": { + "owner": "infrastructure@example.com" + }, + "name": "my-mongodb-instance", + "description": "A MongoDB instance." + }, + "kind": "mongodb", + "spec": { + "version": "6.0.2", + "security": { + "authentication": true, + "authorization": true, + "tls": true + }, + "backup": { + "enabled": true + }, + "replication": { + "data_instances": 3, + "arbiter_instances": 1 + }, + "parameters": { + "key1": "value1", + "key2": "value2" + } + }, + "disabled": false, + "flavor": { + "version": "1.0", + "name": "standard" + }, + "advanced": {} +}