Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.ovhcloud.pulumi.ovh.CloudProject.inputs.DatabaseState Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing OVH resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.ovhcloud.pulumi.ovh.CloudProject.inputs;
import com.ovhcloud.pulumi.ovh.CloudProject.inputs.DatabaseEndpointArgs;
import com.ovhcloud.pulumi.ovh.CloudProject.inputs.DatabaseIpRestrictionArgs;
import com.ovhcloud.pulumi.ovh.CloudProject.inputs.DatabaseNodeArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class DatabaseState extends com.pulumi.resources.ResourceArgs {
public static final DatabaseState Empty = new DatabaseState();
/**
* Advanced configuration key / value.
*
*/
@Import(name="advancedConfiguration")
private @Nullable Output> advancedConfiguration;
/**
* @return Advanced configuration key / value.
*
*/
public Optional>> advancedConfiguration() {
return Optional.ofNullable(this.advancedConfiguration);
}
/**
* List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
*
*/
@Import(name="backupRegions")
private @Nullable Output> backupRegions;
/**
* @return List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
*
*/
public Optional>> backupRegions() {
return Optional.ofNullable(this.backupRegions);
}
/**
* Time on which backups start every day.
*
*/
@Import(name="backupTime")
private @Nullable Output backupTime;
/**
* @return Time on which backups start every day.
*
*/
public Optional> backupTime() {
return Optional.ofNullable(this.backupTime);
}
/**
* Date of the creation of the cluster.
*
*/
@Import(name="createdAt")
private @Nullable Output createdAt;
/**
* @return Date of the creation of the cluster.
*
*/
public Optional> createdAt() {
return Optional.ofNullable(this.createdAt);
}
/**
* Small description of the database service.
*
*/
@Import(name="description")
private @Nullable Output description;
/**
* @return Small description of the database service.
*
*/
public Optional> description() {
return Optional.ofNullable(this.description);
}
/**
* The disk size (in GB) of the database service.
*
*/
@Import(name="diskSize")
private @Nullable Output diskSize;
/**
* @return The disk size (in GB) of the database service.
*
*/
public Optional> diskSize() {
return Optional.ofNullable(this.diskSize);
}
/**
* Defines the disk type of the database service.
*
*/
@Import(name="diskType")
private @Nullable Output diskType;
/**
* @return Defines the disk type of the database service.
*
*/
public Optional> diskType() {
return Optional.ofNullable(this.diskType);
}
/**
* List of all endpoints objects of the service.
*
*/
@Import(name="endpoints")
private @Nullable Output> endpoints;
/**
* @return List of all endpoints objects of the service.
*
*/
public Optional>> endpoints() {
return Optional.ofNullable(this.endpoints);
}
/**
* The database engine you want to deploy. To get a full list of available engine visit.
* [public documentation](https://docs.ovh.com/gb/en/publiccloud/databases).
*
*/
@Import(name="engine")
private @Nullable Output engine;
/**
* @return The database engine you want to deploy. To get a full list of available engine visit.
* [public documentation](https://docs.ovh.com/gb/en/publiccloud/databases).
*
*/
public Optional> engine() {
return Optional.ofNullable(this.engine);
}
/**
* A valid OVHcloud public cloud database flavor name in which the nodes will be started.
* Ex: "db1-7". Changing this value upgrade the nodes with the new flavor.
* You can find the list of flavor names: https://www.ovhcloud.com/fr/public-cloud/prices/
*
*/
@Import(name="flavor")
private @Nullable Output flavor;
/**
* @return A valid OVHcloud public cloud database flavor name in which the nodes will be started.
* Ex: "db1-7". Changing this value upgrade the nodes with the new flavor.
* You can find the list of flavor names: https://www.ovhcloud.com/fr/public-cloud/prices/
*
*/
public Optional> flavor() {
return Optional.ofNullable(this.flavor);
}
/**
* IP Blocks authorized to access to the cluster.
*
*/
@Import(name="ipRestrictions")
private @Nullable Output> ipRestrictions;
/**
* @return IP Blocks authorized to access to the cluster.
*
*/
public Optional>> ipRestrictions() {
return Optional.ofNullable(this.ipRestrictions);
}
/**
* Defines whether the REST API is enabled on a kafka cluster
*
*/
@Import(name="kafkaRestApi")
private @Nullable Output kafkaRestApi;
/**
* @return Defines whether the REST API is enabled on a kafka cluster
*
*/
public Optional> kafkaRestApi() {
return Optional.ofNullable(this.kafkaRestApi);
}
/**
* Defines whether the schema registry is enabled on a Kafka cluster
*
*/
@Import(name="kafkaSchemaRegistry")
private @Nullable Output kafkaSchemaRegistry;
/**
* @return Defines whether the schema registry is enabled on a Kafka cluster
*
*/
public Optional> kafkaSchemaRegistry() {
return Optional.ofNullable(this.kafkaSchemaRegistry);
}
/**
* Time on which maintenances can start every day.
*
*/
@Import(name="maintenanceTime")
private @Nullable Output maintenanceTime;
/**
* @return Time on which maintenances can start every day.
*
*/
public Optional> maintenanceTime() {
return Optional.ofNullable(this.maintenanceTime);
}
/**
* Type of network of the cluster.
*
*/
@Import(name="networkType")
private @Nullable Output networkType;
/**
* @return Type of network of the cluster.
*
*/
public Optional> networkType() {
return Optional.ofNullable(this.networkType);
}
/**
* List of nodes object.
* Multi region cluster are not yet available, all node should be identical.
*
*/
@Import(name="nodes")
private @Nullable Output> nodes;
/**
* @return List of nodes object.
* Multi region cluster are not yet available, all node should be identical.
*
*/
public Optional>> nodes() {
return Optional.ofNullable(this.nodes);
}
/**
* Defines whether the ACLs are enabled on an OpenSearch cluster
*
*/
@Import(name="opensearchAclsEnabled")
private @Nullable Output opensearchAclsEnabled;
/**
* @return Defines whether the ACLs are enabled on an OpenSearch cluster
*
*/
public Optional> opensearchAclsEnabled() {
return Optional.ofNullable(this.opensearchAclsEnabled);
}
/**
* Plan of the cluster.
* * MongoDB: Enum: "discovery", "production", "advanced".
* * Mysql, PosgreSQL, Cassandra, M3DB, : Enum: "essential", "business", "enterprise".
* * M3 Aggregator: "business", "enterprise".
* * Redis: "essential", "business"
*
*/
@Import(name="plan")
private @Nullable Output plan;
/**
* @return Plan of the cluster.
* * MongoDB: Enum: "discovery", "production", "advanced".
* * Mysql, PosgreSQL, Cassandra, M3DB, : Enum: "essential", "business", "enterprise".
* * M3 Aggregator: "business", "enterprise".
* * Redis: "essential", "business"
*
*/
public Optional> plan() {
return Optional.ofNullable(this.plan);
}
/**
* The id of the public cloud project. If omitted,
* the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
*
*/
@Import(name="serviceName")
private @Nullable Output serviceName;
/**
* @return The id of the public cloud project. If omitted,
* the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
*
*/
public Optional> serviceName() {
return Optional.ofNullable(this.serviceName);
}
/**
* Current status of the cluster.
*
*/
@Import(name="status")
private @Nullable Output status;
/**
* @return Current status of the cluster.
*
*/
public Optional> status() {
return Optional.ofNullable(this.status);
}
/**
* The version of the engine in which the service should be deployed
*
*/
@Import(name="version")
private @Nullable Output version;
/**
* @return The version of the engine in which the service should be deployed
*
*/
public Optional> version() {
return Optional.ofNullable(this.version);
}
private DatabaseState() {}
private DatabaseState(DatabaseState $) {
this.advancedConfiguration = $.advancedConfiguration;
this.backupRegions = $.backupRegions;
this.backupTime = $.backupTime;
this.createdAt = $.createdAt;
this.description = $.description;
this.diskSize = $.diskSize;
this.diskType = $.diskType;
this.endpoints = $.endpoints;
this.engine = $.engine;
this.flavor = $.flavor;
this.ipRestrictions = $.ipRestrictions;
this.kafkaRestApi = $.kafkaRestApi;
this.kafkaSchemaRegistry = $.kafkaSchemaRegistry;
this.maintenanceTime = $.maintenanceTime;
this.networkType = $.networkType;
this.nodes = $.nodes;
this.opensearchAclsEnabled = $.opensearchAclsEnabled;
this.plan = $.plan;
this.serviceName = $.serviceName;
this.status = $.status;
this.version = $.version;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(DatabaseState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private DatabaseState $;
public Builder() {
$ = new DatabaseState();
}
public Builder(DatabaseState defaults) {
$ = new DatabaseState(Objects.requireNonNull(defaults));
}
/**
* @param advancedConfiguration Advanced configuration key / value.
*
* @return builder
*
*/
public Builder advancedConfiguration(@Nullable Output> advancedConfiguration) {
$.advancedConfiguration = advancedConfiguration;
return this;
}
/**
* @param advancedConfiguration Advanced configuration key / value.
*
* @return builder
*
*/
public Builder advancedConfiguration(Map advancedConfiguration) {
return advancedConfiguration(Output.of(advancedConfiguration));
}
/**
* @param backupRegions List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
*
* @return builder
*
*/
public Builder backupRegions(@Nullable Output> backupRegions) {
$.backupRegions = backupRegions;
return this;
}
/**
* @param backupRegions List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
*
* @return builder
*
*/
public Builder backupRegions(List backupRegions) {
return backupRegions(Output.of(backupRegions));
}
/**
* @param backupRegions List of region where backups are pushed. Not more than 1 regions for MongoDB. Not more than 2 regions for the other engines with one being the same as the nodes[].region field
*
* @return builder
*
*/
public Builder backupRegions(String... backupRegions) {
return backupRegions(List.of(backupRegions));
}
/**
* @param backupTime Time on which backups start every day.
*
* @return builder
*
*/
public Builder backupTime(@Nullable Output backupTime) {
$.backupTime = backupTime;
return this;
}
/**
* @param backupTime Time on which backups start every day.
*
* @return builder
*
*/
public Builder backupTime(String backupTime) {
return backupTime(Output.of(backupTime));
}
/**
* @param createdAt Date of the creation of the cluster.
*
* @return builder
*
*/
public Builder createdAt(@Nullable Output createdAt) {
$.createdAt = createdAt;
return this;
}
/**
* @param createdAt Date of the creation of the cluster.
*
* @return builder
*
*/
public Builder createdAt(String createdAt) {
return createdAt(Output.of(createdAt));
}
/**
* @param description Small description of the database service.
*
* @return builder
*
*/
public Builder description(@Nullable Output description) {
$.description = description;
return this;
}
/**
* @param description Small description of the database service.
*
* @return builder
*
*/
public Builder description(String description) {
return description(Output.of(description));
}
/**
* @param diskSize The disk size (in GB) of the database service.
*
* @return builder
*
*/
public Builder diskSize(@Nullable Output diskSize) {
$.diskSize = diskSize;
return this;
}
/**
* @param diskSize The disk size (in GB) of the database service.
*
* @return builder
*
*/
public Builder diskSize(Integer diskSize) {
return diskSize(Output.of(diskSize));
}
/**
* @param diskType Defines the disk type of the database service.
*
* @return builder
*
*/
public Builder diskType(@Nullable Output diskType) {
$.diskType = diskType;
return this;
}
/**
* @param diskType Defines the disk type of the database service.
*
* @return builder
*
*/
public Builder diskType(String diskType) {
return diskType(Output.of(diskType));
}
/**
* @param endpoints List of all endpoints objects of the service.
*
* @return builder
*
*/
public Builder endpoints(@Nullable Output> endpoints) {
$.endpoints = endpoints;
return this;
}
/**
* @param endpoints List of all endpoints objects of the service.
*
* @return builder
*
*/
public Builder endpoints(List endpoints) {
return endpoints(Output.of(endpoints));
}
/**
* @param endpoints List of all endpoints objects of the service.
*
* @return builder
*
*/
public Builder endpoints(DatabaseEndpointArgs... endpoints) {
return endpoints(List.of(endpoints));
}
/**
* @param engine The database engine you want to deploy. To get a full list of available engine visit.
* [public documentation](https://docs.ovh.com/gb/en/publiccloud/databases).
*
* @return builder
*
*/
public Builder engine(@Nullable Output engine) {
$.engine = engine;
return this;
}
/**
* @param engine The database engine you want to deploy. To get a full list of available engine visit.
* [public documentation](https://docs.ovh.com/gb/en/publiccloud/databases).
*
* @return builder
*
*/
public Builder engine(String engine) {
return engine(Output.of(engine));
}
/**
* @param flavor A valid OVHcloud public cloud database flavor name in which the nodes will be started.
* Ex: "db1-7". Changing this value upgrade the nodes with the new flavor.
* You can find the list of flavor names: https://www.ovhcloud.com/fr/public-cloud/prices/
*
* @return builder
*
*/
public Builder flavor(@Nullable Output flavor) {
$.flavor = flavor;
return this;
}
/**
* @param flavor A valid OVHcloud public cloud database flavor name in which the nodes will be started.
* Ex: "db1-7". Changing this value upgrade the nodes with the new flavor.
* You can find the list of flavor names: https://www.ovhcloud.com/fr/public-cloud/prices/
*
* @return builder
*
*/
public Builder flavor(String flavor) {
return flavor(Output.of(flavor));
}
/**
* @param ipRestrictions IP Blocks authorized to access to the cluster.
*
* @return builder
*
*/
public Builder ipRestrictions(@Nullable Output> ipRestrictions) {
$.ipRestrictions = ipRestrictions;
return this;
}
/**
* @param ipRestrictions IP Blocks authorized to access to the cluster.
*
* @return builder
*
*/
public Builder ipRestrictions(List ipRestrictions) {
return ipRestrictions(Output.of(ipRestrictions));
}
/**
* @param ipRestrictions IP Blocks authorized to access to the cluster.
*
* @return builder
*
*/
public Builder ipRestrictions(DatabaseIpRestrictionArgs... ipRestrictions) {
return ipRestrictions(List.of(ipRestrictions));
}
/**
* @param kafkaRestApi Defines whether the REST API is enabled on a kafka cluster
*
* @return builder
*
*/
public Builder kafkaRestApi(@Nullable Output kafkaRestApi) {
$.kafkaRestApi = kafkaRestApi;
return this;
}
/**
* @param kafkaRestApi Defines whether the REST API is enabled on a kafka cluster
*
* @return builder
*
*/
public Builder kafkaRestApi(Boolean kafkaRestApi) {
return kafkaRestApi(Output.of(kafkaRestApi));
}
/**
* @param kafkaSchemaRegistry Defines whether the schema registry is enabled on a Kafka cluster
*
* @return builder
*
*/
public Builder kafkaSchemaRegistry(@Nullable Output kafkaSchemaRegistry) {
$.kafkaSchemaRegistry = kafkaSchemaRegistry;
return this;
}
/**
* @param kafkaSchemaRegistry Defines whether the schema registry is enabled on a Kafka cluster
*
* @return builder
*
*/
public Builder kafkaSchemaRegistry(Boolean kafkaSchemaRegistry) {
return kafkaSchemaRegistry(Output.of(kafkaSchemaRegistry));
}
/**
* @param maintenanceTime Time on which maintenances can start every day.
*
* @return builder
*
*/
public Builder maintenanceTime(@Nullable Output maintenanceTime) {
$.maintenanceTime = maintenanceTime;
return this;
}
/**
* @param maintenanceTime Time on which maintenances can start every day.
*
* @return builder
*
*/
public Builder maintenanceTime(String maintenanceTime) {
return maintenanceTime(Output.of(maintenanceTime));
}
/**
* @param networkType Type of network of the cluster.
*
* @return builder
*
*/
public Builder networkType(@Nullable Output networkType) {
$.networkType = networkType;
return this;
}
/**
* @param networkType Type of network of the cluster.
*
* @return builder
*
*/
public Builder networkType(String networkType) {
return networkType(Output.of(networkType));
}
/**
* @param nodes List of nodes object.
* Multi region cluster are not yet available, all node should be identical.
*
* @return builder
*
*/
public Builder nodes(@Nullable Output> nodes) {
$.nodes = nodes;
return this;
}
/**
* @param nodes List of nodes object.
* Multi region cluster are not yet available, all node should be identical.
*
* @return builder
*
*/
public Builder nodes(List nodes) {
return nodes(Output.of(nodes));
}
/**
* @param nodes List of nodes object.
* Multi region cluster are not yet available, all node should be identical.
*
* @return builder
*
*/
public Builder nodes(DatabaseNodeArgs... nodes) {
return nodes(List.of(nodes));
}
/**
* @param opensearchAclsEnabled Defines whether the ACLs are enabled on an OpenSearch cluster
*
* @return builder
*
*/
public Builder opensearchAclsEnabled(@Nullable Output opensearchAclsEnabled) {
$.opensearchAclsEnabled = opensearchAclsEnabled;
return this;
}
/**
* @param opensearchAclsEnabled Defines whether the ACLs are enabled on an OpenSearch cluster
*
* @return builder
*
*/
public Builder opensearchAclsEnabled(Boolean opensearchAclsEnabled) {
return opensearchAclsEnabled(Output.of(opensearchAclsEnabled));
}
/**
* @param plan Plan of the cluster.
* * MongoDB: Enum: "discovery", "production", "advanced".
* * Mysql, PosgreSQL, Cassandra, M3DB, : Enum: "essential", "business", "enterprise".
* * M3 Aggregator: "business", "enterprise".
* * Redis: "essential", "business"
*
* @return builder
*
*/
public Builder plan(@Nullable Output plan) {
$.plan = plan;
return this;
}
/**
* @param plan Plan of the cluster.
* * MongoDB: Enum: "discovery", "production", "advanced".
* * Mysql, PosgreSQL, Cassandra, M3DB, : Enum: "essential", "business", "enterprise".
* * M3 Aggregator: "business", "enterprise".
* * Redis: "essential", "business"
*
* @return builder
*
*/
public Builder plan(String plan) {
return plan(Output.of(plan));
}
/**
* @param serviceName The id of the public cloud project. If omitted,
* the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
*
* @return builder
*
*/
public Builder serviceName(@Nullable Output serviceName) {
$.serviceName = serviceName;
return this;
}
/**
* @param serviceName The id of the public cloud project. If omitted,
* the `OVH_CLOUD_PROJECT_SERVICE` environment variable is used.
*
* @return builder
*
*/
public Builder serviceName(String serviceName) {
return serviceName(Output.of(serviceName));
}
/**
* @param status Current status of the cluster.
*
* @return builder
*
*/
public Builder status(@Nullable Output status) {
$.status = status;
return this;
}
/**
* @param status Current status of the cluster.
*
* @return builder
*
*/
public Builder status(String status) {
return status(Output.of(status));
}
/**
* @param version The version of the engine in which the service should be deployed
*
* @return builder
*
*/
public Builder version(@Nullable Output version) {
$.version = version;
return this;
}
/**
* @param version The version of the engine in which the service should be deployed
*
* @return builder
*
*/
public Builder version(String version) {
return version(Output.of(version));
}
public DatabaseState build() {
return $;
}
}
}