Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions intent_types/mongo/v1alpha1/README.md
Original file line number Diff line number Diff line change
@@ -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.
5 changes: 5 additions & 0 deletions intent_types/mongo/v1alpha1/intent_type.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"name": "MongoDB",
"api_version": "v1alpha1",
"description": "An Intent Type for deploying and managing MongoDB, following Kubernetes style version naming."
}
38 changes: 38 additions & 0 deletions intent_types/mongo/v1alpha1/sample.json
Original file line number Diff line number Diff line change
@@ -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": {}
}