@pulumi/azure-native
Version:
[](https://slack.pulumi.com) [](https://npmjs.com/package/@pulumi/azure-native) [ • 7.01 MB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as enums from "../types/enums";
export declare namespace aad {
/**
* Configuration Diagnostics
*/
interface ConfigDiagnosticsArgs {
/**
* Last domain configuration diagnostics DateTime
*/
lastExecuted?: pulumi.Input<string>;
/**
* List of Configuration Diagnostics validator results.
*/
validatorResults?: pulumi.Input<pulumi.Input<inputs.aad.ConfigDiagnosticsValidatorResultArgs>[]>;
}
/**
* Config Diagnostics validator result data
*/
interface ConfigDiagnosticsValidatorResultArgs {
/**
* List of resource config validation issues.
*/
issues?: pulumi.Input<pulumi.Input<inputs.aad.ConfigDiagnosticsValidatorResultIssueArgs>[]>;
/**
* Replica set location and subnet name
*/
replicaSetSubnetDisplayName?: pulumi.Input<string>;
/**
* Status for individual validator after running diagnostics.
*/
status?: pulumi.Input<string | enums.aad.Status>;
/**
* Validator identifier
*/
validatorId?: pulumi.Input<string>;
}
/**
* configDiagnosticsValidatorResultArgsProvideDefaults sets the appropriate defaults for ConfigDiagnosticsValidatorResultArgs
*/
function configDiagnosticsValidatorResultArgsProvideDefaults(val: ConfigDiagnosticsValidatorResultArgs): ConfigDiagnosticsValidatorResultArgs;
/**
* Specific issue for a particular config diagnostics validator
*/
interface ConfigDiagnosticsValidatorResultIssueArgs {
/**
* List of domain resource property name or values used to compose a rich description.
*/
descriptionParams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Validation issue identifier.
*/
id?: pulumi.Input<string>;
}
/**
* Domain Security Settings
*/
interface DomainSecuritySettingsArgs {
/**
* A flag to determine whether or not ChannelBinding is enabled or disabled.
*/
channelBinding?: pulumi.Input<string | enums.aad.ChannelBinding>;
/**
* A flag to determine whether or not KerberosArmoring is enabled or disabled.
*/
kerberosArmoring?: pulumi.Input<string | enums.aad.KerberosArmoring>;
/**
* A flag to determine whether or not KerberosRc4Encryption is enabled or disabled.
*/
kerberosRc4Encryption?: pulumi.Input<string | enums.aad.KerberosRc4Encryption>;
/**
* A flag to determine whether or not LdapSigning is enabled or disabled.
*/
ldapSigning?: pulumi.Input<string | enums.aad.LdapSigning>;
/**
* A flag to determine whether or not NtlmV1 is enabled or disabled.
*/
ntlmV1?: pulumi.Input<string | enums.aad.NtlmV1>;
/**
* A flag to determine whether or not SyncKerberosPasswords is enabled or disabled.
*/
syncKerberosPasswords?: pulumi.Input<string | enums.aad.SyncKerberosPasswords>;
/**
* A flag to determine whether or not SyncNtlmPasswords is enabled or disabled.
*/
syncNtlmPasswords?: pulumi.Input<string | enums.aad.SyncNtlmPasswords>;
/**
* A flag to determine whether or not SyncOnPremPasswords is enabled or disabled.
*/
syncOnPremPasswords?: pulumi.Input<string | enums.aad.SyncOnPremPasswords>;
/**
* A flag to determine whether or not TlsV1 is enabled or disabled.
*/
tlsV1?: pulumi.Input<string | enums.aad.TlsV1>;
}
/**
* domainSecuritySettingsArgsProvideDefaults sets the appropriate defaults for DomainSecuritySettingsArgs
*/
function domainSecuritySettingsArgsProvideDefaults(val: DomainSecuritySettingsArgs): DomainSecuritySettingsArgs;
/**
* Forest Trust Setting
*/
interface ForestTrustArgs {
/**
* Friendly Name
*/
friendlyName?: pulumi.Input<string>;
/**
* Remote Dns ips
*/
remoteDnsIps?: pulumi.Input<string>;
/**
* Trust Direction
*/
trustDirection?: pulumi.Input<string>;
/**
* Trust Password
*/
trustPassword?: pulumi.Input<string>;
/**
* Trusted Domain FQDN
*/
trustedDomainFqdn?: pulumi.Input<string>;
}
/**
* Secure LDAP Settings
*/
interface LdapsSettingsArgs {
/**
* A flag to determine whether or not Secure LDAP access over the internet is enabled or disabled.
*/
externalAccess?: pulumi.Input<string | enums.aad.ExternalAccess>;
/**
* A flag to determine whether or not Secure LDAP is enabled or disabled.
*/
ldaps?: pulumi.Input<string | enums.aad.Ldaps>;
/**
* The certificate required to configure Secure LDAP. The parameter passed here should be a base64encoded representation of the certificate pfx file.
*/
pfxCertificate?: pulumi.Input<string>;
/**
* The password to decrypt the provided Secure LDAP certificate pfx file.
*/
pfxCertificatePassword?: pulumi.Input<string>;
}
/**
* ldapsSettingsArgsProvideDefaults sets the appropriate defaults for LdapsSettingsArgs
*/
function ldapsSettingsArgsProvideDefaults(val: LdapsSettingsArgs): LdapsSettingsArgs;
/**
* Settings for notification
*/
interface NotificationSettingsArgs {
/**
* The list of additional recipients
*/
additionalRecipients?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Should domain controller admins be notified
*/
notifyDcAdmins?: pulumi.Input<string | enums.aad.NotifyDcAdmins>;
/**
* Should global admins be notified
*/
notifyGlobalAdmins?: pulumi.Input<string | enums.aad.NotifyGlobalAdmins>;
}
/**
* Replica Set Definition
*/
interface ReplicaSetArgs {
/**
* Virtual network location
*/
location?: pulumi.Input<string>;
/**
* The name of the virtual network that Domain Services will be deployed on. The id of the subnet that Domain Services will be deployed on. /virtualNetwork/vnetName/subnets/subnetName.
*/
subnetId?: pulumi.Input<string>;
}
/**
* Settings for Resource Forest
*/
interface ResourceForestSettingsArgs {
/**
* Resource Forest
*/
resourceForest?: pulumi.Input<string>;
/**
* List of settings for Resource Forest
*/
settings?: pulumi.Input<pulumi.Input<inputs.aad.ForestTrustArgs>[]>;
}
}
export declare namespace aadiam {
/**
* Part of MultiTenantDiagnosticSettings. Specifies the settings for a particular log.
*/
interface LogSettingsArgs {
/**
* Name of a Diagnostic Log category for a resource type this setting is applied to. To obtain the list of Diagnostic Log categories for a resource, first perform a GET diagnostic settings operation.
*/
category?: pulumi.Input<string | enums.aadiam.Category>;
/**
* A value indicating whether this log is enabled.
*/
enabled: pulumi.Input<boolean>;
/**
* The retention policy for this log.
*/
retentionPolicy?: pulumi.Input<inputs.aadiam.RetentionPolicyArgs>;
}
/**
* Specifies the retention policy for the log.
*/
interface RetentionPolicyArgs {
/**
* The number of days for the retention in days. A value of 0 will retain the events indefinitely.
*/
days: pulumi.Input<number>;
/**
* A value indicating whether the retention policy is enabled.
*/
enabled: pulumi.Input<boolean>;
}
}
export declare namespace advisor {
}
export declare namespace agfoodplatform {
/**
* ApiKeyAuthCredentials class for ApiKey based Auth.
*/
interface ApiKeyAuthCredentialsArgs {
/**
* Properties of the key vault.
*/
apiKey: pulumi.Input<inputs.agfoodplatform.KeyVaultPropertiesArgs>;
/**
* Enum for different types of AuthCredentials supported.
* Expected value is 'ApiKeyAuthCredentials'.
*/
kind: pulumi.Input<"ApiKeyAuthCredentials">;
}
/**
* Api properties.
*/
interface ApiPropertiesArgs {
/**
* Interval in minutes for which the weather data for the api needs to be refreshed.
*/
apiFreshnessTimeInMinutes?: pulumi.Input<number>;
}
/**
* DataConnector Properties.
*/
interface DataConnectorPropertiesArgs {
/**
* AuthCredentials abstract base class for Auth Purpose.
*/
credentials: pulumi.Input<inputs.agfoodplatform.ApiKeyAuthCredentialsArgs | inputs.agfoodplatform.OAuthClientCredentialsArgs>;
}
/**
* Identity for the resource.
*/
interface IdentityArgs {
/**
* The identity type.
*/
type?: pulumi.Input<enums.agfoodplatform.ResourceIdentityType>;
}
/**
* Properties of the key vault.
*/
interface KeyVaultPropertiesArgs {
/**
* Name of Key Vault key.
*/
keyName: pulumi.Input<string>;
/**
* Uri of the key vault.
*/
keyVaultUri: pulumi.Input<string>;
/**
* Version of Key Vault key.
*/
keyVersion: pulumi.Input<string>;
}
/**
* OAuthClientCredentials for clientId clientSecret auth.
*/
interface OAuthClientCredentialsArgs {
/**
* ClientId associated with the provider.
*/
clientId: pulumi.Input<string>;
/**
* Properties of the key vault.
*/
clientSecret: pulumi.Input<inputs.agfoodplatform.KeyVaultPropertiesArgs>;
/**
* Enum for different types of AuthCredentials supported.
* Expected value is 'OAuthClientCredentials'.
*/
kind: pulumi.Input<"OAuthClientCredentials">;
}
/**
* A collection of information about the state of the connection between service consumer and provider.
*/
interface PrivateLinkServiceConnectionStateArgs {
/**
* A message indicating if changes on the service provider require any updates on the consumer.
*/
actionsRequired?: pulumi.Input<string>;
/**
* The reason for approval/rejection of the connection.
*/
description?: pulumi.Input<string>;
/**
* Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
*/
status?: pulumi.Input<string | enums.agfoodplatform.PrivateEndpointServiceConnectionStatus>;
}
/**
* Sensor integration request model.
*/
interface SensorIntegrationArgs {
/**
* Sensor integration enable state.
*/
enabled?: pulumi.Input<string>;
}
/**
* Solution resource properties.
*/
interface SolutionPropertiesArgs {
/**
* SaaS application Marketplace Publisher Id.
*/
marketplacePublisherId: pulumi.Input<string>;
/**
* SaaS application Offer Id.
*/
offerId: pulumi.Input<string>;
/**
* SaaS application Plan Id.
*/
planId: pulumi.Input<string>;
/**
* Role Assignment Id.
*/
roleAssignmentId?: pulumi.Input<string>;
/**
* SaaS subscriptionId of the installed SaaS application.
*/
saasSubscriptionId: pulumi.Input<string>;
/**
* SaaS subscription name of the installed SaaS application.
*/
saasSubscriptionName: pulumi.Input<string>;
/**
* SaaS application Term Id.
*/
termId: pulumi.Input<string>;
}
}
export declare namespace agricultureplatform {
/**
* Details of the Agriculture AgriDataManager.
*/
interface AgriServiceResourcePropertiesArgs {
/**
* Data connector credentials of AgriService instance.
*/
dataConnectorCredentials?: pulumi.Input<pulumi.Input<inputs.agricultureplatform.DataConnectorCredentialMapArgs>[]>;
/**
* AgriService installed solutions.
*/
installedSolutions?: pulumi.Input<pulumi.Input<inputs.agricultureplatform.InstalledSolutionMapArgs>[]>;
}
/**
* Mapping of data connector credentials.
*/
interface DataConnectorCredentialMapArgs {
/**
* The key representing the credential.
*/
key: pulumi.Input<string>;
/**
* The data connector credential value.
*/
value: pulumi.Input<inputs.agricultureplatform.DataConnectorCredentialsArgs>;
}
/**
* The properties related to an AgriService data connector.
*/
interface DataConnectorCredentialsArgs {
/**
* Client Id associated with the provider, if type of credentials is OAuthClientCredentials.
*/
clientId?: pulumi.Input<string>;
/**
* Name of the key vault key.
*/
keyName?: pulumi.Input<string>;
/**
* Uri of the key vault
*/
keyVaultUri?: pulumi.Input<string>;
/**
* Version of the key vault key.
*/
keyVersion?: pulumi.Input<string>;
/**
* Type of credential.
*/
kind?: pulumi.Input<string | enums.agricultureplatform.AuthCredentialsKind>;
}
/**
* Mapping of installed solutions.
*/
interface InstalledSolutionMapArgs {
/**
* The key representing the installed solution.
*/
key: pulumi.Input<string>;
/**
* The installed solution value.
*/
value: pulumi.Input<inputs.agricultureplatform.SolutionArgs>;
}
/**
* Managed service identity (system assigned and/or user assigned identities)
*/
interface ManagedServiceIdentityArgs {
/**
* Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
*/
type: pulumi.Input<string | enums.agricultureplatform.ManagedServiceIdentityType>;
/**
* The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
*/
userAssignedIdentities?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* The resource model definition representing SKU
*/
interface SkuArgs {
/**
* If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted.
*/
capacity?: pulumi.Input<number>;
/**
* If the service has different generations of hardware, for the same SKU, then that can be captured here.
*/
family?: pulumi.Input<string>;
/**
* The name of the SKU. E.g. P3. It is typically a letter+number code
*/
name: pulumi.Input<string>;
/**
* The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
*/
size?: pulumi.Input<string>;
/**
* This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.
*/
tier?: pulumi.Input<enums.agricultureplatform.SkuTier>;
}
/**
* Installed data manager for Agriculture solution detail.
*/
interface SolutionArgs {
/**
* Application name of the solution.
*/
applicationName?: pulumi.Input<string>;
/**
* Marketplace publisher Id.
*/
marketPlacePublisherId?: pulumi.Input<string>;
/**
* Partner Id.
*/
partnerId?: pulumi.Input<string>;
/**
* Plan Id.
*/
planId?: pulumi.Input<string>;
/**
* Saas subscription Id.
*/
saasSubscriptionId?: pulumi.Input<string>;
/**
* Saas subscription name.
*/
saasSubscriptionName?: pulumi.Input<string>;
}
}
export declare namespace alertsmanagement {
/**
* Action rule with action group configuration
*/
interface ActionGroupArgs {
/**
* Action group to trigger if action rule matches
*/
actionGroupId: pulumi.Input<string>;
/**
* conditions on which alerts will be filtered
*/
conditions?: pulumi.Input<inputs.alertsmanagement.ConditionsArgs>;
/**
* Description of action rule
*/
description?: pulumi.Input<string>;
/**
* scope on which action rule will apply
*/
scope?: pulumi.Input<inputs.alertsmanagement.ScopeArgs>;
/**
* Indicates if the given action rule is enabled or disabled
*/
status?: pulumi.Input<string | enums.alertsmanagement.ActionRuleStatus>;
/**
* Indicates type of action rule
* Expected value is 'ActionGroup'.
*/
type: pulumi.Input<"ActionGroup">;
}
/**
* The Action Groups information, used by the alert rule.
*/
interface ActionGroupsInformationArgs {
/**
* An optional custom email subject to use in email notifications.
*/
customEmailSubject?: pulumi.Input<string>;
/**
* An optional custom web-hook payload to use in web-hook notifications.
*/
customWebhookPayload?: pulumi.Input<string>;
/**
* The Action Group resource IDs.
*/
groupIds: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* Add action groups to alert processing rule.
*/
interface AddActionGroupsArgs {
/**
* List of action group Ids to add to alert processing rule.
*/
actionGroupIds: pulumi.Input<pulumi.Input<string>[]>;
/**
* Action that should be applied.
* Expected value is 'AddActionGroups'.
*/
actionType: pulumi.Input<"AddActionGroups">;
}
/**
* Alert processing rule properties defining scopes, conditions and scheduling logic for alert processing rule.
*/
interface AlertProcessingRulePropertiesArgs {
/**
* Actions to be applied.
*/
actions: pulumi.Input<pulumi.Input<inputs.alertsmanagement.AddActionGroupsArgs | inputs.alertsmanagement.RemoveAllActionGroupsArgs>[]>;
/**
* Conditions on which alerts will be filtered.
*/
conditions?: pulumi.Input<pulumi.Input<inputs.alertsmanagement.ConditionArgs>[]>;
/**
* Description of alert processing rule.
*/
description?: pulumi.Input<string>;
/**
* Indicates if the given alert processing rule is enabled or disabled.
*/
enabled?: pulumi.Input<boolean>;
/**
* Scheduling for alert processing rule.
*/
schedule?: pulumi.Input<inputs.alertsmanagement.ScheduleArgs>;
/**
* Scopes on which alert processing rule will apply.
*/
scopes: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* alertProcessingRulePropertiesArgsProvideDefaults sets the appropriate defaults for AlertProcessingRulePropertiesArgs
*/
function alertProcessingRulePropertiesArgsProvideDefaults(val: AlertProcessingRulePropertiesArgs): AlertProcessingRulePropertiesArgs;
/**
* Condition to trigger an alert processing rule.
*/
interface ConditionArgs {
/**
* Field for a given condition.
*/
field?: pulumi.Input<string | enums.alertsmanagement.Field>;
/**
* Operator for a given condition.
*/
operator?: pulumi.Input<string | enums.alertsmanagement.Operator>;
/**
* List of values to match for a given condition.
*/
values?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* Conditions in alert instance to be matched for a given action rule. Default value is all. Multiple values could be provided with comma separation.
*/
interface ConditionsArgs {
/**
* filter alerts by alert context (payload)
*/
alertContext?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by alert rule id
*/
alertRuleId?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by alert rule name
*/
alertRuleName?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by alert rule description
*/
description?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by monitor condition
*/
monitorCondition?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by monitor service
*/
monitorService?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by severity
*/
severity?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
/**
* filter alerts by target resource type
*/
targetResourceType?: pulumi.Input<inputs.alertsmanagement.ConditionArgs>;
}
/**
* Daily recurrence object.
*/
interface DailyRecurrenceArgs {
/**
* End time for recurrence.
*/
endTime: pulumi.Input<string>;
/**
* Specifies when the recurrence should be applied.
* Expected value is 'Daily'.
*/
recurrenceType: pulumi.Input<"Daily">;
/**
* Start time for recurrence.
*/
startTime: pulumi.Input<string>;
}
/**
* The detector information. By default this is not populated, unless it's specified in expandDetector
*/
interface DetectorArgs {
/**
* The detector id.
*/
id: pulumi.Input<string>;
/**
* The detector's parameters.'
*/
parameters?: pulumi.Input<{
[key: string]: any;
}>;
}
/**
* Action rule with diagnostics configuration
*/
interface DiagnosticsArgs {
/**
* conditions on which alerts will be filtered
*/
conditions?: pulumi.Input<inputs.alertsmanagement.ConditionsArgs>;
/**
* Description of action rule
*/
description?: pulumi.Input<string>;
/**
* scope on which action rule will apply
*/
scope?: pulumi.Input<inputs.alertsmanagement.ScopeArgs>;
/**
* Indicates if the given action rule is enabled or disabled
*/
status?: pulumi.Input<string | enums.alertsmanagement.ActionRuleStatus>;
/**
* Indicates type of action rule
* Expected value is 'Diagnostics'.
*/
type: pulumi.Input<"Diagnostics">;
}
/**
* The issue properties
*/
interface IssuePropertiesArgs {
/**
* The issue impact time (in UTC)
*/
impactTime: pulumi.Input<string>;
/**
* The issue severity
*/
severity: pulumi.Input<string>;
/**
* The issue status
*/
status: pulumi.Input<string | enums.alertsmanagement.Status>;
/**
* The issue title
*/
title: pulumi.Input<string>;
}
/**
* Monthly recurrence object.
*/
interface MonthlyRecurrenceArgs {
/**
* Specifies the values for monthly recurrence pattern.
*/
daysOfMonth: pulumi.Input<pulumi.Input<number>[]>;
/**
* End time for recurrence.
*/
endTime?: pulumi.Input<string>;
/**
* Specifies when the recurrence should be applied.
* Expected value is 'Monthly'.
*/
recurrenceType: pulumi.Input<"Monthly">;
/**
* Start time for recurrence.
*/
startTime?: pulumi.Input<string>;
}
/**
* An Azure Prometheus alerting or recording rule.
*/
interface PrometheusRuleArgs {
/**
* Actions that are performed when the alert rule becomes active, and when an alert condition is resolved.
*/
actions?: pulumi.Input<pulumi.Input<inputs.alertsmanagement.PrometheusRuleGroupActionArgs>[]>;
/**
* Alert rule name.
*/
alert?: pulumi.Input<string>;
/**
* The annotations clause specifies a set of informational labels that can be used to store longer additional information such as alert descriptions or runbook links. The annotation values can be templated.
*/
annotations?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Enable/disable rule.
*/
enabled?: pulumi.Input<boolean>;
/**
* The PromQL expression to evaluate. https://prometheus.io/docs/prometheus/latest/querying/basics/. Evaluated periodically as given by 'interval', and the result recorded as a new set of time series with the metric name as given by 'record'.
*/
expression: pulumi.Input<string>;
/**
* The amount of time alert must be active before firing.
*/
for?: pulumi.Input<string>;
/**
* Labels to add or overwrite before storing the result.
*/
labels?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Recorded metrics name.
*/
record?: pulumi.Input<string>;
/**
* Defines the configuration for resolving fired alerts. Only relevant for alerts.
*/
resolveConfiguration?: pulumi.Input<inputs.alertsmanagement.PrometheusRuleResolveConfigurationArgs>;
/**
* The severity of the alerts fired by the rule. Must be between 0 and 4.
*/
severity?: pulumi.Input<number>;
}
/**
* An alert action. Only relevant for alerts.
*/
interface PrometheusRuleGroupActionArgs {
/**
* The resource id of the action group to use.
*/
actionGroupId?: pulumi.Input<string>;
/**
* The properties of an action group object.
*/
actionProperties?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}
/**
* Specifies the Prometheus alert rule configuration.
*/
interface PrometheusRuleResolveConfigurationArgs {
/**
* Enable alert auto-resolution.
*/
autoResolved?: pulumi.Input<boolean>;
/**
* Alert auto-resolution timeout.
*/
timeToResolve?: pulumi.Input<string>;
}
/**
* Indicates if all action groups should be removed.
*/
interface RemoveAllActionGroupsArgs {
/**
* Action that should be applied.
* Expected value is 'RemoveAllActionGroups'.
*/
actionType: pulumi.Input<"RemoveAllActionGroups">;
}
/**
* Scheduling configuration for a given alert processing rule.
*/
interface ScheduleArgs {
/**
* Scheduling effective from time. Date-Time in ISO-8601 format without timezone suffix.
*/
effectiveFrom?: pulumi.Input<string>;
/**
* Scheduling effective until time. Date-Time in ISO-8601 format without timezone suffix.
*/
effectiveUntil?: pulumi.Input<string>;
/**
* List of recurrences.
*/
recurrences?: pulumi.Input<pulumi.Input<inputs.alertsmanagement.DailyRecurrenceArgs | inputs.alertsmanagement.MonthlyRecurrenceArgs | inputs.alertsmanagement.WeeklyRecurrenceArgs>[]>;
/**
* Scheduling time zone.
*/
timeZone?: pulumi.Input<string>;
}
/**
* Target scope for a given action rule. By default scope will be the subscription. User can also provide list of resource groups or list of resources from the scope subscription as well.
*/
interface ScopeArgs {
/**
* type of target scope
*/
scopeType?: pulumi.Input<string | enums.alertsmanagement.ScopeType>;
/**
* list of ARM IDs of the given scope type which will be the target of the given action rule.
*/
values?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* Action rule with suppression configuration
*/
interface SuppressionArgs {
/**
* conditions on which alerts will be filtered
*/
conditions?: pulumi.Input<inputs.alertsmanagement.ConditionsArgs>;
/**
* Description of action rule
*/
description?: pulumi.Input<string>;
/**
* scope on which action rule will apply
*/
scope?: pulumi.Input<inputs.alertsmanagement.ScopeArgs>;
/**
* Indicates if the given action rule is enabled or disabled
*/
status?: pulumi.Input<string | enums.alertsmanagement.ActionRuleStatus>;
/**
* suppression configuration for the action rule
*/
suppressionConfig: pulumi.Input<inputs.alertsmanagement.SuppressionConfigArgs>;
/**
* Indicates type of action rule
* Expected value is 'Suppression'.
*/
type: pulumi.Input<"Suppression">;
}
/**
* Suppression logic for a given action rule
*/
interface SuppressionConfigArgs {
/**
* Specifies when the suppression should be applied
*/
recurrenceType: pulumi.Input<string | enums.alertsmanagement.SuppressionType>;
/**
* suppression schedule configuration
*/
schedule?: pulumi.Input<inputs.alertsmanagement.SuppressionScheduleArgs>;
}
/**
* Schedule for a given suppression configuration.
*/
interface SuppressionScheduleArgs {
/**
* End date for suppression
*/
endDate?: pulumi.Input<string>;
/**
* End date for suppression
*/
endTime?: pulumi.Input<string>;
/**
* Specifies the values for recurrence pattern
*/
recurrenceValues?: pulumi.Input<pulumi.Input<number>[]>;
/**
* Start date for suppression
*/
startDate?: pulumi.Input<string>;
/**
* Start time for suppression
*/
startTime?: pulumi.Input<string>;
}
/**
* Optional throttling information for the alert rule.
*/
interface ThrottlingInformationArgs {
/**
* The required duration (in ISO8601 format) to wait before notifying on the alert rule again. The time granularity must be in minutes and minimum value is 0 minutes
*/
duration?: pulumi.Input<string>;
}
/**
* Weekly recurrence object.
*/
interface WeeklyRecurrenceArgs {
/**
* Specifies the values for weekly recurrence pattern.
*/
daysOfWeek: pulumi.Input<pulumi.Input<string | enums.alertsmanagement.DaysOfWeek>[]>;
/**
* End time for recurrence.
*/
endTime?: pulumi.Input<string>;
/**
* Specifies when the recurrence should be applied.
* Expected value is 'Weekly'.
*/
recurrenceType: pulumi.Input<"Weekly">;
/**
* Start time for recurrence.
*/
startTime?: pulumi.Input<string>;
}
}
export declare namespace analysisservices {
/**
* The gateway details.
*/
interface GatewayDetailsArgs {
/**
* Gateway resource to be associated with the server.
*/
gatewayResourceId?: pulumi.Input<string>;
}
/**
* The detail of firewall rule.
*/
interface IPv4FirewallRuleArgs {
/**
* The rule name.
*/
firewallRuleName?: pulumi.Input<string>;
/**
* The end range of IPv4.
*/
rangeEnd?: pulumi.Input<string>;
/**
* The start range of IPv4.
*/
rangeStart?: pulumi.Input<string>;
}
/**
* An array of firewall rules.
*/
interface IPv4FirewallSettingsArgs {
/**
* The indicator of enabling PBI service.
*/
enablePowerBIService?: pulumi.Input<boolean>;
/**
* An array of firewall rules.
*/
firewallRules?: pulumi.Input<pulumi.Input<inputs.analysisservices.IPv4FirewallRuleArgs>[]>;
}
/**
* Represents the SKU name and Azure pricing tier for Analysis Services resource.
*/
interface ResourceSkuArgs {
/**
* The number of instances in the read only query pool.
*/
capacity?: pulumi.Input<number>;
/**
* Name of the SKU level.
*/
name: pulumi.Input<string>;
/**
* The name of the Azure pricing tier to which the SKU applies.
*/
tier?: pulumi.Input<string | enums.analysisservices.SkuTier>;
}
/**
* resourceSkuArgsProvideDefaults sets the appropriate defaults for ResourceSkuArgs
*/
function resourceSkuArgsProvideDefaults(val: ResourceSkuArgs): ResourceSkuArgs;
/**
* An array of administrator user identities.
*/
interface ServerAdministratorsArgs {
/**
* An array of administrator user identities.
*/
members?: pulumi.Input<pulumi.Input<string>[]>;
}
}
export declare namespace apicenter {
/**
* API source configuration for Azure API Management.
*/
interface AzureApiManagementSourceArgs {
/**
* The resource ID of the managed identity that has access to the API Management instance.
*/
msiResourceId?: pulumi.Input<string>;
/**
* API Management service resource ID.
*/
resourceId: pulumi.Input<string>;
}
/**
* Contact information
*/
interface ContactArgs {
/**
* Email address of the contact.
*/
email?: pulumi.Input<string>;
/**
* Name of the contact.
*/
name?: pulumi.Input<string>;
/**
* URL for the contact.
*/
url?: pulumi.Input<string>;
}
/**
* Server
*/
interface DeploymentServerArgs {
/**
* Base runtime URLs for this deployment.
*/
runtimeUri?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* Server information of the environment.
*/
interface EnvironmentServerArgs {
/**
* The location of the management portal
*/
managementPortalUri?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Type of the server that represents the environment.
*/
type?: pulumi.Input<string | enums.apicenter.EnvironmentServerType>;
}
/**
* Additional, external documentation for the API.
*/
interface ExternalDocumentationArgs {
/**
* Description of the documentation.
*/
description?: pulumi.Input<string>;
/**
* Title of the documentation.
*/
title?: pulumi.Input<string>;
/**
* URL pointing to the documentation.
*/
url: pulumi.Input<string>;
}
/**
* The license information for the API.
*/
interface LicenseArgs {
/**
* SPDX license information for the API. The identifier field is mutually
* exclusive of the URL field.
*/
identifier?: pulumi.Input<string>;
/**
* Name of the license.
*/
name?: pulumi.Input<string>;
/**
* URL pointing to the license details. The URL field is mutually exclusive of the
* identifier field.
*/
url?: pulumi.Input<string>;
}
/**
* Managed service identity (system assigned and/or user assigned identities)
*/
interface ManagedServiceIdentityArgs {
/**
* Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).
*/
type: pulumi.Input<string | enums.apicenter.ManagedServiceIdentityType>;
/**
* The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests.
*/
userAssignedIdentities?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* Assignment metadata
*/
interface MetadataAssignmentArgs {
/**
* Deprecated assignment
*/
deprecated?: pulumi.Input<boolean>;
/**
* The entities this metadata schema component gets applied to.
*/
entity?: pulumi.Input<string | enums.apicenter.MetadataAssignmentEntity>;
/**
* Required assignment
*/
required?: pulumi.Input<boolean>;
}
/**
* Onboarding information
*/
interface OnboardingArgs {
/**
* The location of the development portal
*/
developerPortalUri?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Onboarding guide.
*/
instructions?: pulumi.Input<string>;
}
/**
* Terms of service for the API.
*/
interface TermsOfServiceArgs {
/**
* URL pointing to the terms of service.
*/
url: pulumi.Input<string>;
}
}
export declare namespace apimanagement {
/**
* Description of an additional API Management resource location.
*/
interface AdditionalLocationArgs {
/**
* Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location.
*/
disableGateway?: pulumi.Input<boolean>;
/**
* The location name of the additional region among Azure Data center regions.
*/
location: pulumi.Input<string>;
/**
* Property can be used to enable NAT Gateway for this API Management service.
*/
natGatewayState?: pulumi.Input<string | enums.apimanagement.NatGatewayState>;
/**
* Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the location. Supported only for Premium SKU being deployed in Virtual Network.
*/
publicIpAddressId?: pulumi.Input<string>;
/**
* SKU properties of the API Management service.
*/
sku: pulumi.Input<inputs.apimanagement.ApiManagementServiceSkuPropertiesArgs>;
/**
* Virtual network configuration for the location.
*/
virtualNetworkConfiguration?: pulumi.Input<inputs.apimanagement.VirtualNetworkConfigurationArgs>;
/**
* A list of availability zones denoting where the resource needs to come from.
*/
zones?: pulumi.Input<pulumi.Input<string>[]>;
}
/**
* additionalLocationArgsProvideDefaults sets the appropriate defaults for AdditionalLocationArgs
*/
function additionalLocationArgsProvideDefaults(val: AdditionalLocationArgs): AdditionalLocationArgs;
/**
* API contact information
*/
interface ApiContactInformationArgs {
/**
* The email address of the contact person/organization. MUST be in the format of an email address
*/
email?: pulumi.Input<string>;
/**
* The identifying name of the contact person/organization
*/
name?: pulumi.Input<string>;
/**
* The URL pointing to the contact information. MUST be in the format of a URL
*/
url?: pulumi.Input<string>;
}
/**
* Criteria to limit import of WSDL to a subset of the document.
*/
interface ApiCreateOrUpdatePropertiesWsdlSelectorArgs {
/**
* Name of endpoint(port) to import from WSDL
*/
wsdlEndpointName?: pulumi.Input<string>;
/**
* Name of service to import from WSDL
*/
wsdlServiceName?: pulumi.Input<string>;
}
/**
* API license information
*/
interface ApiLicenseInformationArgs {
/**
* The license name used for the API
*/
name?: pulumi.Input<string>;
/**
* A URL to the license used for the API. MUST be in the format of a URL
*/
url?: pulumi.Input<string>;
}
/**
* API Management gateway resource SKU properties.
*/
interface ApiManagementGatewaySkuPropertiesArgs {
/**
* Capacity of the SKU (number of deployed units of the SKU)
*/
capacity?: pulumi.Input<number>;
/**
* Name of the Sku.
*/
name: pulumi.Input<string | enums.apimanagement.ApiGatewaySkuType>;
}
/**
* Identity properties of the Api Management service resource.
*/
interface ApiManagementServiceIdentityArgs {
/**
* The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.
*/
type: pulumi.Input<string | enums.apimanagement.ApimIdentityType>;
/**
* The list of user identities associated with the resource. The user identity
* dictionary key references will be ARM resource ids in the form:
* '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/
* providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
*/
userAssignedIdentities?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.apimanagement.UserIdentityPropertiesArgs>;
}>;
}
/**
* API Management service resource SKU properties.
*/
interface ApiManagementServiceSkuPropertiesArgs {
/**
* Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0.
*/
capacity: pulumi.Input<number>;
/**
* Name of the Sku.
*/
name: pulumi.Input<string | enums.apimanagement.SkuType>;
}
/**
* Control Plane Apis version constraint for the API Management service.
*/
interface ApiVersionConstraintArgs {
/**
* Limit control plane API calls to API Management service with version equal to or newer than this value.
*/
minApiVersion?: pulumi.Input<string>;
}
/**
* An API Version Set contains the common configuration for a set of API Versions relating
*/
interface ApiVersionSetContractDetailsArgs {
/**
* Description of API Version Set.
*/
description?: pulumi.Input<string>;
/**
* Identifier for existing API Version Set. Omit this value to create a new Version Set.
*/
id?: pulumi.Input<string>;
/**
* The display Name of the API Version Set.
*/
name?: pulumi.Input<string>;
/**
* Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`.
*/
versionHeaderName?: pulumi.Input<string>;
/**
* Name of query parameter that indicates the API Version if versioningScheme is set to `query`.
*/
versionQueryName?: pulumi.Input<string>;
/**
* An value that determines where the API Version identifier will be located in a HTTP request.
*/
versioningScheme?: pulumi.Input<string | enums.apimanagement.VersioningScheme>;
}
/**
* API Authentication Settings.
*/
interface AuthenticationSettingsContractArgs {
/**
* OAuth2 Authentication settings
*/
oAuth2?: pulumi.Input<inputs.apimanagement.OAuth2AuthenticationSettingsContractArgs>;
/**
* Collection of OAuth2 authentication settings included into this API.
*/
oAuth2AuthenticationSettings?: pulumi.Input<pulumi.Input<inputs.apimanagement.OAuth2AuthenticationSettingsContractArgs>[]>;
/**
* OpenID Connect Authentication Settings
*/
openid?: pulumi.Input<inputs.apimanagement.OpenIdAuthenticationSettingsContractArgs>;
/**
* Collection of Open ID Connect authentication settings included into this API.
*/
openidAuthenticationSettings?: pulumi.Input<pulumi.Input<inputs.apimanagement.OpenIdAuthenticationSettingsContractArgs>[]>;
}
/**
* Authorization error details.
*/
interface AuthorizationErrorArgs {
/**
* Error code
*/
code?: pulumi.Input<string>;
/**
* Error message
*/
message?: pulumi.Input<string>;
}
/**
* Authorization Provider oauth2 grant types settings
*/
interface AuthorizationProviderOAuth2GrantTypesArgs {
/**
* OAuth2 authorization code grant parameters
*/
authorizationCode?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* OAuth2 client credential grant parameters
*/
clientCredentials?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}
/**
* OAuth2 settings details
*/
interface AuthorizationProviderOAuth2SettingsArgs {
/**
* OAuth2 settings
*/
grantTypes?: pulumi.Input<inputs.apimanagement.AuthorizationProviderOAuth2GrantTypesArgs>;
/**
* Redirect URL to be set in the OAuth application.
*/
redirectUrl?: pulumi.Input<string>;
}
/**
* Authorization header information.
*/
interface BackendAuthorizationHeaderCredentialsArgs {
/**
* Authentication Parameter value.
*/
parameter: pulumi.Input<string>;
/**
* Authentication Scheme name.
*/
scheme: pulumi.Input<string>;
}
interface BackendBaseParametersPoolArgs {
/**
* The list of backend entities belonging to a pool.
*/
services?: pulumi.Input<pulumi.Input<inputs.apimanagement.BackendPoolItemArgs>[]>;
}
/**
* The configuration of the backend circuit breaker
*/
interface BackendCircuitBreakerArgs {
/**
* The rules for tripping the backend.
*/
rules?: pulumi.Input<pulumi.Input<inputs.apimanagement.CircuitBreakerRuleArgs>[]>;
}
/**
* Information regarding how the gateway should integrate with backend systems.
*/
interface BackendConfigurationArgs {
/**
* The default hostname of the data-plane gateway to which requests can be sent.
*/
subnet?: pulumi.Input<inputs.apimanagement.BackendSubnetConfigurationArgs>;
}
/**
* Details of the Credentials used to connect to Backend.
*/
interface BackendCredentialsContractArgs {
/**
* Authorization header authentication
*/
authorization?: pulumi.Input<inputs.apimanagement.BackendAuthorizationHeaderCredentialsArgs>;
/**
* List of Client Certificate Thumbprints. Will be ignored if certificatesIds are provided.
*/
certificate?: pulumi.Input<pulumi.Input<string>[]>;
/**
* List of Client Certificate Ids.
*/
certificateIds?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Header Parameter description.
*/
header?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<string>[]>;
}>;
/**
* Query Parameter description.
*/
query?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<string>[]>;
}>;
}
/**
* Backend pool service information
*/
interface BackendPoolItemArgs {
/**
* The unique ARM id of the backend entity. The ARM id should refer to an already existing backend entity.
*/
id: pulumi.Input<string>;
/**
* The priority of the backend entity in the backend pool. Must be between 0 and 100. It can be also null if the value not specified.
*/
priority?: pulumi.Input<number>;
/**
* The weight of the backend entity in the backend pool. Must be between 0 and 100. It can be also null if the value not specified.
*/
weight?: pulumi.Input<number>;
}
/**
* Properties specific to the Backend Type.