import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Configuration resource in Oracle Cloud Infrastructure Psql service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/postgresql/latest/Configuration * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/psql * * Creates a new configuration. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testConfiguration = new oci.psql.Configuration("test_configuration", { * compartmentId: compartmentId, * dbConfigurationOverrides: { * items: [{ * configKey: configurationDbConfigurationOverridesItemsConfigKey, * overridenConfigValue: configurationDbConfigurationOverridesItemsOverridenConfigValue, * }], * }, * dbVersion: configurationDbVersion, * displayName: configurationDisplayName, * compatibleShapes: configurationCompatibleShapes, * definedTags: { * "foo-namespace.bar-key": "value", * }, * description: configurationDescription, * freeformTags: { * "bar-key": "value", * }, * instanceMemorySizeInGbs: Number(configurationInstanceMemorySizeInGbs), * instanceOcpuCount: Number(configurationInstanceOcpuCount), * isFlexible: configurationIsFlexible === "true", * shape: configurationShape, * systemTags: configurationSystemTags, * }); * ``` * * ## Import * * Configurations can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Psql/configuration:Configuration test_configuration "id" * ``` */ export declare class Configuration extends pulumi.CustomResource { /** * Get an existing Configuration resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: ConfigurationState, opts?: pulumi.CustomResourceOptions): Configuration; /** * Returns true if the given object is an instance of Configuration. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Configuration; /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that contains the configuration. */ readonly compartmentId: pulumi.Output; /** * (Updatable) Indicates the collection of compatible shapes for this configuration. */ readonly compatibleShapes: pulumi.Output; /** * The type of configuration. Either user-created or a default configuration. */ readonly configType: pulumi.Output; /** * List of configuration details. */ readonly configurationDetails: pulumi.Output; /** * Configuration overrides for a PostgreSQL instance. */ readonly dbConfigurationOverrides: pulumi.Output; /** * Version of the PostgreSQL database. */ readonly dbVersion: pulumi.Output; /** * The Default configuration used for this configuration. */ readonly defaultConfigId: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) Details about the configuration set. */ readonly description: pulumi.Output; /** * (Updatable) A user-friendly display name for the configuration. Avoid entering confidential information. */ readonly displayName: pulumi.Output; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * Memory size in gigabytes with 1GB increment. * * Skip or set it's value to 0 if configuration is for a flexible shape. */ readonly instanceMemorySizeInGbs: pulumi.Output; /** * CPU core count. * * Skip or set it's value to 0 if configuration is for a flexible shape. */ readonly instanceOcpuCount: pulumi.Output; /** * Whether the configuration supports flexible shapes. */ readonly isFlexible: pulumi.Output; /** * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. */ readonly lifecycleDetails: pulumi.Output; /** * The name of the shape for the configuration. * * For multi-shape enabled configurations, it is set to PostgreSQL.X86 or similar. Please use compatibleShapes property to set the list of supported shapes. */ readonly shape: pulumi.Output; /** * The current state of the configuration. */ readonly state: pulumi.Output; /** * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly systemTags: pulumi.Output<{ [key: string]: string; }>; /** * The date and time that the configuration was created, expressed in [RFC 3339](https://tools.ietf.org/rfc/rfc3339) timestamp format. Example: `2016-08-25T21:10:29.600Z` */ readonly timeCreated: pulumi.Output; /** * Create a Configuration resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: ConfigurationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Configuration resources. */ export interface ConfigurationState { /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that contains the configuration. */ compartmentId?: pulumi.Input; /** * (Updatable) Indicates the collection of compatible shapes for this configuration. */ compatibleShapes?: pulumi.Input[] | undefined>; /** * The type of configuration. Either user-created or a default configuration. */ configType?: pulumi.Input; /** * List of configuration details. */ configurationDetails?: pulumi.Input[] | undefined>; /** * Configuration overrides for a PostgreSQL instance. */ dbConfigurationOverrides?: pulumi.Input; /** * Version of the PostgreSQL database. */ dbVersion?: pulumi.Input; /** * The Default configuration used for this configuration. */ defaultConfigId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Details about the configuration set. */ description?: pulumi.Input; /** * (Updatable) A user-friendly display name for the configuration. Avoid entering confidential information. */ displayName?: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Memory size in gigabytes with 1GB increment. * * Skip or set it's value to 0 if configuration is for a flexible shape. */ instanceMemorySizeInGbs?: pulumi.Input; /** * CPU core count. * * Skip or set it's value to 0 if configuration is for a flexible shape. */ instanceOcpuCount?: pulumi.Input; /** * Whether the configuration supports flexible shapes. */ isFlexible?: pulumi.Input; /** * A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in Failed state. */ lifecycleDetails?: pulumi.Input; /** * The name of the shape for the configuration. * * For multi-shape enabled configurations, it is set to PostgreSQL.X86 or similar. Please use compatibleShapes property to set the list of supported shapes. */ shape?: pulumi.Input; /** * The current state of the configuration. */ state?: pulumi.Input; /** * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The date and time that the configuration was created, expressed in [RFC 3339](https://tools.ietf.org/rfc/rfc3339) timestamp format. Example: `2016-08-25T21:10:29.600Z` */ timeCreated?: pulumi.Input; } /** * The set of arguments for constructing a Configuration resource. */ export interface ConfigurationArgs { /** * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that contains the configuration. */ compartmentId: pulumi.Input; /** * (Updatable) Indicates the collection of compatible shapes for this configuration. */ compatibleShapes?: pulumi.Input[] | undefined>; /** * Configuration overrides for a PostgreSQL instance. */ dbConfigurationOverrides: pulumi.Input; /** * Version of the PostgreSQL database. */ dbVersion: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"foo-namespace.bar-key": "value"}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Details about the configuration set. */ description?: pulumi.Input; /** * (Updatable) A user-friendly display name for the configuration. Avoid entering confidential information. */ displayName: pulumi.Input; /** * (Updatable) Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{"bar-key": "value"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Memory size in gigabytes with 1GB increment. * * Skip or set it's value to 0 if configuration is for a flexible shape. */ instanceMemorySizeInGbs?: pulumi.Input; /** * CPU core count. * * Skip or set it's value to 0 if configuration is for a flexible shape. */ instanceOcpuCount?: pulumi.Input; /** * Whether the configuration supports flexible shapes. */ isFlexible?: pulumi.Input; /** * The name of the shape for the configuration. * * For multi-shape enabled configurations, it is set to PostgreSQL.X86 or similar. Please use compatibleShapes property to set the list of supported shapes. */ shape?: pulumi.Input; /** * System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud.free-tier-retained": "true"}` * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ systemTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; } //# sourceMappingURL=configuration.d.ts.map