All Downloads are FREE. Search and download functionalities are using the official Maven repository.
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.pulumi.alicloud.arms.PrometheusArgs Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing AliCloud 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.pulumi.alicloud.arms;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class PrometheusArgs extends com.pulumi.resources.ResourceArgs {
public static final PrometheusArgs Empty = new PrometheusArgs();
/**
* The ID of the Kubernetes cluster. This parameter is required, if you set `cluster_type` to `aliyun-cs`.
*
*/
@Import(name="clusterId")
private @Nullable Output clusterId;
/**
* @return The ID of the Kubernetes cluster. This parameter is required, if you set `cluster_type` to `aliyun-cs`.
*
*/
public Optional> clusterId() {
return Optional.ofNullable(this.clusterId);
}
/**
* The name of the created cluster. This parameter is required, if you set `cluster_type` to `remote-write`, `ecs` or `global-view`.
*
*/
@Import(name="clusterName")
private @Nullable Output clusterName;
/**
* @return The name of the created cluster. This parameter is required, if you set `cluster_type` to `remote-write`, `ecs` or `global-view`.
*
*/
public Optional> clusterName() {
return Optional.ofNullable(this.clusterName);
}
/**
* The type of the Prometheus instance. Valid values: `remote-write`, `ecs`, `global-view`, `aliyun-cs`.
*
*/
@Import(name="clusterType", required=true)
private Output clusterType;
/**
* @return The type of the Prometheus instance. Valid values: `remote-write`, `ecs`, `global-view`, `aliyun-cs`.
*
*/
public Output clusterType() {
return this.clusterType;
}
/**
* The ID of the Grafana dedicated instance. When using the shared version of Grafana, you can set `grafana_instance_id` to `free`.
*
*/
@Import(name="grafanaInstanceId", required=true)
private Output grafanaInstanceId;
/**
* @return The ID of the Grafana dedicated instance. When using the shared version of Grafana, you can set `grafana_instance_id` to `free`.
*
*/
public Output grafanaInstanceId() {
return this.grafanaInstanceId;
}
/**
* The ID of the resource group.
*
*/
@Import(name="resourceGroupId")
private @Nullable Output resourceGroupId;
/**
* @return The ID of the resource group.
*
*/
public Optional> resourceGroupId() {
return Optional.ofNullable(this.resourceGroupId);
}
/**
* The ID of the security group. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
*/
@Import(name="securityGroupId")
private @Nullable Output securityGroupId;
/**
* @return The ID of the security group. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
*/
public Optional> securityGroupId() {
return Optional.ofNullable(this.securityGroupId);
}
/**
* The child instance json string of the globalView instance.
*
*/
@Import(name="subClustersJson")
private @Nullable Output subClustersJson;
/**
* @return The child instance json string of the globalView instance.
*
*/
public Optional> subClustersJson() {
return Optional.ofNullable(this.subClustersJson);
}
/**
* A mapping of tags to assign to the resource.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return A mapping of tags to assign to the resource.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* The ID of the VPC. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
*/
@Import(name="vpcId")
private @Nullable Output vpcId;
/**
* @return The ID of the VPC. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
*/
public Optional> vpcId() {
return Optional.ofNullable(this.vpcId);
}
/**
* The ID of the VSwitch. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
*/
@Import(name="vswitchId")
private @Nullable Output vswitchId;
/**
* @return The ID of the VSwitch. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
*/
public Optional> vswitchId() {
return Optional.ofNullable(this.vswitchId);
}
private PrometheusArgs() {}
private PrometheusArgs(PrometheusArgs $) {
this.clusterId = $.clusterId;
this.clusterName = $.clusterName;
this.clusterType = $.clusterType;
this.grafanaInstanceId = $.grafanaInstanceId;
this.resourceGroupId = $.resourceGroupId;
this.securityGroupId = $.securityGroupId;
this.subClustersJson = $.subClustersJson;
this.tags = $.tags;
this.vpcId = $.vpcId;
this.vswitchId = $.vswitchId;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(PrometheusArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private PrometheusArgs $;
public Builder() {
$ = new PrometheusArgs();
}
public Builder(PrometheusArgs defaults) {
$ = new PrometheusArgs(Objects.requireNonNull(defaults));
}
/**
* @param clusterId The ID of the Kubernetes cluster. This parameter is required, if you set `cluster_type` to `aliyun-cs`.
*
* @return builder
*
*/
public Builder clusterId(@Nullable Output clusterId) {
$.clusterId = clusterId;
return this;
}
/**
* @param clusterId The ID of the Kubernetes cluster. This parameter is required, if you set `cluster_type` to `aliyun-cs`.
*
* @return builder
*
*/
public Builder clusterId(String clusterId) {
return clusterId(Output.of(clusterId));
}
/**
* @param clusterName The name of the created cluster. This parameter is required, if you set `cluster_type` to `remote-write`, `ecs` or `global-view`.
*
* @return builder
*
*/
public Builder clusterName(@Nullable Output clusterName) {
$.clusterName = clusterName;
return this;
}
/**
* @param clusterName The name of the created cluster. This parameter is required, if you set `cluster_type` to `remote-write`, `ecs` or `global-view`.
*
* @return builder
*
*/
public Builder clusterName(String clusterName) {
return clusterName(Output.of(clusterName));
}
/**
* @param clusterType The type of the Prometheus instance. Valid values: `remote-write`, `ecs`, `global-view`, `aliyun-cs`.
*
* @return builder
*
*/
public Builder clusterType(Output clusterType) {
$.clusterType = clusterType;
return this;
}
/**
* @param clusterType The type of the Prometheus instance. Valid values: `remote-write`, `ecs`, `global-view`, `aliyun-cs`.
*
* @return builder
*
*/
public Builder clusterType(String clusterType) {
return clusterType(Output.of(clusterType));
}
/**
* @param grafanaInstanceId The ID of the Grafana dedicated instance. When using the shared version of Grafana, you can set `grafana_instance_id` to `free`.
*
* @return builder
*
*/
public Builder grafanaInstanceId(Output grafanaInstanceId) {
$.grafanaInstanceId = grafanaInstanceId;
return this;
}
/**
* @param grafanaInstanceId The ID of the Grafana dedicated instance. When using the shared version of Grafana, you can set `grafana_instance_id` to `free`.
*
* @return builder
*
*/
public Builder grafanaInstanceId(String grafanaInstanceId) {
return grafanaInstanceId(Output.of(grafanaInstanceId));
}
/**
* @param resourceGroupId The ID of the resource group.
*
* @return builder
*
*/
public Builder resourceGroupId(@Nullable Output resourceGroupId) {
$.resourceGroupId = resourceGroupId;
return this;
}
/**
* @param resourceGroupId The ID of the resource group.
*
* @return builder
*
*/
public Builder resourceGroupId(String resourceGroupId) {
return resourceGroupId(Output.of(resourceGroupId));
}
/**
* @param securityGroupId The ID of the security group. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
* @return builder
*
*/
public Builder securityGroupId(@Nullable Output securityGroupId) {
$.securityGroupId = securityGroupId;
return this;
}
/**
* @param securityGroupId The ID of the security group. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
* @return builder
*
*/
public Builder securityGroupId(String securityGroupId) {
return securityGroupId(Output.of(securityGroupId));
}
/**
* @param subClustersJson The child instance json string of the globalView instance.
*
* @return builder
*
*/
public Builder subClustersJson(@Nullable Output subClustersJson) {
$.subClustersJson = subClustersJson;
return this;
}
/**
* @param subClustersJson The child instance json string of the globalView instance.
*
* @return builder
*
*/
public Builder subClustersJson(String subClustersJson) {
return subClustersJson(Output.of(subClustersJson));
}
/**
* @param tags A mapping of tags to assign to the resource.
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags A mapping of tags to assign to the resource.
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
/**
* @param vpcId The ID of the VPC. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
* @return builder
*
*/
public Builder vpcId(@Nullable Output vpcId) {
$.vpcId = vpcId;
return this;
}
/**
* @param vpcId The ID of the VPC. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
* @return builder
*
*/
public Builder vpcId(String vpcId) {
return vpcId(Output.of(vpcId));
}
/**
* @param vswitchId The ID of the VSwitch. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
* @return builder
*
*/
public Builder vswitchId(@Nullable Output vswitchId) {
$.vswitchId = vswitchId;
return this;
}
/**
* @param vswitchId The ID of the VSwitch. This parameter is required, if you set `cluster_type` to `ecs` or `aliyun-cs`(ASK instance).
*
* @return builder
*
*/
public Builder vswitchId(String vswitchId) {
return vswitchId(Output.of(vswitchId));
}
public PrometheusArgs build() {
if ($.clusterType == null) {
throw new MissingRequiredPropertyException("PrometheusArgs", "clusterType");
}
if ($.grafanaInstanceId == null) {
throw new MissingRequiredPropertyException("PrometheusArgs", "grafanaInstanceId");
}
return $;
}
}
}