in ec/ecresource/deploymentresource/integrationsserver/v2/schema.go [34:178]
func IntegrationsServerSchema() schema.Attribute {
return schema.SingleNestedAttribute{
Description: "Integrations Server cluster definition. Integrations Server replaces `apm` in Stack versions > 8.0",
Optional: true,
Validators: []validator.Object{
objectvalidator.AlsoRequires(path.MatchRoot("kibana")),
},
Attributes: map[string]schema.Attribute{
"elasticsearch_cluster_ref_id": schema.StringAttribute{
Optional: true,
Computed: true,
PlanModifiers: []planmodifier.String{
planmodifiers.StringDefaultValue("main-elasticsearch"),
},
},
"ref_id": schema.StringAttribute{
Optional: true,
Computed: true,
PlanModifiers: []planmodifier.String{
planmodifiers.StringDefaultValue("main-integrations_server"),
},
},
"resource_id": schema.StringAttribute{
Computed: true,
PlanModifiers: []planmodifier.String{
stringplanmodifier.UseStateForUnknown(),
},
},
"region": schema.StringAttribute{
Computed: true,
PlanModifiers: []planmodifier.String{
stringplanmodifier.UseStateForUnknown(),
},
},
"http_endpoint": schema.StringAttribute{
Computed: true,
PlanModifiers: []planmodifier.String{
stringplanmodifier.UseStateForUnknown(),
},
},
"https_endpoint": schema.StringAttribute{
Computed: true,
PlanModifiers: []planmodifier.String{
stringplanmodifier.UseStateForUnknown(),
},
},
"endpoints": schema.ObjectAttribute{
Optional: true,
Computed: true,
Description: "URLs for the accessing the Fleet and APM API's within this Integrations Server resource.",
AttributeTypes: map[string]attr.Type{
"apm": types.StringType,
"fleet": types.StringType,
"symbols": types.StringType,
"profiling": types.StringType,
},
PlanModifiers: []planmodifier.Object{
objectplanmodifier.UseStateForUnknown(),
},
},
"instance_configuration_id": schema.StringAttribute{
Optional: true,
Computed: true,
PlanModifiers: []planmodifier.String{
planmodifiers.UseStateForUnknownUnlessMigrationIsRequired("integrations_server", false),
},
},
"latest_instance_configuration_id": schema.StringAttribute{
Computed: true,
PlanModifiers: []planmodifier.String{
planmodifiers.UseStateForUnknownUnlessMigrationIsRequired("integrations_server", false),
},
},
"instance_configuration_version": schema.Int64Attribute{
Computed: true,
Optional: true,
PlanModifiers: []planmodifier.Int64{
planmodifiers.UseStateForUnknownUnlessMigrationIsRequired("integrations_server", true),
},
},
"latest_instance_configuration_version": schema.Int64Attribute{
Computed: true,
PlanModifiers: []planmodifier.Int64{
planmodifiers.UseStateForUnknownUnlessMigrationIsRequired("integrations_server", true),
},
},
"size": schema.StringAttribute{
Computed: true,
Optional: true,
PlanModifiers: []planmodifier.String{
planmodifiers.UseStateForUnknownUnlessMigrationIsRequired("integrations_server", false),
},
},
"size_resource": schema.StringAttribute{
Description: `Optional size type, defaults to "memory".`,
Optional: true,
Computed: true,
PlanModifiers: []planmodifier.String{
planmodifiers.StringDefaultValue("memory"),
},
},
"zone_count": schema.Int64Attribute{
Computed: true,
Optional: true,
PlanModifiers: []planmodifier.Int64{
int64planmodifier.UseStateForUnknown(),
},
},
"config": schema.SingleNestedAttribute{
Description: `Optionally define the Integrations Server configuration options for the IntegrationsServer Server`,
Optional: true,
Attributes: map[string]schema.Attribute{
"docker_image": schema.StringAttribute{
Description: "Optionally override the docker image the Integrations Server nodes will use. Note that this field will only work for internal users only.",
Optional: true,
},
"debug_enabled": schema.BoolAttribute{
Description: `Optionally enable debug mode for Integrations Server instances - defaults to false`,
Optional: true,
Computed: true,
PlanModifiers: []planmodifier.Bool{
planmodifiers.BoolDefaultValue(false),
},
},
"user_settings_json": schema.StringAttribute{
Description: `An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided they are on the whitelist ('user_settings_whitelist') and not on the blacklist ('user_settings_blacklist'). (This field together with 'user_settings_override*' and 'system_settings' defines the total set of resource settings)`,
Optional: true,
},
"user_settings_override_json": schema.StringAttribute{
Description: `An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of resource settings)`,
Optional: true,
},
"user_settings_yaml": schema.StringAttribute{
Description: `An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided they are on the whitelist ('user_settings_whitelist') and not on the blacklist ('user_settings_blacklist'). (These field together with 'user_settings_override*' and 'system_settings' defines the total set of resource settings)`,
Optional: true,
},
"user_settings_override_yaml": schema.StringAttribute{
Description: `An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of resource settings)`,
Optional: true,
},
},
},
},
}
}