From 5dc11871838040eba8021bb9b72d1b3097d8d2fb Mon Sep 17 00:00:00 2001 From: Adrian Riobo Date: Wed, 2 Oct 2024 11:33:57 +0200 Subject: [PATCH] feat: added aks option for enable app routing. Fix #288. Signed-off-by: Adrian Riobo --- cmd/mapt/cmd/azure/services/aks.go | 16 +- docs/azure/aks.md | 2 + go.mod | 17 +- go.sum | 34 +- oci/Containerfile | 4 +- pkg/provider/azure/action/aks/aks.go | 61 +- .../getAccessReviewHistoryDefinitionById.go | 18 +- .../getAccessReviewScheduleDefinitionById.go | 18 +- .../authorization/v2/getClientConfig.go | 18 +- .../authorization/v2/getClientToken.go | 18 +- .../getManagementLockAtResourceGroupLevel.go | 18 +- .../v2/getManagementLockAtResourceLevel.go | 18 +- .../getManagementLockAtSubscriptionLevel.go | 18 +- .../v2/getManagementLockByScope.go | 18 +- .../authorization/v2/getPolicyAssignment.go | 18 +- .../authorization/v2/getPolicyDefinition.go | 18 +- .../getPolicyDefinitionAtManagementGroup.go | 18 +- .../v2/getPolicyDefinitionVersion.go | 18 +- ...olicyDefinitionVersionAtManagementGroup.go | 18 +- .../authorization/v2/getPolicyExemption.go | 18 +- .../v2/getPolicySetDefinition.go | 18 +- ...getPolicySetDefinitionAtManagementGroup.go | 18 +- .../v2/getPolicySetDefinitionVersion.go | 18 +- ...cySetDefinitionVersionAtManagementGroup.go | 18 +- .../v2/getPrivateLinkAssociation.go | 18 +- .../v2/getResourceManagementPrivateLink.go | 18 +- .../authorization/v2/getRoleAssignment.go | 18 +- .../authorization/v2/getRoleDefinition.go | 18 +- .../v2/getRoleManagementPolicyAssignment.go | 18 +- ...tScopeAccessReviewHistoryDefinitionById.go | 18 +- ...ScopeAccessReviewScheduleDefinitionById.go | 18 +- .../authorization/v2/getVariable.go | 18 +- .../v2/getVariableAtManagementGroup.go | 18 +- .../authorization/v2/getVariableValue.go | 18 +- .../v2/getVariableValueAtManagementGroup.go | 18 +- .../v2/listPolicyDefinitionVersionAll.go | 18 +- ...cyDefinitionVersionAllAtManagementGroup.go | 18 +- .../listPolicyDefinitionVersionAllBuiltins.go | 18 +- .../v2/listPolicySetDefinitionVersionAll.go | 18 +- ...etDefinitionVersionAllAtManagementGroup.go | 18 +- ...stPolicySetDefinitionVersionAllBuiltins.go | 18 +- .../authorization/v2/pulumi-plugin.json | 2 +- .../compute/v2/availabilitySet.go | 5 +- .../compute/v2/capacityReservation.go | 5 +- .../compute/v2/capacityReservationGroup.go | 5 +- .../compute/v2/dedicatedHost.go | 5 +- .../compute/v2/dedicatedHostGroup.go | 5 +- .../compute/v2/disk.go | 5 +- .../compute/v2/diskAccess.go | 5 +- .../diskAccessAPrivateEndpointConnection.go | 5 +- .../compute/v2/diskEncryptionSet.go | 5 +- .../compute/v2/getAvailabilitySet.go | 20 +- .../compute/v2/getCapacityReservation.go | 20 +- .../compute/v2/getCapacityReservationGroup.go | 20 +- .../compute/v2/getCloudService.go | 18 +- .../compute/v2/getDedicatedHost.go | 20 +- .../compute/v2/getDedicatedHostGroup.go | 20 +- .../compute/v2/getDisk.go | 20 +- .../compute/v2/getDiskAccess.go | 20 +- ...getDiskAccessAPrivateEndpointConnection.go | 20 +- .../compute/v2/getDiskEncryptionSet.go | 20 +- .../compute/v2/getGallery.go | 18 +- .../compute/v2/getGalleryApplication.go | 18 +- .../v2/getGalleryApplicationVersion.go | 18 +- .../compute/v2/getGalleryImage.go | 18 +- .../compute/v2/getGalleryImageVersion.go | 18 +- .../compute/v2/getImage.go | 20 +- ...tLogAnalyticExportRequestRateByInterval.go | 20 +- .../getLogAnalyticExportThrottledRequests.go | 20 +- .../compute/v2/getProximityPlacementGroup.go | 20 +- .../compute/v2/getRestorePoint.go | 20 +- .../compute/v2/getRestorePointCollection.go | 20 +- .../compute/v2/getSnapshot.go | 20 +- .../compute/v2/getSshPublicKey.go | 20 +- .../compute/v2/getVirtualMachine.go | 20 +- .../compute/v2/getVirtualMachineExtension.go | 20 +- ...irtualMachineRunCommandByVirtualMachine.go | 20 +- .../compute/v2/getVirtualMachineScaleSet.go | 20 +- .../v2/getVirtualMachineScaleSetExtension.go | 20 +- .../compute/v2/getVirtualMachineScaleSetVM.go | 20 +- .../getVirtualMachineScaleSetVMExtension.go | 20 +- .../getVirtualMachineScaleSetVMRunCommand.go | 20 +- .../compute/v2/image.go | 5 +- .../compute/v2/proximityPlacementGroup.go | 5 +- .../compute/v2/pulumi-plugin.json | 2 +- .../compute/v2/pulumiTypes.go | 26 +- .../compute/v2/restorePoint.go | 5 +- .../compute/v2/restorePointCollection.go | 5 +- .../compute/v2/snapshot.go | 5 +- .../compute/v2/sshPublicKey.go | 5 +- .../compute/v2/virtualMachine.go | 5 +- .../compute/v2/virtualMachineExtension.go | 5 +- ...irtualMachineRunCommandByVirtualMachine.go | 5 +- .../compute/v2/virtualMachineScaleSet.go | 5 +- .../v2/virtualMachineScaleSetExtension.go | 5 +- .../compute/v2/virtualMachineScaleSetVM.go | 5 +- .../v2/virtualMachineScaleSetVMExtension.go | 5 +- .../v2/virtualMachineScaleSetVMRunCommand.go | 5 +- .../containerservice/v2/fleet.go | 218 - .../containerservice/v2/fleetMember.go | 217 - .../v2/fleetUpdateStrategy.go | 191 - .../containerservice/v2/getFleet.go | 143 - .../containerservice/v2/getFleetMember.go | 140 - .../v2/getFleetUpdateStrategy.go | 133 - .../containerservice/v2/getLoadBalancer.go | 154 - .../v2/getManagedClusterSnapshot.go | 145 - .../v2/getOpenShiftManagedCluster.go | 225 - .../containerservice/v2/getUpdateRun.go | 151 - .../v2/listFleetCredentials.go | 87 - .../v2/listManagedClusterAccessProfile.go | 126 - .../containerservice/v2/loadBalancer.go | 232 - .../v2/managedClusterSnapshot.go | 278 - .../v2/openShiftManagedCluster.go | 312 - .../containerservice/v2/pulumi-plugin.json | 5 - .../containerservice/v2/updateRun.go | 223 - .../v2/{ => v20240801}/agentPool.go | 65 +- .../v2/{ => v20240801}/getAgentPool.go | 53 +- .../getMaintenanceConfiguration.go | 45 +- .../v2/{ => v20240801}/getManagedCluster.go | 66 +- .../getPrivateEndpointConnection.go | 25 +- .../v2/{ => v20240801}/getSnapshot.go | 29 +- .../getTrustedAccessRoleBinding.go | 29 +- .../v2/{ => v20240801}/init.go | 30 +- .../listManagedClusterAdminCredentials.go | 25 +- ...ManagedClusterMonitoringUserCredentials.go | 25 +- .../listManagedClusterUserCredentials.go | 25 +- .../maintenanceConfiguration.go | 35 +- .../v2/{ => v20240801}/managedCluster.go | 79 +- .../privateEndpointConnection.go | 21 +- .../v2/{ => v20240801}/pulumiEnums.go | 1852 +- .../v2/{ => v20240801}/pulumiTypes.go | 26835 +++++++++------- .../v2/{ => v20240801}/snapshot.go | 21 +- .../trustedAccessRoleBinding.go | 21 +- .../network/v2/adminRule.go | 11 +- .../network/v2/adminRuleCollection.go | 11 +- .../network/v2/applicationGateway.go | 8 +- ...icationGatewayPrivateEndpointConnection.go | 8 +- .../network/v2/applicationSecurityGroup.go | 8 +- .../network/v2/azureFirewall.go | 8 +- .../network/v2/bastionHost.go | 8 +- .../network/v2/configurationPolicyGroup.go | 8 +- .../network/v2/connectionMonitor.go | 8 +- .../network/v2/connectivityConfiguration.go | 8 +- .../network/v2/customIPPrefix.go | 8 +- .../network/v2/ddosCustomPolicy.go | 8 +- .../network/v2/ddosProtectionPlan.go | 8 +- .../network/v2/defaultAdminRule.go | 9 + .../network/v2/defaultUserRule.go | 3 + .../network/v2/dnsForwardingRuleset.go | 5 +- .../network/v2/dnsResolver.go | 5 + .../network/v2/dnsResolverDomainList.go | 202 + .../network/v2/dnsResolverPolicy.go | 188 + .../v2/dnsResolverPolicyVirtualNetworkLink.go | 202 + .../network/v2/dnsSecurityRule.go | 241 + .../network/v2/dscpConfiguration.go | 8 +- .../network/v2/expressRouteCircuit.go | 8 +- .../v2/expressRouteCircuitAuthorization.go | 8 +- .../v2/expressRouteCircuitConnection.go | 8 +- .../network/v2/expressRouteCircuitPeering.go | 8 +- .../network/v2/expressRouteConnection.go | 8 +- .../v2/expressRouteCrossConnectionPeering.go | 8 +- .../network/v2/expressRouteGateway.go | 8 +- .../network/v2/expressRoutePort.go | 8 +- .../v2/expressRoutePortAuthorization.go | 8 +- .../network/v2/firewallPolicy.go | 8 +- .../network/v2/firewallPolicyDraft.go | 8 + .../v2/firewallPolicyRuleCollectionGroup.go | 8 +- .../firewallPolicyRuleCollectionGroupDraft.go | 8 + .../network/v2/flowLog.go | 8 +- .../network/v2/forwardingRule.go | 5 + .../network/v2/frontDoor.go | 4 +- .../network/v2/getActiveSessions.go | 20 +- .../network/v2/getAdminRule.go | 20 +- .../network/v2/getAdminRuleCollection.go | 20 +- .../network/v2/getApplicationGateway.go | 20 +- ...ApplicationGatewayBackendHealthOnDemand.go | 20 +- ...icationGatewayPrivateEndpointConnection.go | 20 +- .../network/v2/getApplicationSecurityGroup.go | 20 +- .../network/v2/getAzureFirewall.go | 20 +- .../network/v2/getBastionHost.go | 20 +- .../network/v2/getBastionShareableLink.go | 20 +- .../network/v2/getConfigurationPolicyGroup.go | 20 +- .../network/v2/getConnectionMonitor.go | 20 +- .../v2/getConnectivityConfiguration.go | 20 +- .../network/v2/getCustomIPPrefix.go | 20 +- .../network/v2/getDdosCustomPolicy.go | 20 +- .../network/v2/getDdosProtectionPlan.go | 20 +- .../network/v2/getDefaultAdminRule.go | 18 +- .../network/v2/getDefaultUserRule.go | 18 +- .../network/v2/getDnsForwardingRuleset.go | 20 +- .../network/v2/getDnsResolver.go | 20 +- .../network/v2/getDnsResolverDomainList.go | 154 + .../network/v2/getDnsResolverPolicy.go | 147 + .../getDnsResolverPolicyVirtualNetworkLink.go | 151 + .../getDnsResourceReferenceByTarResources.go | 18 +- .../network/v2/getDnsSecurityRule.go | 172 + .../network/v2/getDscpConfiguration.go | 20 +- .../network/v2/getEndpoint.go | 18 +- .../network/v2/getExperiment.go | 18 +- .../network/v2/getExpressRouteCircuit.go | 20 +- .../v2/getExpressRouteCircuitAuthorization.go | 20 +- .../v2/getExpressRouteCircuitConnection.go | 20 +- .../v2/getExpressRouteCircuitPeering.go | 20 +- .../network/v2/getExpressRouteConnection.go | 20 +- .../getExpressRouteCrossConnectionPeering.go | 20 +- .../network/v2/getExpressRouteGateway.go | 20 +- .../network/v2/getExpressRoutePort.go | 20 +- .../v2/getExpressRoutePortAuthorization.go | 20 +- .../network/v2/getFirewallPolicy.go | 20 +- .../network/v2/getFirewallPolicyDraft.go | 20 +- .../getFirewallPolicyRuleCollectionGroup.go | 20 +- ...tFirewallPolicyRuleCollectionGroupDraft.go | 20 +- .../network/v2/getFirewallPolicyRuleGroup.go | 18 +- .../network/v2/getFlowLog.go | 20 +- .../network/v2/getForwardingRule.go | 20 +- .../network/v2/getFrontDoor.go | 18 +- .../network/v2/getHubRouteTable.go | 20 +- .../v2/getHubVirtualNetworkConnection.go | 20 +- .../network/v2/getInboundEndpoint.go | 20 +- .../network/v2/getInboundNatRule.go | 20 +- .../network/v2/getInterfaceEndpoint.go | 18 +- .../network/v2/getIpAllocation.go | 20 +- .../network/v2/getIpGroup.go | 20 +- .../network/v2/getIpamPool.go | 137 + .../network/v2/getIpamPoolUsage.go | 151 + .../network/v2/getLoadBalancer.go | 20 +- .../v2/getLoadBalancerBackendAddressPool.go | 20 +- .../network/v2/getLocalNetworkGateway.go | 20 +- ...ManagementGroupNetworkManagerConnection.go | 20 +- .../network/v2/getNatGateway.go | 20 +- .../network/v2/getNatRule.go | 20 +- .../network/v2/getNetworkExperimentProfile.go | 18 +- .../network/v2/getNetworkGroup.go | 20 +- .../network/v2/getNetworkInterface.go | 20 +- .../v2/getNetworkInterfaceTapConfiguration.go | 20 +- .../network/v2/getNetworkManager.go | 20 +- .../getNetworkManagerRoutingConfiguration.go | 144 + .../network/v2/getNetworkProfile.go | 20 +- .../network/v2/getNetworkSecurityGroup.go | 20 +- .../network/v2/getNetworkSecurityPerimeter.go | 18 +- .../network/v2/getNetworkVirtualAppliance.go | 20 +- .../network/v2/getNetworkWatcher.go | 20 +- .../network/v2/getNspAccessRule.go | 18 +- .../network/v2/getNspAssociation.go | 18 +- .../network/v2/getNspLink.go | 18 +- .../network/v2/getNspProfile.go | 18 +- .../network/v2/getOutboundEndpoint.go | 20 +- .../network/v2/getP2sVpnGateway.go | 20 +- .../getP2sVpnGatewayP2sVpnConnectionHealth.go | 20 +- ...pnGatewayP2sVpnConnectionHealthDetailed.go | 20 +- .../v2/getP2sVpnServerConfiguration.go | 18 +- .../network/v2/getPacketCapture.go | 20 +- .../network/v2/getPolicy.go | 18 +- .../network/v2/getPrivateDnsZoneGroup.go | 20 +- .../network/v2/getPrivateEndpoint.go | 20 +- .../network/v2/getPrivateLinkService.go | 20 +- ...ateLinkServicePrivateEndpointConnection.go | 20 +- .../network/v2/getPrivateRecordSet.go | 20 +- .../getPrivateResolverVirtualNetworkLink.go | 20 +- .../network/v2/getPrivateZone.go | 20 +- .../network/v2/getProfile.go | 18 +- .../network/v2/getPublicIPAddress.go | 20 +- .../network/v2/getPublicIPPrefix.go | 20 +- .../v2/getReachabilityAnalysisIntent.go | 129 + .../network/v2/getReachabilityAnalysisRun.go | 129 + .../network/v2/getRecordSet.go | 18 +- .../network/v2/getRoute.go | 26 +- .../network/v2/getRouteFilter.go | 20 +- .../network/v2/getRouteFilterRule.go | 20 +- .../network/v2/getRouteMap.go | 20 +- .../network/v2/getRouteTable.go | 20 +- .../network/v2/getRoutingIntent.go | 20 +- .../network/v2/getRoutingRule.go | 166 + .../network/v2/getRoutingRuleCollection.go | 162 + .../network/v2/getRulesEngine.go | 18 +- .../network/v2/getScopeConnection.go | 20 +- .../v2/getSecurityAdminConfiguration.go | 20 +- .../network/v2/getSecurityPartnerProvider.go | 20 +- .../network/v2/getSecurityRule.go | 20 +- .../v2/getSecurityUserConfiguration.go | 20 +- .../network/v2/getSecurityUserRule.go | 194 + .../v2/getSecurityUserRuleCollection.go | 157 + .../network/v2/getServiceEndpointPolicy.go | 20 +- .../v2/getServiceEndpointPolicyDefinition.go | 20 +- .../network/v2/getStaticCidr.go | 127 + .../network/v2/getStaticMember.go | 20 +- .../network/v2/getSubnet.go | 20 +- ...getSubscriptionNetworkManagerConnection.go | 20 +- .../v2/getTrafficManagerUserMetricsKey.go | 18 +- .../network/v2/getUserRule.go | 18 +- .../network/v2/getUserRuleCollection.go | 18 +- .../network/v2/getVerifierWorkspace.go | 137 + .../network/v2/getVirtualApplianceSite.go | 20 +- .../network/v2/getVirtualHub.go | 20 +- .../network/v2/getVirtualHubBgpConnection.go | 20 +- .../v2/getVirtualHubIpConfiguration.go | 20 +- .../network/v2/getVirtualHubRouteTableV2.go | 20 +- .../network/v2/getVirtualNetwork.go | 20 +- .../network/v2/getVirtualNetworkGateway.go | 20 +- ...etVirtualNetworkGatewayAdvertisedRoutes.go | 20 +- .../getVirtualNetworkGatewayBgpPeerStatus.go | 20 +- .../v2/getVirtualNetworkGatewayConnection.go | 20 +- ...etVirtualNetworkGatewayConnectionIkeSas.go | 20 +- .../getVirtualNetworkGatewayLearnedRoutes.go | 20 +- .../v2/getVirtualNetworkGatewayNatRule.go | 20 +- ...rtualNetworkGatewayVpnProfilePackageUrl.go | 20 +- ...NetworkGatewayVpnclientConnectionHealth.go | 20 +- ...lNetworkGatewayVpnclientIpsecParameters.go | 20 +- .../network/v2/getVirtualNetworkLink.go | 20 +- .../network/v2/getVirtualNetworkPeering.go | 20 +- .../network/v2/getVirtualNetworkTap.go | 20 +- .../network/v2/getVirtualRouter.go | 20 +- .../network/v2/getVirtualRouterPeering.go | 20 +- .../network/v2/getVirtualWan.go | 20 +- .../network/v2/getVpnConnection.go | 20 +- .../network/v2/getVpnGateway.go | 20 +- .../network/v2/getVpnLinkConnectionIkeSas.go | 20 +- .../network/v2/getVpnServerConfiguration.go | 20 +- .../network/v2/getVpnSite.go | 20 +- .../v2/getWebApplicationFirewallPolicy.go | 20 +- .../network/v2/getZone.go | 18 +- .../network/v2/hubRouteTable.go | 8 +- .../network/v2/hubVirtualNetworkConnection.go | 8 +- .../network/v2/inboundEndpoint.go | 5 +- .../network/v2/inboundNatRule.go | 8 +- .../network/v2/init.go | 28 + .../network/v2/interfaceEndpoint.go | 6 + .../network/v2/ipAllocation.go | 8 +- .../network/v2/ipGroup.go | 8 +- .../network/v2/ipamPool.go | 185 + .../v2/listActiveConnectivityConfiguration.go | 18 +- .../listActiveConnectivityConfigurations.go | 20 +- .../network/v2/listActiveSecurityAdminRule.go | 18 +- .../v2/listActiveSecurityAdminRules.go | 20 +- .../network/v2/listActiveSecurityUserRule.go | 18 +- .../network/v2/listActiveSecurityUserRules.go | 18 +- ...istDnsForwardingRulesetByVirtualNetwork.go | 20 +- .../v2/listDnsResolverByVirtualNetwork.go | 20 +- .../listDnsResolverPolicyByVirtualNetwork.go | 98 + .../listEffectiveConnectivityConfiguration.go | 18 +- ...stEffectiveVirtualNetworkByNetworkGroup.go | 18 +- ...EffectiveVirtualNetworkByNetworkManager.go | 18 +- .../v2/listFirewallPolicyIdpsSignature.go | 20 +- ...FirewallPolicyIdpsSignaturesFilterValue.go | 20 +- .../v2/listIpamPoolAssociatedResources.go | 100 + ...stEffectiveVirtualNetworkByNetworkGroup.go | 18 +- .../v2/listNetworkManagerDeploymentStatus.go | 20 +- ...agerEffectiveConnectivityConfigurations.go | 20 +- ...etworkManagerEffectiveSecurityAdminRule.go | 18 +- ...tworkManagerEffectiveSecurityAdminRules.go | 20 +- .../listVpnLinkConnectionDefaultSharedKey.go | 120 + .../network/v2/loadBalancer.go | 8 +- .../v2/loadBalancerBackendAddressPool.go | 8 +- .../network/v2/localNetworkGateway.go | 8 +- ...managementGroupNetworkManagerConnection.go | 8 +- .../network/v2/natGateway.go | 8 +- .../network/v2/natRule.go | 8 +- .../network/v2/networkGroup.go | 8 +- .../network/v2/networkInterface.go | 8 +- .../v2/networkInterfaceTapConfiguration.go | 8 +- .../network/v2/networkManager.go | 11 +- .../v2/networkManagerRoutingConfiguration.go | 184 + .../network/v2/networkProfile.go | 8 +- .../network/v2/networkSecurityGroup.go | 8 +- .../network/v2/networkVirtualAppliance.go | 8 +- .../network/v2/networkWatcher.go | 8 +- .../network/v2/outboundEndpoint.go | 5 +- .../network/v2/p2sVpnGateway.go | 8 +- .../network/v2/packetCapture.go | 8 +- .../network/v2/privateDnsZoneGroup.go | 8 +- .../network/v2/privateEndpoint.go | 8 +- .../network/v2/privateLinkService.go | 8 +- ...ateLinkServicePrivateEndpointConnection.go | 8 +- .../network/v2/privateRecordSet.go | 5 + .../v2/privateResolverVirtualNetworkLink.go | 5 +- .../network/v2/privateZone.go | 5 + .../network/v2/publicIPAddress.go | 8 +- .../network/v2/publicIPPrefix.go | 8 +- .../network/v2/pulumi-plugin.json | 2 +- .../network/v2/pulumiEnums.go | 1128 +- .../network/v2/pulumiTypes.go | 1932 +- .../network/v2/pulumiTypes1.go | 2667 +- .../network/v2/reachabilityAnalysisIntent.go | 175 + .../network/v2/reachabilityAnalysisRun.go | 173 + .../network/v2/route.go | 18 +- .../network/v2/routeFilter.go | 8 +- .../network/v2/routeFilterRule.go | 8 +- .../network/v2/routeMap.go | 8 +- .../network/v2/routeTable.go | 8 +- .../network/v2/routingIntent.go | 8 +- .../network/v2/routingRule.go | 226 + .../network/v2/routingRuleCollection.go | 216 + .../network/v2/scopeConnection.go | 8 +- .../network/v2/securityAdminConfiguration.go | 11 +- .../network/v2/securityPartnerProvider.go | 8 +- .../network/v2/securityRule.go | 8 +- .../network/v2/securityUserConfiguration.go | 5 +- .../network/v2/securityUserRule.go | 282 + .../network/v2/securityUserRuleCollection.go | 217 + .../network/v2/serviceEndpointPolicy.go | 8 +- .../v2/serviceEndpointPolicyDefinition.go | 8 +- .../network/v2/staticCidr.go | 170 + .../network/v2/staticMember.go | 8 +- .../network/v2/subnet.go | 8 +- .../subscriptionNetworkManagerConnection.go | 8 +- .../network/v2/userRule.go | 3 + .../network/v2/userRuleCollection.go | 3 + .../network/v2/verifierWorkspace.go | 185 + .../network/v2/virtualApplianceSite.go | 8 +- .../network/v2/virtualHub.go | 8 +- .../network/v2/virtualHubBgpConnection.go | 8 +- .../network/v2/virtualHubIpConfiguration.go | 8 +- .../network/v2/virtualHubRouteTableV2.go | 8 +- .../network/v2/virtualNetwork.go | 8 +- .../network/v2/virtualNetworkGateway.go | 8 +- .../v2/virtualNetworkGatewayConnection.go | 8 +- .../v2/virtualNetworkGatewayNatRule.go | 8 +- .../network/v2/virtualNetworkLink.go | 5 + .../network/v2/virtualNetworkPeering.go | 8 +- .../network/v2/virtualNetworkTap.go | 8 +- .../network/v2/virtualRouter.go | 8 +- .../network/v2/virtualRouterPeering.go | 8 +- .../network/v2/virtualWan.go | 8 +- .../network/v2/vpnConnection.go | 8 +- .../network/v2/vpnGateway.go | 8 +- .../network/v2/vpnServerConfiguration.go | 8 +- .../network/v2/vpnSite.go | 8 +- .../v2/webApplicationFirewallPolicy.go | 8 +- .../resources/v2/deployment.go | 5 +- .../v2/deploymentAtManagementGroupScope.go | 5 +- .../resources/v2/deploymentAtScope.go | 5 +- .../v2/deploymentAtSubscriptionScope.go | 5 +- .../resources/v2/deploymentAtTenantScope.go | 5 +- .../resources/v2/getAzureCliScript.go | 18 +- .../resources/v2/getAzurePowerShellScript.go | 18 +- .../resources/v2/getDeployment.go | 20 +- .../v2/getDeploymentAtManagementGroupScope.go | 20 +- .../resources/v2/getDeploymentAtScope.go | 20 +- .../v2/getDeploymentAtSubscriptionScope.go | 20 +- .../v2/getDeploymentAtTenantScope.go | 20 +- .../v2/getDeploymentStackAtManagementGroup.go | 18 +- .../v2/getDeploymentStackAtResourceGroup.go | 18 +- .../v2/getDeploymentStackAtSubscription.go | 18 +- .../resources/v2/getResource.go | 20 +- .../resources/v2/getResourceGroup.go | 20 +- .../resources/v2/getTagAtScope.go | 20 +- .../resources/v2/getTemplateSpec.go | 18 +- .../resources/v2/getTemplateSpecVersion.go | 18 +- .../resources/v2/pulumi-plugin.json | 2 +- .../resources/v2/resource.go | 5 +- .../resources/v2/resourceGroup.go | 5 +- .../resources/v2/tagAtScope.go | 5 +- .../storage/v2/blob.go | 20 +- .../storage/v2/getBlobContainer.go | 18 +- .../v2/getBlobContainerImmutabilityPolicy.go | 18 +- .../storage/v2/getBlobInventoryPolicy.go | 18 +- .../storage/v2/getBlobServiceProperties.go | 18 +- .../storage/v2/getEncryptionScope.go | 18 +- .../storage/v2/getFileServiceProperties.go | 18 +- .../storage/v2/getFileShare.go | 18 +- .../storage/v2/getLocalUser.go | 18 +- .../storage/v2/getManagementPolicy.go | 18 +- .../storage/v2/getObjectReplicationPolicy.go | 18 +- .../v2/getPrivateEndpointConnection.go | 18 +- .../storage/v2/getQueue.go | 18 +- .../storage/v2/getQueueServiceProperties.go | 18 +- .../storage/v2/getStorageAccount.go | 18 +- .../storage/v2/getStorageTaskAssignment.go | 18 +- .../storage/v2/getTable.go | 18 +- .../storage/v2/getTableServiceProperties.go | 18 +- .../storage/v2/listLocalUserKeys.go | 18 +- .../storage/v2/listStorageAccountKeys.go | 18 +- .../storage/v2/listStorageAccountSAS.go | 18 +- .../v2/listStorageAccountServiceSAS.go | 18 +- .../storage/v2/pulumi-plugin.json | 2 +- .../v2/utilities/pulumiUtilities.go | 4 +- .../github.com/pulumi/pulumi/sdk/v3/.version | 2 +- .../sdk/v3/go/auto/debug/debuglogging.go | 14 + .../pulumi/sdk/v3/go/auto/events/events.go | 14 + .../pulumi/sdk/v3/go/auto/local_workspace.go | 29 +- .../sdk/v3/go/auto/optpreview/optpreview.go | 9 + .../pulumi/sdk/v3/go/auto/optup/optup.go | 9 + .../pulumi/sdk/v3/go/auto/remote_workspace.go | 11 + .../pulumi/pulumi/sdk/v3/go/auto/stack.go | 16 +- .../pulumi/pulumi/sdk/v3/go/auto/workspace.go | 10 + .../pulumi/sdk/v3/go/common/apitype/core.go | 19 + .../sdk/v3/go/common/apitype/deployments.go | 53 +- .../pulumi/sdk/v3/go/common/apitype/events.go | 35 + .../pulumi/sdk/v3/go/common/apitype/plan.go | 14 + .../pulumi/sdk/v3/go/common/apitype/stacks.go | 3 + .../sdk/v3/go/common/apitype/updates.go | 8 +- .../sdk/v3/go/common/constant/exec_kind.go | 14 + .../sdk/v3/go/common/diag/colors/colors.go | 4 +- .../pulumi/pulumi/sdk/v3/go/common/env/env.go | 9 + .../pulumi/sdk/v3/go/common/resource/alias.go | 14 + .../v3/go/common/resource/archive/archive.go | 5 + .../v3/go/common/resource/config/plaintext.go | 2 +- .../v3/go/common/resource/custom_timeouts.go | 14 + .../common/resource/plugin/analyzer_plugin.go | 21 +- .../v3/go/common/resource/plugin/context.go | 11 +- .../v3/go/common/resource/plugin/debugging.go | 25 + .../go/common/resource/plugin/diagnostic.go | 1 + .../sdk/v3/go/common/resource/plugin/doc.go | 14 + .../sdk/v3/go/common/resource/plugin/host.go | 60 +- .../go/common/resource/plugin/host_server.go | 23 +- .../go/common/resource/plugin/langruntime.go | 16 +- .../resource/plugin/langruntime_plugin.go | 34 +- .../sdk/v3/go/common/resource/plugin/mock.go | 327 + .../v3/go/common/resource/plugin/provider.go | 28 +- .../common/resource/plugin/provider_plugin.go | 99 +- .../common/resource/plugin/provider_server.go | 134 +- .../sdk/v3/go/common/resource/plugin/rpc.go | 17 +- .../sdk/v3/go/common/resource/properties.go | 2 + .../v3/go/common/resource/properties_path.go | 14 + .../sdk/v3/go/common/resource/resource_id.go | 41 - .../v3/go/common/resource/resource_state.go | 62 +- .../sdk/v3/go/common/util/archive/archive.go | 5 + .../sdk/v3/go/common/util/cmdutil/args.go | 7 +- .../sdk/v3/go/common/util/cmdutil/console.go | 2 + .../common/util/cmdutil/console_password.go | 1 + .../sdk/v3/go/common/util/cmdutil/diag.go | 4 +- .../sdk/v3/go/common/util/cmdutil/exit.go | 64 +- .../sdk/v3/go/common/util/cmdutil/profile.go | 14 +- .../sdk/v3/go/common/util/fsutil/searchup.go | 41 + .../sdk/v3/go/common/util/result/result.go | 173 +- .../sdk/v3/go/common/util/rpcutil/serve.go | 8 +- .../sdk/v3/go/common/workspace/config.go | 14 + .../sdk/v3/go/common/workspace/creds.go | 72 +- .../sdk/v3/go/common/workspace/paths.go | 14 +- .../sdk/v3/go/common/workspace/plugins.go | 88 +- .../sdk/v3/go/common/workspace/project.go | 4 +- .../v3/go/common/workspace/templates_zip.go | 13 + .../pulumi/sdk/v3/go/property/reference.go | 14 + .../pulumi/pulumi/sdk/v3/go/pulumi/context.go | 246 +- .../pulumi/pulumi/sdk/v3/go/pulumi/mocks.go | 20 + .../pulumi/pulumi/sdk/v3/go/pulumi/printf.go | 14 + .../pulumi/sdk/v3/go/pulumi/provider.go | 4 +- .../pulumi/sdk/v3/go/pulumi/resource.go | 16 + .../pulumi/sdk/v3/go/pulumi/resource_set.go | 14 + .../pulumi/pulumi/sdk/v3/go/pulumi/rpc.go | 17 +- .../pulumi/pulumi/sdk/v3/go/pulumi/run.go | 6 +- .../sdk/v3/go/pulumi/stack_reference.go | 14 + .../pulumi/sdk/v3/go/pulumi/transformation.go | 14 + .../pulumi/sdk/v3/go/pulumi/types_builtins.go | 96 + .../pulumi/pulumi/sdk/v3/go/pulumix/array.go | 2 +- .../pulumi/sdk/v3/nodejs/npm/manager.go | 30 +- .../pulumi/pulumi/sdk/v3/nodejs/npm/npm.go | 14 + .../pulumi/pulumi/sdk/v3/nodejs/npm/yarn.go | 14 + .../sdk/v3/proto/go/codegen/loader.pb.go | 178 +- .../pulumi/sdk/v3/proto/go/engine.pb.go | 194 +- .../pulumi/sdk/v3/proto/go/engine_grpc.pb.go | 40 + .../pulumi/sdk/v3/proto/go/errors.pb.go | 172 +- .../pulumi/sdk/v3/proto/go/language.pb.go | 557 +- .../pulumi/sdk/v3/proto/go/provider.pb.go | 287 +- .../sdk/v3/proto/go/provider_grpc.pb.go | 12 + .../pulumi/sdk/v3/python/toolchain/pip.go | 17 +- .../pulumi/sdk/v3/python/toolchain/poetry.go | 72 +- .../sdk/v3/python/toolchain/shim_unix.go | 8 +- .../sdk/v3/python/toolchain/toolchain.go | 92 +- .../pulumi/pulumi/sdk/v3/version.go | 14 + .../github.com/tweekmonster/luser/.travis.yml | 14 - vendor/github.com/tweekmonster/luser/LICENSE | 20 - .../github.com/tweekmonster/luser/README.md | 74 - .../tweekmonster/luser/current_cgo.go | 14 - .../tweekmonster/luser/current_default.go | 46 - vendor/github.com/tweekmonster/luser/ds.go | 77 - .../github.com/tweekmonster/luser/ds_group.go | 59 - .../github.com/tweekmonster/luser/errors.go | 35 - vendor/github.com/tweekmonster/luser/group.go | 52 - vendor/github.com/tweekmonster/luser/id.go | 29 - .../github.com/tweekmonster/luser/lookup.go | 56 - .../tweekmonster/luser/lookup_group.go | 47 - .../luser/lookup_group_windows.go | 13 - .../tweekmonster/luser/lookup_windows.go | 29 - vendor/github.com/tweekmonster/luser/luser.go | 77 - vendor/github.com/tweekmonster/luser/misc.go | 33 - .../tweekmonster/luser/misc_group.go | 10 - vendor/github.com/tweekmonster/luser/nss.go | 134 - .../tweekmonster/luser/nss_group.go | 25 - vendor/modules.txt | 37 +- 580 files changed, 32959 insertions(+), 21363 deletions(-) delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleet.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetMember.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetUpdateStrategy.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleet.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetMember.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetUpdateStrategy.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getLoadBalancer.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedClusterSnapshot.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getOpenShiftManagedCluster.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getUpdateRun.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listFleetCredentials.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAccessProfile.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/loadBalancer.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedClusterSnapshot.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/openShiftManagedCluster.go delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumi-plugin.json delete mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/updateRun.go rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/agentPool.go (93%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/getAgentPool.go (91%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/getMaintenanceConfiguration.go (78%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/getManagedCluster.go (88%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/getPrivateEndpointConnection.go (87%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/getSnapshot.go (86%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/getTrustedAccessRoleBinding.go (85%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/init.go (52%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/listManagedClusterAdminCredentials.go (81%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/listManagedClusterMonitoringUserCredentials.go (81%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/listManagedClusterUserCredentials.go (83%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/maintenanceConfiguration.go (89%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/managedCluster.go (91%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/privateEndpointConnection.go (94%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/pulumiEnums.go (86%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/pulumiTypes.go (74%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/snapshot.go (94%) rename vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/{ => v20240801}/trustedAccessRoleBinding.go (94%) create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverDomainList.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicy.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicyVirtualNetworkLink.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsSecurityRule.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverDomainList.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicy.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicyVirtualNetworkLink.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsSecurityRule.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPool.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPoolUsage.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManagerRoutingConfiguration.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisIntent.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisRun.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRule.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRuleCollection.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRule.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRuleCollection.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticCidr.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVerifierWorkspace.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipamPool.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverPolicyByVirtualNetwork.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listIpamPoolAssociatedResources.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listVpnLinkConnectionDefaultSharedKey.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManagerRoutingConfiguration.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisIntent.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisRun.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRule.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRuleCollection.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRule.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRuleCollection.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticCidr.go create mode 100644 vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/verifierWorkspace.go create mode 100644 vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/debugging.go create mode 100644 vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/mock.go create mode 100644 vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/fsutil/searchup.go delete mode 100644 vendor/github.com/tweekmonster/luser/.travis.yml delete mode 100644 vendor/github.com/tweekmonster/luser/LICENSE delete mode 100644 vendor/github.com/tweekmonster/luser/README.md delete mode 100644 vendor/github.com/tweekmonster/luser/current_cgo.go delete mode 100644 vendor/github.com/tweekmonster/luser/current_default.go delete mode 100644 vendor/github.com/tweekmonster/luser/ds.go delete mode 100644 vendor/github.com/tweekmonster/luser/ds_group.go delete mode 100644 vendor/github.com/tweekmonster/luser/errors.go delete mode 100644 vendor/github.com/tweekmonster/luser/group.go delete mode 100644 vendor/github.com/tweekmonster/luser/id.go delete mode 100644 vendor/github.com/tweekmonster/luser/lookup.go delete mode 100644 vendor/github.com/tweekmonster/luser/lookup_group.go delete mode 100644 vendor/github.com/tweekmonster/luser/lookup_group_windows.go delete mode 100644 vendor/github.com/tweekmonster/luser/lookup_windows.go delete mode 100644 vendor/github.com/tweekmonster/luser/luser.go delete mode 100644 vendor/github.com/tweekmonster/luser/misc.go delete mode 100644 vendor/github.com/tweekmonster/luser/misc_group.go delete mode 100644 vendor/github.com/tweekmonster/luser/nss.go delete mode 100644 vendor/github.com/tweekmonster/luser/nss_group.go diff --git a/cmd/mapt/cmd/azure/services/aks.go b/cmd/mapt/cmd/azure/services/aks.go index ea5605e4f..d4d7d3412 100644 --- a/cmd/mapt/cmd/azure/services/aks.go +++ b/cmd/mapt/cmd/azure/services/aks.go @@ -18,12 +18,14 @@ const ( cmdAKS = "aks" cmdAKSDesc = "aks operations" - paramVersion = "version" - paramVersionDesc = "AKS K8s cluster version" - paramVMSizeDesc = "VMSize to be used on the user pool. Typically this is used to provision spot node pools" - defaultVersion = "1.30" - paramOnlySystemPool = "only-system-pool" - paramOnlySystemPoolDesc = "if we do not need bunch of resources we can run only the systempool. More info https://learn.microsoft.com/es-es/azure/aks/use-system-pools?tabs=azure-cli#system-and-user-node-pools" + paramVersion = "version" + paramVersionDesc = "AKS K8s cluster version" + paramVMSizeDesc = "VMSize to be used on the user pool. Typically this is used to provision spot node pools" + defaultVersion = "1.30" + paramOnlySystemPool = "only-system-pool" + paramOnlySystemPoolDesc = "if we do not need bunch of resources we can run only the systempool. More info https://learn.microsoft.com/es-es/azure/aks/use-system-pools?tabs=azure-cli#system-and-user-node-pools" + paramEnableAppRouting = "enable-app-routing" + paramEnableAppRoutingDesc = "enable application routing add-on with NGINX" ) func GetAKSCmd() *cobra.Command { @@ -73,6 +75,7 @@ func getCreateAKS() *cobra.Command { Location: viper.GetString(azparams.ParamLocation), KubernetesVersion: viper.GetString(paramVersion), OnlySystemPool: viper.IsSet(paramOnlySystemPool), + EnableAppRouting: viper.IsSet(paramEnableAppRouting), VMSize: viper.GetString(azparams.ParamVMSize), Spot: viper.IsSet(azparams.ParamSpot), SpotTolerance: spotToleranceValue}); err != nil { @@ -89,6 +92,7 @@ func getCreateAKS() *cobra.Command { flagSet.StringP(paramVersion, "", defaultVersion, paramVersionDesc) flagSet.Bool(azparams.ParamSpot, false, azparams.ParamSpotDesc) flagSet.Bool(paramOnlySystemPool, false, paramOnlySystemPoolDesc) + flagSet.Bool(paramEnableAppRouting, false, paramEnableAppRoutingDesc) flagSet.StringP(azparams.ParamSpotTolerance, "", azparams.DefaultSpotTolerance, azparams.ParamSpotToleranceDesc) c.PersistentFlags().AddFlagSet(flagSet) return c diff --git a/docs/azure/aks.md b/docs/azure/aks.md index adeb40b02..c99ad0199 100644 --- a/docs/azure/aks.md +++ b/docs/azure/aks.md @@ -21,6 +21,7 @@ Usage: Flags: --conn-details-output string path to export host connection information (host, username and privateKey) + --enable-app-routing enable application routing add-on with NGINX -h, --help help for create --location string location for created resources in case spot flag (if available) is not passed (default "West US") --only-system-pool if we do not need bunch of resources we can run only the systempool. More info https://learn.microsoft.com/es-es/azure/aks/use-system-pools?tabs=azure-cli#system-and-user-node-pools @@ -52,6 +53,7 @@ podman run -d --rm \ --project-name "aks" \ --backed-url "file:///workspace" \ --conn-details-output "/workspace" \ + --enable-app-routing \ --spot ``` diff --git a/go.mod b/go.mod index 684bc783c..258a08fed 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( github.com/coocood/freecache v1.2.4 github.com/pulumi/pulumi-command/sdk v0.11.1 github.com/pulumi/pulumi-random/sdk/v4 v4.16.2 - github.com/pulumi/pulumi/sdk/v3 v3.128.0 + github.com/pulumi/pulumi/sdk/v3 v3.135.0 github.com/sirupsen/logrus v1.9.3 github.com/spf13/cobra v1.8.0 golang.org/x/exp v0.0.0-20240604190554-fc45aab8b7f8 @@ -22,12 +22,12 @@ require ( github.com/aws/aws-sdk-go-v2/config v1.27.18 github.com/aws/aws-sdk-go-v2/service/ec2 v1.142.0 github.com/pulumi/pulumi-aws/sdk/v6 v6.39.0 - github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.53.0 - github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.45.0 - github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.53.0 - github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.45.0 - github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.45.0 - github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.45.0 + github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.64.2 + github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.64.2 + github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.64.2 + github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.64.2 + github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.64.2 + github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.64.2 github.com/pulumi/pulumi-tls/sdk/v5 v5.0.3 ) @@ -97,7 +97,7 @@ require ( github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect github.com/pulumi/esc v0.9.1 // indirect - github.com/pulumi/pulumi-azure-native-sdk/v2 v2.53.0 // indirect + github.com/pulumi/pulumi-azure-native-sdk/v2 v2.64.2 // indirect github.com/sagikazarmark/locafero v0.4.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect github.com/santhosh-tekuri/jsonschema/v5 v5.0.0 // indirect @@ -149,7 +149,6 @@ require ( github.com/spf13/pflag v1.0.5 github.com/spf13/viper v1.19.0 github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/xanzy/ssh-agent v0.3.3 // indirect diff --git a/go.sum b/go.sum index a514b22ad..97daf1c43 100644 --- a/go.sum +++ b/go.sum @@ -254,30 +254,30 @@ github.com/pulumi/esc v0.9.1 h1:HH5eEv8sgyxSpY5a8yePyqFXzA8cvBvapfH8457+mIs= github.com/pulumi/esc v0.9.1/go.mod h1:oEJ6bOsjYlQUpjf70GiX+CXn3VBmpwFDxUTlmtUN84c= github.com/pulumi/pulumi-aws/sdk/v6 v6.39.0 h1:MVBKXVDr4As1B2LcAzWrPLn0ysR0oiCEQOBvnsrEOcY= github.com/pulumi/pulumi-aws/sdk/v6 v6.39.0/go.mod h1:cV2EBfrvaS/YUKr9L0ua93vrSuAihpkhokzyYjj6NkQ= -github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.53.0 h1:7B7mN9R69GL+maOO/qjwT1u/eVag0mQItFaflO9B5kY= -github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.53.0/go.mod h1:r62G2PykMJ+j2uqvl9OjwxavtgiWijWcGGXEh70lSKw= -github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.45.0 h1:BcYPQlIP/oWv/g9rwfYqWzIHTW39g3kxAV0Z+TceFFY= -github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.45.0/go.mod h1:7qkKema4IyvzG0rcmHe6QzjpM4qhWDPzcm9ZV1qk1hg= -github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.53.0 h1:i/52lLXiRh3pCjn8wKG5qq9sCXUQ6SOPSVQsCnXYNgU= -github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.53.0/go.mod h1:h0TLC2XYohDDMvSf7MzCVTp6S9RzPl39lzzceJZ8YRE= +github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.64.2 h1:vJzGBj5viOFTCfYyKwc7p9b4rcW37bHAsbS5mka0uow= +github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.64.2/go.mod h1:PWdAgtaVplvbqTGkqD3hR7AVTRTP8X/q9YDJQVVHNCM= +github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.64.2 h1:J74vg89UTseQAq9L2rYaf8RW7aVt+PAUj7SBRu1YG08= +github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.64.2/go.mod h1:NNS9WhpTuiIftC0AFA1BlfHvqgeY1UOwyWeRSEMZg+A= +github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.64.2 h1:ULOfuN9Iodvjgm9kG9YP5Ed22EOSRHRmZGRicPGLiCo= +github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.64.2/go.mod h1:iGsy7/ehEDoD7ZLTlQRG0lTDRwARRho2Z3Vf3beYfUE= github.com/pulumi/pulumi-azure-native-sdk/managedidentity/v2 v2.53.0 h1:HctTS276Dl0hzqyioTuvLSfFO6xUy0DALtF3Kr2DrmI= github.com/pulumi/pulumi-azure-native-sdk/managedidentity/v2 v2.53.0/go.mod h1:qMFN9OZL50ARd8xi9zFMpCLflH/3YIT1MtXe5Qxu+54= -github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.45.0 h1:uUzU9o1JVKkeotHi3EVJSe2U42nTQUzW1rCLRxJjQUk= -github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.45.0/go.mod h1:idXEoECzvjGSRDj6acTDABtR8H65EVZ5l1IhwV5ApYU= -github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.45.0 h1:Y199bwRu/YNAKvz6eOMw4elJQsVDbu/g9gjPUw7E0Ng= -github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.45.0/go.mod h1:PFHqlzfFRyxU1BNRahKpQFXVNTbgasOatIjJuzjq8dM= -github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.45.0 h1:Sl1ANAacpgRUPENu9NeDSN/7Y0vrhYXsvnU7dDztiZw= -github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.45.0/go.mod h1:i0f7n5clAURlOqIEqcQQGYE04Ic6hU1gzf+Htwg51eY= -github.com/pulumi/pulumi-azure-native-sdk/v2 v2.53.0 h1:TlzYzmrDVIHfUI9+R+WJA+81P490Ppq7mOBGRJpCqvI= -github.com/pulumi/pulumi-azure-native-sdk/v2 v2.53.0/go.mod h1:4nh0eqK0xakTjrPcwfhqfql3odQFw+CUqxg1H87Ujy8= +github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.64.2 h1:QG2Wp1m/1C4fSzxbp/oWfitpfJ44k9T04nB0zjN4lRc= +github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.64.2/go.mod h1:FGzP1UI3jXg5QI0cU3KZi4tyhD2Xx9K8fdgTQyg2/Ps= +github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.64.2 h1:0qKMJsFgoqBXI93oMlNoHIT0HkLDhzsPqEB1DusmXR4= +github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.64.2/go.mod h1:g3WeHy2U/COLYZ/W5v+EHwIwp66+Hm/0GBu2F0Zs/qE= +github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.64.2 h1:qyKJs/0hX1+AlkC17PP46AIlC4WRHX2EB1MIuSkQ05g= +github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.64.2/go.mod h1:XYgPtWQ277cdQaHiX6Ml1gFfN7FIKPLl8hEW/44Vrcg= +github.com/pulumi/pulumi-azure-native-sdk/v2 v2.64.2 h1:kU2KoBPkbfP74RNQabLgGeB61fCLvt/dIDG8LEwvd4M= +github.com/pulumi/pulumi-azure-native-sdk/v2 v2.64.2/go.mod h1:vFd7IQFHtss7v1j0906SwyLcANJer1O9SnkrVj4pRsw= github.com/pulumi/pulumi-command/sdk v0.11.1 h1:5LCte8TvYlnOfD2Cn6Xm7ZA1fRtT74XAP0QvCPFpIcA= github.com/pulumi/pulumi-command/sdk v0.11.1/go.mod h1:NfMh7+awKDW3r8Z91JkAN4/lRPsXcCsMqGID0YJHjkk= github.com/pulumi/pulumi-random/sdk/v4 v4.16.2 h1:5el+INHB9exKLbuQMaz1OEmnasU1A6/GoOMFHCveXb8= github.com/pulumi/pulumi-random/sdk/v4 v4.16.2/go.mod h1:FuKLicnDYepG3W/tGmqCYkgdML5GK9RE/Ti984E/Tq8= github.com/pulumi/pulumi-tls/sdk/v5 v5.0.3 h1:kbdrJVO1PczQakfZZ2Ke2P5G4jlPgTw2geGHR2+7zYc= github.com/pulumi/pulumi-tls/sdk/v5 v5.0.3/go.mod h1:onWsBMCIYPEHfGAQ24FRZ67JtJDkuUQQLd9zp5MDoTM= -github.com/pulumi/pulumi/sdk/v3 v3.128.0 h1:5VPFfygxt6rva0bEYVQZXxsGAo2/D1wsb9erGOtXxzk= -github.com/pulumi/pulumi/sdk/v3 v3.128.0/go.mod h1:p1U24en3zt51agx+WlNboSOV8eLlPWYAkxMzVEXKbnY= +github.com/pulumi/pulumi/sdk/v3 v3.135.0 h1:oBP7QsmZv6uUf3eJ9j6av0nrZpipV9IguNu6rVpHlFU= +github.com/pulumi/pulumi/sdk/v3 v3.135.0/go.mod h1:J5kQEX8v87aeUhk6NdQXnjCo1DbiOnOiL3Sf2DuDda8= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= @@ -334,8 +334,6 @@ github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8 github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 h1:X9dsIWPuuEJlPX//UmRKophhOKCGXc46RVIGuttks68= -github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7/go.mod h1:UxoP3EypF8JfGEjAII8jx1q8rQyDnX8qdTCs/UQBVIE= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= diff --git a/oci/Containerfile b/oci/Containerfile index 3e80a9ab1..297baf454 100644 --- a/oci/Containerfile +++ b/oci/Containerfile @@ -7,7 +7,7 @@ WORKDIR /workspace COPY . . # renovate: datasource=github-releases depName=pulumi/pulumi -ENV PULUMI_VERSION 3.119.0 +ENV PULUMI_VERSION 3.135.0 ENV PULUMI_URL https://github.com/pulumi/pulumi/releases/download/v${PULUMI_VERSION}/pulumi-v${PULUMI_VERSION}-linux-x64.tar.gz RUN make build \ @@ -39,7 +39,7 @@ ARG PULUMI_AWS_VERSION=v6.37.1 # renovate: datasource=github-releases depName=pulumi/pulumi-aws ARG PULUMI_AWSX_VERSION=v2.3.0 # renovate: datasource=github-releases depName=pulumi/pulumi-azure-native -ARG PULUMI_AZURE_NATIVE_VERSION=v2.45.0 +ARG PULUMI_AZURE_NATIVE_VERSION=v2.64.2 # renovate: datasource=github-releases depName=pulumi/pulumi-command ARG PULUMI_COMMAND_VERSION=v0.11.1 # renovate: datasource=github-releases depName=pulumi/pulumi-tls diff --git a/pkg/provider/azure/action/aks/aks.go b/pkg/provider/azure/action/aks/aks.go index 2a137f896..5b326f213 100644 --- a/pkg/provider/azure/action/aks/aks.go +++ b/pkg/provider/azure/action/aks/aks.go @@ -5,7 +5,7 @@ import ( "fmt" "github.com/pulumi/pulumi-azure-native-sdk/authorization/v2" - "github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2" + containerservice "github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801" "github.com/pulumi/pulumi-azure-native-sdk/managedidentity/v2" "github.com/pulumi/pulumi-azure-native-sdk/resources/v2" "github.com/pulumi/pulumi-tls/sdk/v5/go/tls" @@ -27,6 +27,7 @@ type AKSRequest struct { // "1.26.3" KubernetesVersion string OnlySystemPool bool + EnableAppRouting bool Spot bool SpotTolerance spotAzure.EvictionRate } @@ -133,35 +134,43 @@ func (r *AKSRequest) deployer(ctx *pulumi.Context) error { SpotMaxPrice: pulumi.Float64(*spotPrice)}, ) } - cluster, err := containerservice.NewManagedCluster( - ctx, - resourcesUtil.GetResourceName(r.Prefix, azureAKSID, "cluster"), - &containerservice.ManagedClusterArgs{ - ResourceGroupName: rg.Name, - Location: rg.Location, - Identity: &containerservice.ManagedClusterIdentityArgs{ - Type: containerservice.ResourceIdentityTypeUserAssigned, - UserAssignedIdentities: pulumi.StringArray{ - identity.ID(), - }, + managedClusterArgs := &containerservice.ManagedClusterArgs{ + ResourceGroupName: rg.Name, + Location: rg.Location, + Identity: &containerservice.ManagedClusterIdentityArgs{ + Type: containerservice.ResourceIdentityTypeUserAssigned, + UserAssignedIdentities: pulumi.StringArray{ + identity.ID(), }, - KubernetesVersion: pulumi.String(r.KubernetesVersion), - DnsPrefix: pulumi.String("mapt"), - EnableRBAC: pulumi.Bool(true), - AgentPoolProfiles: agentPoolProfiles, - LinuxProfile: &containerservice.ContainerServiceLinuxProfileArgs{ - AdminUsername: pulumi.String("aksuser"), - Ssh: &containerservice.ContainerServiceSshConfigurationArgs{ - PublicKeys: containerservice.ContainerServiceSshPublicKeyArray{ - &containerservice.ContainerServiceSshPublicKeyArgs{ - KeyData: privateKey.PublicKeyOpenssh, - }, + }, + KubernetesVersion: pulumi.String(r.KubernetesVersion), + DnsPrefix: pulumi.String("mapt"), + EnableRBAC: pulumi.Bool(true), + AgentPoolProfiles: agentPoolProfiles, + LinuxProfile: &containerservice.ContainerServiceLinuxProfileArgs{ + AdminUsername: pulumi.String("aksuser"), + Ssh: &containerservice.ContainerServiceSshConfigurationArgs{ + PublicKeys: containerservice.ContainerServiceSshPublicKeyArray{ + &containerservice.ContainerServiceSshPublicKeyArgs{ + KeyData: privateKey.PublicKeyOpenssh, }, }, }, - Tags: maptContext.ResourceTags(), - }) - + }, + Tags: maptContext.ResourceTags(), + } + // Enable app routing if required + if r.EnableAppRouting { + managedClusterArgs.IngressProfile = containerservice.ManagedClusterIngressProfileArgs{ + WebAppRouting: containerservice.ManagedClusterIngressProfileWebAppRoutingArgs{ + Enabled: pulumi.Bool(true), + }, + } + } + cluster, err := containerservice.NewManagedCluster( + ctx, + resourcesUtil.GetResourceName(r.Prefix, azureAKSID, "cluster"), + managedClusterArgs) if err != nil { return err } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewHistoryDefinitionById.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewHistoryDefinitionById.go index 02cfecc10..3c7ea9045 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewHistoryDefinitionById.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewHistoryDefinitionById.go @@ -72,14 +72,20 @@ type LookupAccessReviewHistoryDefinitionByIdResult struct { func LookupAccessReviewHistoryDefinitionByIdOutput(ctx *pulumi.Context, args LookupAccessReviewHistoryDefinitionByIdOutputArgs, opts ...pulumi.InvokeOption) LookupAccessReviewHistoryDefinitionByIdResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAccessReviewHistoryDefinitionByIdResult, error) { + ApplyT(func(v interface{}) (LookupAccessReviewHistoryDefinitionByIdResultOutput, error) { args := v.(LookupAccessReviewHistoryDefinitionByIdArgs) - r, err := LookupAccessReviewHistoryDefinitionById(ctx, &args, opts...) - var s LookupAccessReviewHistoryDefinitionByIdResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAccessReviewHistoryDefinitionByIdResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getAccessReviewHistoryDefinitionById", args, &rv, "", opts...) + if err != nil { + return LookupAccessReviewHistoryDefinitionByIdResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAccessReviewHistoryDefinitionByIdResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAccessReviewHistoryDefinitionByIdResultOutput), nil + } + return output, nil }).(LookupAccessReviewHistoryDefinitionByIdResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewScheduleDefinitionById.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewScheduleDefinitionById.go index 8a7832076..1cde0317b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewScheduleDefinitionById.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getAccessReviewScheduleDefinitionById.go @@ -108,14 +108,20 @@ type LookupAccessReviewScheduleDefinitionByIdResult struct { func LookupAccessReviewScheduleDefinitionByIdOutput(ctx *pulumi.Context, args LookupAccessReviewScheduleDefinitionByIdOutputArgs, opts ...pulumi.InvokeOption) LookupAccessReviewScheduleDefinitionByIdResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAccessReviewScheduleDefinitionByIdResult, error) { + ApplyT(func(v interface{}) (LookupAccessReviewScheduleDefinitionByIdResultOutput, error) { args := v.(LookupAccessReviewScheduleDefinitionByIdArgs) - r, err := LookupAccessReviewScheduleDefinitionById(ctx, &args, opts...) - var s LookupAccessReviewScheduleDefinitionByIdResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAccessReviewScheduleDefinitionByIdResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getAccessReviewScheduleDefinitionById", args, &rv, "", opts...) + if err != nil { + return LookupAccessReviewScheduleDefinitionByIdResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAccessReviewScheduleDefinitionByIdResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAccessReviewScheduleDefinitionByIdResultOutput), nil + } + return output, nil }).(LookupAccessReviewScheduleDefinitionByIdResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientConfig.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientConfig.go index 5ec9b075c..009c9cc11 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientConfig.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientConfig.go @@ -35,13 +35,19 @@ type GetClientConfigResult struct { } func GetClientConfigOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetClientConfigResultOutput { - return pulumi.ToOutput(0).ApplyT(func(int) (GetClientConfigResult, error) { - r, err := GetClientConfig(ctx, opts...) - var s GetClientConfigResult - if r != nil { - s = *r + return pulumi.ToOutput(0).ApplyT(func(int) (GetClientConfigResultOutput, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetClientConfigResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getClientConfig", nil, &rv, "", opts...) + if err != nil { + return GetClientConfigResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetClientConfigResultOutput) + if secret { + return pulumi.ToSecret(output).(GetClientConfigResultOutput), nil + } + return output, nil }).(GetClientConfigResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientToken.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientToken.go index 0c9da658f..a29e73ab8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientToken.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getClientToken.go @@ -35,14 +35,20 @@ type GetClientTokenResult struct { func GetClientTokenOutput(ctx *pulumi.Context, args GetClientTokenOutputArgs, opts ...pulumi.InvokeOption) GetClientTokenResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetClientTokenResult, error) { + ApplyT(func(v interface{}) (GetClientTokenResultOutput, error) { args := v.(GetClientTokenArgs) - r, err := GetClientToken(ctx, &args, opts...) - var s GetClientTokenResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetClientTokenResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getClientToken", args, &rv, "", opts...) + if err != nil { + return GetClientTokenResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetClientTokenResultOutput) + if secret { + return pulumi.ToSecret(output).(GetClientTokenResultOutput), nil + } + return output, nil }).(GetClientTokenResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceGroupLevel.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceGroupLevel.go index cf8ba9afb..7e224130e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceGroupLevel.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceGroupLevel.go @@ -52,14 +52,20 @@ type LookupManagementLockAtResourceGroupLevelResult struct { func LookupManagementLockAtResourceGroupLevelOutput(ctx *pulumi.Context, args LookupManagementLockAtResourceGroupLevelOutputArgs, opts ...pulumi.InvokeOption) LookupManagementLockAtResourceGroupLevelResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagementLockAtResourceGroupLevelResult, error) { + ApplyT(func(v interface{}) (LookupManagementLockAtResourceGroupLevelResultOutput, error) { args := v.(LookupManagementLockAtResourceGroupLevelArgs) - r, err := LookupManagementLockAtResourceGroupLevel(ctx, &args, opts...) - var s LookupManagementLockAtResourceGroupLevelResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagementLockAtResourceGroupLevelResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getManagementLockAtResourceGroupLevel", args, &rv, "", opts...) + if err != nil { + return LookupManagementLockAtResourceGroupLevelResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupManagementLockAtResourceGroupLevelResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagementLockAtResourceGroupLevelResultOutput), nil + } + return output, nil }).(LookupManagementLockAtResourceGroupLevelResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceLevel.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceLevel.go index 962ff35fa..ff1a84c6f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceLevel.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtResourceLevel.go @@ -58,14 +58,20 @@ type LookupManagementLockAtResourceLevelResult struct { func LookupManagementLockAtResourceLevelOutput(ctx *pulumi.Context, args LookupManagementLockAtResourceLevelOutputArgs, opts ...pulumi.InvokeOption) LookupManagementLockAtResourceLevelResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagementLockAtResourceLevelResult, error) { + ApplyT(func(v interface{}) (LookupManagementLockAtResourceLevelResultOutput, error) { args := v.(LookupManagementLockAtResourceLevelArgs) - r, err := LookupManagementLockAtResourceLevel(ctx, &args, opts...) - var s LookupManagementLockAtResourceLevelResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagementLockAtResourceLevelResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getManagementLockAtResourceLevel", args, &rv, "", opts...) + if err != nil { + return LookupManagementLockAtResourceLevelResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupManagementLockAtResourceLevelResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagementLockAtResourceLevelResultOutput), nil + } + return output, nil }).(LookupManagementLockAtResourceLevelResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtSubscriptionLevel.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtSubscriptionLevel.go index e4d904ce0..dd6462c31 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtSubscriptionLevel.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockAtSubscriptionLevel.go @@ -48,14 +48,20 @@ type LookupManagementLockAtSubscriptionLevelResult struct { func LookupManagementLockAtSubscriptionLevelOutput(ctx *pulumi.Context, args LookupManagementLockAtSubscriptionLevelOutputArgs, opts ...pulumi.InvokeOption) LookupManagementLockAtSubscriptionLevelResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagementLockAtSubscriptionLevelResult, error) { + ApplyT(func(v interface{}) (LookupManagementLockAtSubscriptionLevelResultOutput, error) { args := v.(LookupManagementLockAtSubscriptionLevelArgs) - r, err := LookupManagementLockAtSubscriptionLevel(ctx, &args, opts...) - var s LookupManagementLockAtSubscriptionLevelResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagementLockAtSubscriptionLevelResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getManagementLockAtSubscriptionLevel", args, &rv, "", opts...) + if err != nil { + return LookupManagementLockAtSubscriptionLevelResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupManagementLockAtSubscriptionLevelResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagementLockAtSubscriptionLevelResultOutput), nil + } + return output, nil }).(LookupManagementLockAtSubscriptionLevelResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockByScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockByScope.go index 8e838f3ba..622080bee 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockByScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getManagementLockByScope.go @@ -50,14 +50,20 @@ type LookupManagementLockByScopeResult struct { func LookupManagementLockByScopeOutput(ctx *pulumi.Context, args LookupManagementLockByScopeOutputArgs, opts ...pulumi.InvokeOption) LookupManagementLockByScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagementLockByScopeResult, error) { + ApplyT(func(v interface{}) (LookupManagementLockByScopeResultOutput, error) { args := v.(LookupManagementLockByScopeArgs) - r, err := LookupManagementLockByScope(ctx, &args, opts...) - var s LookupManagementLockByScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagementLockByScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getManagementLockByScope", args, &rv, "", opts...) + if err != nil { + return LookupManagementLockByScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupManagementLockByScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagementLockByScopeResultOutput), nil + } + return output, nil }).(LookupManagementLockByScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyAssignment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyAssignment.go index 1ceef23c5..a08d7ac5f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyAssignment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyAssignment.go @@ -85,14 +85,20 @@ func (val *LookupPolicyAssignmentResult) Defaults() *LookupPolicyAssignmentResul func LookupPolicyAssignmentOutput(ctx *pulumi.Context, args LookupPolicyAssignmentOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyAssignmentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyAssignmentResult, error) { + ApplyT(func(v interface{}) (LookupPolicyAssignmentResultOutput, error) { args := v.(LookupPolicyAssignmentArgs) - r, err := LookupPolicyAssignment(ctx, &args, opts...) - var s LookupPolicyAssignmentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyAssignmentResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicyAssignment", args, &rv, "", opts...) + if err != nil { + return LookupPolicyAssignmentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyAssignmentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyAssignmentResultOutput), nil + } + return output, nil }).(LookupPolicyAssignmentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinition.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinition.go index c1461c3e5..f6fb9ae66 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinition.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinition.go @@ -71,14 +71,20 @@ func (val *LookupPolicyDefinitionResult) Defaults() *LookupPolicyDefinitionResul func LookupPolicyDefinitionOutput(ctx *pulumi.Context, args LookupPolicyDefinitionOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyDefinitionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyDefinitionResult, error) { + ApplyT(func(v interface{}) (LookupPolicyDefinitionResultOutput, error) { args := v.(LookupPolicyDefinitionArgs) - r, err := LookupPolicyDefinition(ctx, &args, opts...) - var s LookupPolicyDefinitionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyDefinitionResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicyDefinition", args, &rv, "", opts...) + if err != nil { + return LookupPolicyDefinitionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyDefinitionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyDefinitionResultOutput), nil + } + return output, nil }).(LookupPolicyDefinitionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionAtManagementGroup.go index 4dfb94f95..e5f62ccac 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionAtManagementGroup.go @@ -73,14 +73,20 @@ func (val *LookupPolicyDefinitionAtManagementGroupResult) Defaults() *LookupPoli func LookupPolicyDefinitionAtManagementGroupOutput(ctx *pulumi.Context, args LookupPolicyDefinitionAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyDefinitionAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyDefinitionAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupPolicyDefinitionAtManagementGroupResultOutput, error) { args := v.(LookupPolicyDefinitionAtManagementGroupArgs) - r, err := LookupPolicyDefinitionAtManagementGroup(ctx, &args, opts...) - var s LookupPolicyDefinitionAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyDefinitionAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicyDefinitionAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupPolicyDefinitionAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyDefinitionAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyDefinitionAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupPolicyDefinitionAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersion.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersion.go index 04fd6ca89..9f834200a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersion.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersion.go @@ -75,14 +75,20 @@ func (val *LookupPolicyDefinitionVersionResult) Defaults() *LookupPolicyDefiniti func LookupPolicyDefinitionVersionOutput(ctx *pulumi.Context, args LookupPolicyDefinitionVersionOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyDefinitionVersionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyDefinitionVersionResult, error) { + ApplyT(func(v interface{}) (LookupPolicyDefinitionVersionResultOutput, error) { args := v.(LookupPolicyDefinitionVersionArgs) - r, err := LookupPolicyDefinitionVersion(ctx, &args, opts...) - var s LookupPolicyDefinitionVersionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyDefinitionVersionResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicyDefinitionVersion", args, &rv, "", opts...) + if err != nil { + return LookupPolicyDefinitionVersionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyDefinitionVersionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyDefinitionVersionResultOutput), nil + } + return output, nil }).(LookupPolicyDefinitionVersionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersionAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersionAtManagementGroup.go index f389b14db..b57559b28 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersionAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyDefinitionVersionAtManagementGroup.go @@ -77,14 +77,20 @@ func (val *LookupPolicyDefinitionVersionAtManagementGroupResult) Defaults() *Loo func LookupPolicyDefinitionVersionAtManagementGroupOutput(ctx *pulumi.Context, args LookupPolicyDefinitionVersionAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyDefinitionVersionAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyDefinitionVersionAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupPolicyDefinitionVersionAtManagementGroupResultOutput, error) { args := v.(LookupPolicyDefinitionVersionAtManagementGroupArgs) - r, err := LookupPolicyDefinitionVersionAtManagementGroup(ctx, &args, opts...) - var s LookupPolicyDefinitionVersionAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyDefinitionVersionAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicyDefinitionVersionAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupPolicyDefinitionVersionAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyDefinitionVersionAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyDefinitionVersionAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupPolicyDefinitionVersionAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyExemption.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyExemption.go index 8a32aeb2c..95caee75c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyExemption.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicyExemption.go @@ -75,14 +75,20 @@ func (val *LookupPolicyExemptionResult) Defaults() *LookupPolicyExemptionResult func LookupPolicyExemptionOutput(ctx *pulumi.Context, args LookupPolicyExemptionOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyExemptionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyExemptionResult, error) { + ApplyT(func(v interface{}) (LookupPolicyExemptionResultOutput, error) { args := v.(LookupPolicyExemptionArgs) - r, err := LookupPolicyExemption(ctx, &args, opts...) - var s LookupPolicyExemptionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyExemptionResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicyExemption", args, &rv, "", opts...) + if err != nil { + return LookupPolicyExemptionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyExemptionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyExemptionResultOutput), nil + } + return output, nil }).(LookupPolicyExemptionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinition.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinition.go index a71f46d2a..92e583ec1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinition.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinition.go @@ -58,14 +58,20 @@ type LookupPolicySetDefinitionResult struct { func LookupPolicySetDefinitionOutput(ctx *pulumi.Context, args LookupPolicySetDefinitionOutputArgs, opts ...pulumi.InvokeOption) LookupPolicySetDefinitionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicySetDefinitionResult, error) { + ApplyT(func(v interface{}) (LookupPolicySetDefinitionResultOutput, error) { args := v.(LookupPolicySetDefinitionArgs) - r, err := LookupPolicySetDefinition(ctx, &args, opts...) - var s LookupPolicySetDefinitionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicySetDefinitionResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicySetDefinition", args, &rv, "", opts...) + if err != nil { + return LookupPolicySetDefinitionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicySetDefinitionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicySetDefinitionResultOutput), nil + } + return output, nil }).(LookupPolicySetDefinitionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionAtManagementGroup.go index ac2508403..dae4c3c2d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionAtManagementGroup.go @@ -60,14 +60,20 @@ type LookupPolicySetDefinitionAtManagementGroupResult struct { func LookupPolicySetDefinitionAtManagementGroupOutput(ctx *pulumi.Context, args LookupPolicySetDefinitionAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupPolicySetDefinitionAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicySetDefinitionAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupPolicySetDefinitionAtManagementGroupResultOutput, error) { args := v.(LookupPolicySetDefinitionAtManagementGroupArgs) - r, err := LookupPolicySetDefinitionAtManagementGroup(ctx, &args, opts...) - var s LookupPolicySetDefinitionAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicySetDefinitionAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicySetDefinitionAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupPolicySetDefinitionAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicySetDefinitionAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicySetDefinitionAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupPolicySetDefinitionAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersion.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersion.go index 62f2dd1a4..40a16c0e0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersion.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersion.go @@ -62,14 +62,20 @@ type LookupPolicySetDefinitionVersionResult struct { func LookupPolicySetDefinitionVersionOutput(ctx *pulumi.Context, args LookupPolicySetDefinitionVersionOutputArgs, opts ...pulumi.InvokeOption) LookupPolicySetDefinitionVersionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicySetDefinitionVersionResult, error) { + ApplyT(func(v interface{}) (LookupPolicySetDefinitionVersionResultOutput, error) { args := v.(LookupPolicySetDefinitionVersionArgs) - r, err := LookupPolicySetDefinitionVersion(ctx, &args, opts...) - var s LookupPolicySetDefinitionVersionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicySetDefinitionVersionResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicySetDefinitionVersion", args, &rv, "", opts...) + if err != nil { + return LookupPolicySetDefinitionVersionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicySetDefinitionVersionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicySetDefinitionVersionResultOutput), nil + } + return output, nil }).(LookupPolicySetDefinitionVersionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersionAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersionAtManagementGroup.go index 883f4e904..7890e29e8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersionAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPolicySetDefinitionVersionAtManagementGroup.go @@ -64,14 +64,20 @@ type LookupPolicySetDefinitionVersionAtManagementGroupResult struct { func LookupPolicySetDefinitionVersionAtManagementGroupOutput(ctx *pulumi.Context, args LookupPolicySetDefinitionVersionAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupPolicySetDefinitionVersionAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicySetDefinitionVersionAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupPolicySetDefinitionVersionAtManagementGroupResultOutput, error) { args := v.(LookupPolicySetDefinitionVersionAtManagementGroupArgs) - r, err := LookupPolicySetDefinitionVersionAtManagementGroup(ctx, &args, opts...) - var s LookupPolicySetDefinitionVersionAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicySetDefinitionVersionAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPolicySetDefinitionVersionAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupPolicySetDefinitionVersionAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicySetDefinitionVersionAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicySetDefinitionVersionAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupPolicySetDefinitionVersionAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPrivateLinkAssociation.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPrivateLinkAssociation.go index 84bce34a8..89b8ccb4d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPrivateLinkAssociation.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getPrivateLinkAssociation.go @@ -43,14 +43,20 @@ type LookupPrivateLinkAssociationResult struct { func LookupPrivateLinkAssociationOutput(ctx *pulumi.Context, args LookupPrivateLinkAssociationOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateLinkAssociationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateLinkAssociationResult, error) { + ApplyT(func(v interface{}) (LookupPrivateLinkAssociationResultOutput, error) { args := v.(LookupPrivateLinkAssociationArgs) - r, err := LookupPrivateLinkAssociation(ctx, &args, opts...) - var s LookupPrivateLinkAssociationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateLinkAssociationResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getPrivateLinkAssociation", args, &rv, "", opts...) + if err != nil { + return LookupPrivateLinkAssociationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateLinkAssociationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateLinkAssociationResultOutput), nil + } + return output, nil }).(LookupPrivateLinkAssociationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getResourceManagementPrivateLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getResourceManagementPrivateLink.go index 5a27eb5a9..34b98440d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getResourceManagementPrivateLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getResourceManagementPrivateLink.go @@ -44,14 +44,20 @@ type LookupResourceManagementPrivateLinkResult struct { func LookupResourceManagementPrivateLinkOutput(ctx *pulumi.Context, args LookupResourceManagementPrivateLinkOutputArgs, opts ...pulumi.InvokeOption) LookupResourceManagementPrivateLinkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupResourceManagementPrivateLinkResult, error) { + ApplyT(func(v interface{}) (LookupResourceManagementPrivateLinkResultOutput, error) { args := v.(LookupResourceManagementPrivateLinkArgs) - r, err := LookupResourceManagementPrivateLink(ctx, &args, opts...) - var s LookupResourceManagementPrivateLinkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupResourceManagementPrivateLinkResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getResourceManagementPrivateLink", args, &rv, "", opts...) + if err != nil { + return LookupResourceManagementPrivateLinkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupResourceManagementPrivateLinkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupResourceManagementPrivateLinkResultOutput), nil + } + return output, nil }).(LookupResourceManagementPrivateLinkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleAssignment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleAssignment.go index 63f500a59..bc29e002c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleAssignment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleAssignment.go @@ -83,14 +83,20 @@ func (val *LookupRoleAssignmentResult) Defaults() *LookupRoleAssignmentResult { func LookupRoleAssignmentOutput(ctx *pulumi.Context, args LookupRoleAssignmentOutputArgs, opts ...pulumi.InvokeOption) LookupRoleAssignmentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRoleAssignmentResult, error) { + ApplyT(func(v interface{}) (LookupRoleAssignmentResultOutput, error) { args := v.(LookupRoleAssignmentArgs) - r, err := LookupRoleAssignment(ctx, &args, opts...) - var s LookupRoleAssignmentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoleAssignmentResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getRoleAssignment", args, &rv, "", opts...) + if err != nil { + return LookupRoleAssignmentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRoleAssignmentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRoleAssignmentResultOutput), nil + } + return output, nil }).(LookupRoleAssignmentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleDefinition.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleDefinition.go index 1bf667de6..eb32803f5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleDefinition.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleDefinition.go @@ -60,14 +60,20 @@ type LookupRoleDefinitionResult struct { func LookupRoleDefinitionOutput(ctx *pulumi.Context, args LookupRoleDefinitionOutputArgs, opts ...pulumi.InvokeOption) LookupRoleDefinitionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRoleDefinitionResult, error) { + ApplyT(func(v interface{}) (LookupRoleDefinitionResultOutput, error) { args := v.(LookupRoleDefinitionArgs) - r, err := LookupRoleDefinition(ctx, &args, opts...) - var s LookupRoleDefinitionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoleDefinitionResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getRoleDefinition", args, &rv, "", opts...) + if err != nil { + return LookupRoleDefinitionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRoleDefinitionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRoleDefinitionResultOutput), nil + } + return output, nil }).(LookupRoleDefinitionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleManagementPolicyAssignment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleManagementPolicyAssignment.go index e103e1bd5..9c6a6f7cb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleManagementPolicyAssignment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getRoleManagementPolicyAssignment.go @@ -54,14 +54,20 @@ type LookupRoleManagementPolicyAssignmentResult struct { func LookupRoleManagementPolicyAssignmentOutput(ctx *pulumi.Context, args LookupRoleManagementPolicyAssignmentOutputArgs, opts ...pulumi.InvokeOption) LookupRoleManagementPolicyAssignmentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRoleManagementPolicyAssignmentResult, error) { + ApplyT(func(v interface{}) (LookupRoleManagementPolicyAssignmentResultOutput, error) { args := v.(LookupRoleManagementPolicyAssignmentArgs) - r, err := LookupRoleManagementPolicyAssignment(ctx, &args, opts...) - var s LookupRoleManagementPolicyAssignmentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoleManagementPolicyAssignmentResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getRoleManagementPolicyAssignment", args, &rv, "", opts...) + if err != nil { + return LookupRoleManagementPolicyAssignmentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRoleManagementPolicyAssignmentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRoleManagementPolicyAssignmentResultOutput), nil + } + return output, nil }).(LookupRoleManagementPolicyAssignmentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewHistoryDefinitionById.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewHistoryDefinitionById.go index 6f6cf31b5..1ada76d3c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewHistoryDefinitionById.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewHistoryDefinitionById.go @@ -74,14 +74,20 @@ type LookupScopeAccessReviewHistoryDefinitionByIdResult struct { func LookupScopeAccessReviewHistoryDefinitionByIdOutput(ctx *pulumi.Context, args LookupScopeAccessReviewHistoryDefinitionByIdOutputArgs, opts ...pulumi.InvokeOption) LookupScopeAccessReviewHistoryDefinitionByIdResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupScopeAccessReviewHistoryDefinitionByIdResult, error) { + ApplyT(func(v interface{}) (LookupScopeAccessReviewHistoryDefinitionByIdResultOutput, error) { args := v.(LookupScopeAccessReviewHistoryDefinitionByIdArgs) - r, err := LookupScopeAccessReviewHistoryDefinitionById(ctx, &args, opts...) - var s LookupScopeAccessReviewHistoryDefinitionByIdResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupScopeAccessReviewHistoryDefinitionByIdResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getScopeAccessReviewHistoryDefinitionById", args, &rv, "", opts...) + if err != nil { + return LookupScopeAccessReviewHistoryDefinitionByIdResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupScopeAccessReviewHistoryDefinitionByIdResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupScopeAccessReviewHistoryDefinitionByIdResultOutput), nil + } + return output, nil }).(LookupScopeAccessReviewHistoryDefinitionByIdResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewScheduleDefinitionById.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewScheduleDefinitionById.go index 5a05b0e04..1bf4f07e4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewScheduleDefinitionById.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getScopeAccessReviewScheduleDefinitionById.go @@ -110,14 +110,20 @@ type LookupScopeAccessReviewScheduleDefinitionByIdResult struct { func LookupScopeAccessReviewScheduleDefinitionByIdOutput(ctx *pulumi.Context, args LookupScopeAccessReviewScheduleDefinitionByIdOutputArgs, opts ...pulumi.InvokeOption) LookupScopeAccessReviewScheduleDefinitionByIdResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupScopeAccessReviewScheduleDefinitionByIdResult, error) { + ApplyT(func(v interface{}) (LookupScopeAccessReviewScheduleDefinitionByIdResultOutput, error) { args := v.(LookupScopeAccessReviewScheduleDefinitionByIdArgs) - r, err := LookupScopeAccessReviewScheduleDefinitionById(ctx, &args, opts...) - var s LookupScopeAccessReviewScheduleDefinitionByIdResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupScopeAccessReviewScheduleDefinitionByIdResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getScopeAccessReviewScheduleDefinitionById", args, &rv, "", opts...) + if err != nil { + return LookupScopeAccessReviewScheduleDefinitionByIdResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupScopeAccessReviewScheduleDefinitionByIdResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupScopeAccessReviewScheduleDefinitionByIdResultOutput), nil + } + return output, nil }).(LookupScopeAccessReviewScheduleDefinitionByIdResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariable.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariable.go index 2307a2cb4..0c61b551c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariable.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariable.go @@ -44,14 +44,20 @@ type LookupVariableResult struct { func LookupVariableOutput(ctx *pulumi.Context, args LookupVariableOutputArgs, opts ...pulumi.InvokeOption) LookupVariableResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVariableResult, error) { + ApplyT(func(v interface{}) (LookupVariableResultOutput, error) { args := v.(LookupVariableArgs) - r, err := LookupVariable(ctx, &args, opts...) - var s LookupVariableResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVariableResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getVariable", args, &rv, "", opts...) + if err != nil { + return LookupVariableResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVariableResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVariableResultOutput), nil + } + return output, nil }).(LookupVariableResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableAtManagementGroup.go index 8e4bd9495..46a4f6814 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableAtManagementGroup.go @@ -46,14 +46,20 @@ type LookupVariableAtManagementGroupResult struct { func LookupVariableAtManagementGroupOutput(ctx *pulumi.Context, args LookupVariableAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupVariableAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVariableAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupVariableAtManagementGroupResultOutput, error) { args := v.(LookupVariableAtManagementGroupArgs) - r, err := LookupVariableAtManagementGroup(ctx, &args, opts...) - var s LookupVariableAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVariableAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getVariableAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupVariableAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVariableAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVariableAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupVariableAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValue.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValue.go index 64454c920..650988cd1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValue.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValue.go @@ -46,14 +46,20 @@ type LookupVariableValueResult struct { func LookupVariableValueOutput(ctx *pulumi.Context, args LookupVariableValueOutputArgs, opts ...pulumi.InvokeOption) LookupVariableValueResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVariableValueResult, error) { + ApplyT(func(v interface{}) (LookupVariableValueResultOutput, error) { args := v.(LookupVariableValueArgs) - r, err := LookupVariableValue(ctx, &args, opts...) - var s LookupVariableValueResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVariableValueResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getVariableValue", args, &rv, "", opts...) + if err != nil { + return LookupVariableValueResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVariableValueResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVariableValueResultOutput), nil + } + return output, nil }).(LookupVariableValueResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValueAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValueAtManagementGroup.go index d30e21d03..bba760d50 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValueAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/getVariableValueAtManagementGroup.go @@ -48,14 +48,20 @@ type LookupVariableValueAtManagementGroupResult struct { func LookupVariableValueAtManagementGroupOutput(ctx *pulumi.Context, args LookupVariableValueAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupVariableValueAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVariableValueAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupVariableValueAtManagementGroupResultOutput, error) { args := v.(LookupVariableValueAtManagementGroupArgs) - r, err := LookupVariableValueAtManagementGroup(ctx, &args, opts...) - var s LookupVariableValueAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVariableValueAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:getVariableValueAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupVariableValueAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVariableValueAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVariableValueAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupVariableValueAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAll.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAll.go index a880060c2..d9e6f9114 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAll.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAll.go @@ -38,14 +38,20 @@ type ListPolicyDefinitionVersionAllResult struct { func ListPolicyDefinitionVersionAllOutput(ctx *pulumi.Context, args ListPolicyDefinitionVersionAllOutputArgs, opts ...pulumi.InvokeOption) ListPolicyDefinitionVersionAllResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListPolicyDefinitionVersionAllResult, error) { + ApplyT(func(v interface{}) (ListPolicyDefinitionVersionAllResultOutput, error) { args := v.(ListPolicyDefinitionVersionAllArgs) - r, err := ListPolicyDefinitionVersionAll(ctx, &args, opts...) - var s ListPolicyDefinitionVersionAllResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListPolicyDefinitionVersionAllResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:listPolicyDefinitionVersionAll", args, &rv, "", opts...) + if err != nil { + return ListPolicyDefinitionVersionAllResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListPolicyDefinitionVersionAllResultOutput) + if secret { + return pulumi.ToSecret(output).(ListPolicyDefinitionVersionAllResultOutput), nil + } + return output, nil }).(ListPolicyDefinitionVersionAllResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllAtManagementGroup.go index 656e4c4c0..e026f2c4c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllAtManagementGroup.go @@ -40,14 +40,20 @@ type ListPolicyDefinitionVersionAllAtManagementGroupResult struct { func ListPolicyDefinitionVersionAllAtManagementGroupOutput(ctx *pulumi.Context, args ListPolicyDefinitionVersionAllAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) ListPolicyDefinitionVersionAllAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListPolicyDefinitionVersionAllAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (ListPolicyDefinitionVersionAllAtManagementGroupResultOutput, error) { args := v.(ListPolicyDefinitionVersionAllAtManagementGroupArgs) - r, err := ListPolicyDefinitionVersionAllAtManagementGroup(ctx, &args, opts...) - var s ListPolicyDefinitionVersionAllAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListPolicyDefinitionVersionAllAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:listPolicyDefinitionVersionAllAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return ListPolicyDefinitionVersionAllAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListPolicyDefinitionVersionAllAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(ListPolicyDefinitionVersionAllAtManagementGroupResultOutput), nil + } + return output, nil }).(ListPolicyDefinitionVersionAllAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllBuiltins.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllBuiltins.go index 94af3fd6f..441e7cd02 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllBuiltins.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicyDefinitionVersionAllBuiltins.go @@ -38,14 +38,20 @@ type ListPolicyDefinitionVersionAllBuiltinsResult struct { func ListPolicyDefinitionVersionAllBuiltinsOutput(ctx *pulumi.Context, args ListPolicyDefinitionVersionAllBuiltinsOutputArgs, opts ...pulumi.InvokeOption) ListPolicyDefinitionVersionAllBuiltinsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListPolicyDefinitionVersionAllBuiltinsResult, error) { + ApplyT(func(v interface{}) (ListPolicyDefinitionVersionAllBuiltinsResultOutput, error) { args := v.(ListPolicyDefinitionVersionAllBuiltinsArgs) - r, err := ListPolicyDefinitionVersionAllBuiltins(ctx, &args, opts...) - var s ListPolicyDefinitionVersionAllBuiltinsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListPolicyDefinitionVersionAllBuiltinsResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:listPolicyDefinitionVersionAllBuiltins", args, &rv, "", opts...) + if err != nil { + return ListPolicyDefinitionVersionAllBuiltinsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListPolicyDefinitionVersionAllBuiltinsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListPolicyDefinitionVersionAllBuiltinsResultOutput), nil + } + return output, nil }).(ListPolicyDefinitionVersionAllBuiltinsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAll.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAll.go index 46985e349..718921244 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAll.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAll.go @@ -38,14 +38,20 @@ type ListPolicySetDefinitionVersionAllResult struct { func ListPolicySetDefinitionVersionAllOutput(ctx *pulumi.Context, args ListPolicySetDefinitionVersionAllOutputArgs, opts ...pulumi.InvokeOption) ListPolicySetDefinitionVersionAllResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListPolicySetDefinitionVersionAllResult, error) { + ApplyT(func(v interface{}) (ListPolicySetDefinitionVersionAllResultOutput, error) { args := v.(ListPolicySetDefinitionVersionAllArgs) - r, err := ListPolicySetDefinitionVersionAll(ctx, &args, opts...) - var s ListPolicySetDefinitionVersionAllResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListPolicySetDefinitionVersionAllResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:listPolicySetDefinitionVersionAll", args, &rv, "", opts...) + if err != nil { + return ListPolicySetDefinitionVersionAllResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListPolicySetDefinitionVersionAllResultOutput) + if secret { + return pulumi.ToSecret(output).(ListPolicySetDefinitionVersionAllResultOutput), nil + } + return output, nil }).(ListPolicySetDefinitionVersionAllResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllAtManagementGroup.go index b39bdeaf5..e67248b53 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllAtManagementGroup.go @@ -40,14 +40,20 @@ type ListPolicySetDefinitionVersionAllAtManagementGroupResult struct { func ListPolicySetDefinitionVersionAllAtManagementGroupOutput(ctx *pulumi.Context, args ListPolicySetDefinitionVersionAllAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) ListPolicySetDefinitionVersionAllAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListPolicySetDefinitionVersionAllAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (ListPolicySetDefinitionVersionAllAtManagementGroupResultOutput, error) { args := v.(ListPolicySetDefinitionVersionAllAtManagementGroupArgs) - r, err := ListPolicySetDefinitionVersionAllAtManagementGroup(ctx, &args, opts...) - var s ListPolicySetDefinitionVersionAllAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListPolicySetDefinitionVersionAllAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:listPolicySetDefinitionVersionAllAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return ListPolicySetDefinitionVersionAllAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListPolicySetDefinitionVersionAllAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(ListPolicySetDefinitionVersionAllAtManagementGroupResultOutput), nil + } + return output, nil }).(ListPolicySetDefinitionVersionAllAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllBuiltins.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllBuiltins.go index 0403dc7f9..eb55a4832 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllBuiltins.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/listPolicySetDefinitionVersionAllBuiltins.go @@ -38,14 +38,20 @@ type ListPolicySetDefinitionVersionAllBuiltinsResult struct { func ListPolicySetDefinitionVersionAllBuiltinsOutput(ctx *pulumi.Context, args ListPolicySetDefinitionVersionAllBuiltinsOutputArgs, opts ...pulumi.InvokeOption) ListPolicySetDefinitionVersionAllBuiltinsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListPolicySetDefinitionVersionAllBuiltinsResult, error) { + ApplyT(func(v interface{}) (ListPolicySetDefinitionVersionAllBuiltinsResultOutput, error) { args := v.(ListPolicySetDefinitionVersionAllBuiltinsArgs) - r, err := ListPolicySetDefinitionVersionAllBuiltins(ctx, &args, opts...) - var s ListPolicySetDefinitionVersionAllBuiltinsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListPolicySetDefinitionVersionAllBuiltinsResult + secret, err := ctx.InvokePackageRaw("azure-native:authorization:listPolicySetDefinitionVersionAllBuiltins", args, &rv, "", opts...) + if err != nil { + return ListPolicySetDefinitionVersionAllBuiltinsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListPolicySetDefinitionVersionAllBuiltinsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListPolicySetDefinitionVersionAllBuiltinsResultOutput), nil + } + return output, nil }).(ListPolicySetDefinitionVersionAllBuiltinsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/pulumi-plugin.json b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/pulumi-plugin.json index 5e48be47c..3825324d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/pulumi-plugin.json +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/authorization/v2/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azure-native", - "version": "2.53.0" + "version": "2.64.2" } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/availabilitySet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/availabilitySet.go index 9c1945d27..56abd50e5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/availabilitySet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/availabilitySet.go @@ -15,7 +15,7 @@ import ( // Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Availability sets overview](https://docs.microsoft.com/azure/virtual-machines/availability-set-overview). For more information on Azure planned maintenance, see [Maintenance and updates for Virtual Machines in Azure](https://docs.microsoft.com/azure/virtual-machines/maintenance-and-updates). Currently, a VM can only be added to an availability set at creation time. An existing VM cannot be added to an availability set. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type AvailabilitySet struct { pulumi.CustomResourceState @@ -124,6 +124,9 @@ func NewAvailabilitySet(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:AvailabilitySet"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:AvailabilitySet"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservation.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservation.go index e53ee26f2..e99313413 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservation.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservation.go @@ -15,7 +15,7 @@ import ( // Specifies information about the capacity reservation. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-04-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type CapacityReservation struct { pulumi.CustomResourceState @@ -94,6 +94,9 @@ func NewCapacityReservation(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:CapacityReservation"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:CapacityReservation"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservationGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservationGroup.go index 17050d39e..16ed48dcd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservationGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/capacityReservationGroup.go @@ -15,7 +15,7 @@ import ( // Specifies information about the capacity reservation group that the capacity reservations should be assigned to. Currently, a capacity reservation can only be added to a capacity reservation group at creation time. An existing capacity reservation cannot be added or moved to another capacity reservation group. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-04-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type CapacityReservationGroup struct { pulumi.CustomResourceState @@ -78,6 +78,9 @@ func NewCapacityReservationGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:CapacityReservationGroup"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:CapacityReservationGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHost.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHost.go index 96ba81469..c92217726 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHost.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHost.go @@ -15,7 +15,7 @@ import ( // Specifies information about the Dedicated host. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type DedicatedHost struct { pulumi.CustomResourceState @@ -114,6 +114,9 @@ func NewDedicatedHost(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:DedicatedHost"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:DedicatedHost"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHostGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHostGroup.go index 731cd97c3..a4f1dc567 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHostGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/dedicatedHostGroup.go @@ -15,7 +15,7 @@ import ( // Specifies information about the dedicated host group that the dedicated hosts should be assigned to. Currently, a dedicated host can only be added to a dedicated host group at creation time. An existing dedicated host cannot be added to another dedicated host group. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type DedicatedHostGroup struct { pulumi.CustomResourceState @@ -103,6 +103,9 @@ func NewDedicatedHostGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:DedicatedHostGroup"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:DedicatedHostGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/disk.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/disk.go index 2d9fb91f9..2d07569c1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/disk.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/disk.go @@ -15,7 +15,7 @@ import ( // Disk resource. // Azure REST API version: 2022-07-02. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2016-04-30-preview, 2018-06-01, 2019-07-01, 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2016-04-30-preview, 2018-06-01, 2019-07-01, 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. type Disk struct { pulumi.CustomResourceState @@ -175,6 +175,9 @@ func NewDisk(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20231002:Disk"), }, + { + Type: pulumi.String("azure-native:compute/v20240302:Disk"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccess.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccess.go index dd46119ff..d8aa58a30 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccess.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccess.go @@ -15,7 +15,7 @@ import ( // disk access resource. // Azure REST API version: 2022-07-02. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. type DiskAccess struct { pulumi.CustomResourceState @@ -84,6 +84,9 @@ func NewDiskAccess(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20231002:DiskAccess"), }, + { + Type: pulumi.String("azure-native:compute/v20240302:DiskAccess"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccessAPrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccessAPrivateEndpointConnection.go index abff236d7..cf5b16899 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccessAPrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskAccessAPrivateEndpointConnection.go @@ -15,7 +15,7 @@ import ( // The Private Endpoint Connection resource. // Azure REST API version: 2022-07-02. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. type DiskAccessAPrivateEndpointConnection struct { pulumi.CustomResourceState @@ -78,6 +78,9 @@ func NewDiskAccessAPrivateEndpointConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20231002:DiskAccessAPrivateEndpointConnection"), }, + { + Type: pulumi.String("azure-native:compute/v20240302:DiskAccessAPrivateEndpointConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskEncryptionSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskEncryptionSet.go index 19a1fa5dd..7e2a57af9 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskEncryptionSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/diskEncryptionSet.go @@ -15,7 +15,7 @@ import ( // disk encryption set resource. // Azure REST API version: 2022-07-02. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2020-06-30, 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2020-06-30, 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. type DiskEncryptionSet struct { pulumi.CustomResourceState @@ -100,6 +100,9 @@ func NewDiskEncryptionSet(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20231002:DiskEncryptionSet"), }, + { + Type: pulumi.String("azure-native:compute/v20240302:DiskEncryptionSet"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getAvailabilitySet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getAvailabilitySet.go index 6a2fdf760..c8b326222 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getAvailabilitySet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getAvailabilitySet.go @@ -14,7 +14,7 @@ import ( // Retrieves information about an availability set. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupAvailabilitySet(ctx *pulumi.Context, args *LookupAvailabilitySetArgs, opts ...pulumi.InvokeOption) (*LookupAvailabilitySetResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupAvailabilitySetResult @@ -60,14 +60,20 @@ type LookupAvailabilitySetResult struct { func LookupAvailabilitySetOutput(ctx *pulumi.Context, args LookupAvailabilitySetOutputArgs, opts ...pulumi.InvokeOption) LookupAvailabilitySetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAvailabilitySetResult, error) { + ApplyT(func(v interface{}) (LookupAvailabilitySetResultOutput, error) { args := v.(LookupAvailabilitySetArgs) - r, err := LookupAvailabilitySet(ctx, &args, opts...) - var s LookupAvailabilitySetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAvailabilitySetResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getAvailabilitySet", args, &rv, "", opts...) + if err != nil { + return LookupAvailabilitySetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAvailabilitySetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAvailabilitySetResultOutput), nil + } + return output, nil }).(LookupAvailabilitySetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservation.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservation.go index 87d28e704..f6b31c0e0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservation.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservation.go @@ -14,7 +14,7 @@ import ( // The operation that retrieves information about the capacity reservation. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupCapacityReservation(ctx *pulumi.Context, args *LookupCapacityReservationArgs, opts ...pulumi.InvokeOption) (*LookupCapacityReservationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupCapacityReservationResult @@ -70,14 +70,20 @@ type LookupCapacityReservationResult struct { func LookupCapacityReservationOutput(ctx *pulumi.Context, args LookupCapacityReservationOutputArgs, opts ...pulumi.InvokeOption) LookupCapacityReservationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCapacityReservationResult, error) { + ApplyT(func(v interface{}) (LookupCapacityReservationResultOutput, error) { args := v.(LookupCapacityReservationArgs) - r, err := LookupCapacityReservation(ctx, &args, opts...) - var s LookupCapacityReservationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupCapacityReservationResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getCapacityReservation", args, &rv, "", opts...) + if err != nil { + return LookupCapacityReservationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCapacityReservationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCapacityReservationResultOutput), nil + } + return output, nil }).(LookupCapacityReservationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservationGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservationGroup.go index 37d15aaca..799198a05 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservationGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCapacityReservationGroup.go @@ -14,7 +14,7 @@ import ( // The operation that retrieves information about a capacity reservation group. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupCapacityReservationGroup(ctx *pulumi.Context, args *LookupCapacityReservationGroupArgs, opts ...pulumi.InvokeOption) (*LookupCapacityReservationGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupCapacityReservationGroupResult @@ -58,14 +58,20 @@ type LookupCapacityReservationGroupResult struct { func LookupCapacityReservationGroupOutput(ctx *pulumi.Context, args LookupCapacityReservationGroupOutputArgs, opts ...pulumi.InvokeOption) LookupCapacityReservationGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCapacityReservationGroupResult, error) { + ApplyT(func(v interface{}) (LookupCapacityReservationGroupResultOutput, error) { args := v.(LookupCapacityReservationGroupArgs) - r, err := LookupCapacityReservationGroup(ctx, &args, opts...) - var s LookupCapacityReservationGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupCapacityReservationGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getCapacityReservationGroup", args, &rv, "", opts...) + if err != nil { + return LookupCapacityReservationGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCapacityReservationGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCapacityReservationGroupResultOutput), nil + } + return output, nil }).(LookupCapacityReservationGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCloudService.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCloudService.go index 78e4a184c..c50f1f1de 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCloudService.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getCloudService.go @@ -52,14 +52,20 @@ type LookupCloudServiceResult struct { func LookupCloudServiceOutput(ctx *pulumi.Context, args LookupCloudServiceOutputArgs, opts ...pulumi.InvokeOption) LookupCloudServiceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCloudServiceResult, error) { + ApplyT(func(v interface{}) (LookupCloudServiceResultOutput, error) { args := v.(LookupCloudServiceArgs) - r, err := LookupCloudService(ctx, &args, opts...) - var s LookupCloudServiceResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupCloudServiceResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getCloudService", args, &rv, "", opts...) + if err != nil { + return LookupCloudServiceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCloudServiceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCloudServiceResultOutput), nil + } + return output, nil }).(LookupCloudServiceResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHost.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHost.go index f44a9614a..bee8fc93e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHost.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHost.go @@ -14,7 +14,7 @@ import ( // Retrieves information about a dedicated host. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupDedicatedHost(ctx *pulumi.Context, args *LookupDedicatedHostArgs, opts ...pulumi.InvokeOption) (*LookupDedicatedHostResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDedicatedHostResult @@ -72,14 +72,20 @@ type LookupDedicatedHostResult struct { func LookupDedicatedHostOutput(ctx *pulumi.Context, args LookupDedicatedHostOutputArgs, opts ...pulumi.InvokeOption) LookupDedicatedHostResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDedicatedHostResult, error) { + ApplyT(func(v interface{}) (LookupDedicatedHostResultOutput, error) { args := v.(LookupDedicatedHostArgs) - r, err := LookupDedicatedHost(ctx, &args, opts...) - var s LookupDedicatedHostResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDedicatedHostResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getDedicatedHost", args, &rv, "", opts...) + if err != nil { + return LookupDedicatedHostResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDedicatedHostResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDedicatedHostResultOutput), nil + } + return output, nil }).(LookupDedicatedHostResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHostGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHostGroup.go index 65619ef34..f524ee445 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHostGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDedicatedHostGroup.go @@ -14,7 +14,7 @@ import ( // Retrieves information about a dedicated host group. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupDedicatedHostGroup(ctx *pulumi.Context, args *LookupDedicatedHostGroupArgs, opts ...pulumi.InvokeOption) (*LookupDedicatedHostGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDedicatedHostGroupResult @@ -62,14 +62,20 @@ type LookupDedicatedHostGroupResult struct { func LookupDedicatedHostGroupOutput(ctx *pulumi.Context, args LookupDedicatedHostGroupOutputArgs, opts ...pulumi.InvokeOption) LookupDedicatedHostGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDedicatedHostGroupResult, error) { + ApplyT(func(v interface{}) (LookupDedicatedHostGroupResultOutput, error) { args := v.(LookupDedicatedHostGroupArgs) - r, err := LookupDedicatedHostGroup(ctx, &args, opts...) - var s LookupDedicatedHostGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDedicatedHostGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getDedicatedHostGroup", args, &rv, "", opts...) + if err != nil { + return LookupDedicatedHostGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDedicatedHostGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDedicatedHostGroupResultOutput), nil + } + return output, nil }).(LookupDedicatedHostGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDisk.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDisk.go index 445fb6edf..dbc084dbe 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDisk.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDisk.go @@ -14,7 +14,7 @@ import ( // Gets information about a disk. // Azure REST API version: 2022-07-02. // -// Other available API versions: 2016-04-30-preview, 2018-06-01, 2019-07-01, 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2016-04-30-preview, 2018-06-01, 2019-07-01, 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. func LookupDisk(ctx *pulumi.Context, args *LookupDiskArgs, opts ...pulumi.InvokeOption) (*LookupDiskResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDiskResult @@ -120,14 +120,20 @@ type LookupDiskResult struct { func LookupDiskOutput(ctx *pulumi.Context, args LookupDiskOutputArgs, opts ...pulumi.InvokeOption) LookupDiskResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDiskResult, error) { + ApplyT(func(v interface{}) (LookupDiskResultOutput, error) { args := v.(LookupDiskArgs) - r, err := LookupDisk(ctx, &args, opts...) - var s LookupDiskResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDiskResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getDisk", args, &rv, "", opts...) + if err != nil { + return LookupDiskResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDiskResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDiskResultOutput), nil + } + return output, nil }).(LookupDiskResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccess.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccess.go index db34b1822..26b15cc93 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccess.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccess.go @@ -14,7 +14,7 @@ import ( // Gets information about a disk access resource. // Azure REST API version: 2022-07-02. // -// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. func LookupDiskAccess(ctx *pulumi.Context, args *LookupDiskAccessArgs, opts ...pulumi.InvokeOption) (*LookupDiskAccessResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDiskAccessResult @@ -56,14 +56,20 @@ type LookupDiskAccessResult struct { func LookupDiskAccessOutput(ctx *pulumi.Context, args LookupDiskAccessOutputArgs, opts ...pulumi.InvokeOption) LookupDiskAccessResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDiskAccessResult, error) { + ApplyT(func(v interface{}) (LookupDiskAccessResultOutput, error) { args := v.(LookupDiskAccessArgs) - r, err := LookupDiskAccess(ctx, &args, opts...) - var s LookupDiskAccessResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDiskAccessResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getDiskAccess", args, &rv, "", opts...) + if err != nil { + return LookupDiskAccessResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDiskAccessResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDiskAccessResultOutput), nil + } + return output, nil }).(LookupDiskAccessResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccessAPrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccessAPrivateEndpointConnection.go index f21a442fb..671f96acc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccessAPrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskAccessAPrivateEndpointConnection.go @@ -14,7 +14,7 @@ import ( // Gets information about a private endpoint connection under a disk access resource. // Azure REST API version: 2022-07-02. // -// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. func LookupDiskAccessAPrivateEndpointConnection(ctx *pulumi.Context, args *LookupDiskAccessAPrivateEndpointConnectionArgs, opts ...pulumi.InvokeOption) (*LookupDiskAccessAPrivateEndpointConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDiskAccessAPrivateEndpointConnectionResult @@ -52,14 +52,20 @@ type LookupDiskAccessAPrivateEndpointConnectionResult struct { func LookupDiskAccessAPrivateEndpointConnectionOutput(ctx *pulumi.Context, args LookupDiskAccessAPrivateEndpointConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupDiskAccessAPrivateEndpointConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDiskAccessAPrivateEndpointConnectionResult, error) { + ApplyT(func(v interface{}) (LookupDiskAccessAPrivateEndpointConnectionResultOutput, error) { args := v.(LookupDiskAccessAPrivateEndpointConnectionArgs) - r, err := LookupDiskAccessAPrivateEndpointConnection(ctx, &args, opts...) - var s LookupDiskAccessAPrivateEndpointConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDiskAccessAPrivateEndpointConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getDiskAccessAPrivateEndpointConnection", args, &rv, "", opts...) + if err != nil { + return LookupDiskAccessAPrivateEndpointConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDiskAccessAPrivateEndpointConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDiskAccessAPrivateEndpointConnectionResultOutput), nil + } + return output, nil }).(LookupDiskAccessAPrivateEndpointConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskEncryptionSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskEncryptionSet.go index c09be6ca9..2980df21a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskEncryptionSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getDiskEncryptionSet.go @@ -14,7 +14,7 @@ import ( // Gets information about a disk encryption set. // Azure REST API version: 2022-07-02. // -// Other available API versions: 2020-06-30, 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2020-06-30, 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. func LookupDiskEncryptionSet(ctx *pulumi.Context, args *LookupDiskEncryptionSetArgs, opts ...pulumi.InvokeOption) (*LookupDiskEncryptionSetResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDiskEncryptionSetResult @@ -66,14 +66,20 @@ type LookupDiskEncryptionSetResult struct { func LookupDiskEncryptionSetOutput(ctx *pulumi.Context, args LookupDiskEncryptionSetOutputArgs, opts ...pulumi.InvokeOption) LookupDiskEncryptionSetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDiskEncryptionSetResult, error) { + ApplyT(func(v interface{}) (LookupDiskEncryptionSetResultOutput, error) { args := v.(LookupDiskEncryptionSetArgs) - r, err := LookupDiskEncryptionSet(ctx, &args, opts...) - var s LookupDiskEncryptionSetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDiskEncryptionSetResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getDiskEncryptionSet", args, &rv, "", opts...) + if err != nil { + return LookupDiskEncryptionSetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDiskEncryptionSetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDiskEncryptionSetResultOutput), nil + } + return output, nil }).(LookupDiskEncryptionSetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGallery.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGallery.go index 072f837c8..b404f02a3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGallery.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGallery.go @@ -64,14 +64,20 @@ type LookupGalleryResult struct { func LookupGalleryOutput(ctx *pulumi.Context, args LookupGalleryOutputArgs, opts ...pulumi.InvokeOption) LookupGalleryResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupGalleryResult, error) { + ApplyT(func(v interface{}) (LookupGalleryResultOutput, error) { args := v.(LookupGalleryArgs) - r, err := LookupGallery(ctx, &args, opts...) - var s LookupGalleryResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupGalleryResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getGallery", args, &rv, "", opts...) + if err != nil { + return LookupGalleryResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupGalleryResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGalleryResultOutput), nil + } + return output, nil }).(LookupGalleryResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplication.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplication.go index 9ac549fd1..031897582 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplication.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplication.go @@ -64,14 +64,20 @@ type LookupGalleryApplicationResult struct { func LookupGalleryApplicationOutput(ctx *pulumi.Context, args LookupGalleryApplicationOutputArgs, opts ...pulumi.InvokeOption) LookupGalleryApplicationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupGalleryApplicationResult, error) { + ApplyT(func(v interface{}) (LookupGalleryApplicationResultOutput, error) { args := v.(LookupGalleryApplicationArgs) - r, err := LookupGalleryApplication(ctx, &args, opts...) - var s LookupGalleryApplicationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupGalleryApplicationResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getGalleryApplication", args, &rv, "", opts...) + if err != nil { + return LookupGalleryApplicationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupGalleryApplicationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGalleryApplicationResultOutput), nil + } + return output, nil }).(LookupGalleryApplicationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplicationVersion.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplicationVersion.go index 082f66b93..d1c7c4d57 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplicationVersion.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryApplicationVersion.go @@ -62,14 +62,20 @@ type LookupGalleryApplicationVersionResult struct { func LookupGalleryApplicationVersionOutput(ctx *pulumi.Context, args LookupGalleryApplicationVersionOutputArgs, opts ...pulumi.InvokeOption) LookupGalleryApplicationVersionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupGalleryApplicationVersionResult, error) { + ApplyT(func(v interface{}) (LookupGalleryApplicationVersionResultOutput, error) { args := v.(LookupGalleryApplicationVersionArgs) - r, err := LookupGalleryApplicationVersion(ctx, &args, opts...) - var s LookupGalleryApplicationVersionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupGalleryApplicationVersionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getGalleryApplicationVersion", args, &rv, "", opts...) + if err != nil { + return LookupGalleryApplicationVersionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupGalleryApplicationVersionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGalleryApplicationVersionResultOutput), nil + } + return output, nil }).(LookupGalleryApplicationVersionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImage.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImage.go index 38070958a..c636442e6 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImage.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImage.go @@ -80,14 +80,20 @@ type LookupGalleryImageResult struct { func LookupGalleryImageOutput(ctx *pulumi.Context, args LookupGalleryImageOutputArgs, opts ...pulumi.InvokeOption) LookupGalleryImageResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupGalleryImageResult, error) { + ApplyT(func(v interface{}) (LookupGalleryImageResultOutput, error) { args := v.(LookupGalleryImageArgs) - r, err := LookupGalleryImage(ctx, &args, opts...) - var s LookupGalleryImageResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupGalleryImageResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getGalleryImage", args, &rv, "", opts...) + if err != nil { + return LookupGalleryImageResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupGalleryImageResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGalleryImageResultOutput), nil + } + return output, nil }).(LookupGalleryImageResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImageVersion.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImageVersion.go index 89ec778b2..b804d113b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImageVersion.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getGalleryImageVersion.go @@ -64,14 +64,20 @@ type LookupGalleryImageVersionResult struct { func LookupGalleryImageVersionOutput(ctx *pulumi.Context, args LookupGalleryImageVersionOutputArgs, opts ...pulumi.InvokeOption) LookupGalleryImageVersionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupGalleryImageVersionResult, error) { + ApplyT(func(v interface{}) (LookupGalleryImageVersionResultOutput, error) { args := v.(LookupGalleryImageVersionArgs) - r, err := LookupGalleryImageVersion(ctx, &args, opts...) - var s LookupGalleryImageVersionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupGalleryImageVersionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getGalleryImageVersion", args, &rv, "", opts...) + if err != nil { + return LookupGalleryImageVersionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupGalleryImageVersionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupGalleryImageVersionResultOutput), nil + } + return output, nil }).(LookupGalleryImageVersionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getImage.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getImage.go index f4372050d..eecce3266 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getImage.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getImage.go @@ -14,7 +14,7 @@ import ( // Gets an image. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupImage(ctx *pulumi.Context, args *LookupImageArgs, opts ...pulumi.InvokeOption) (*LookupImageResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupImageResult @@ -60,14 +60,20 @@ type LookupImageResult struct { func LookupImageOutput(ctx *pulumi.Context, args LookupImageOutputArgs, opts ...pulumi.InvokeOption) LookupImageResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupImageResult, error) { + ApplyT(func(v interface{}) (LookupImageResultOutput, error) { args := v.(LookupImageArgs) - r, err := LookupImage(ctx, &args, opts...) - var s LookupImageResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupImageResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getImage", args, &rv, "", opts...) + if err != nil { + return LookupImageResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupImageResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupImageResultOutput), nil + } + return output, nil }).(LookupImageResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportRequestRateByInterval.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportRequestRateByInterval.go index b741d27c0..57cb616c5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportRequestRateByInterval.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportRequestRateByInterval.go @@ -14,7 +14,7 @@ import ( // Export logs that show Api requests made by this subscription in the given time window to show throttling activities. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2017-12-01, 2018-04-01, 2018-06-01, 2018-10-01, 2019-03-01, 2019-07-01, 2019-12-01, 2020-06-01, 2020-12-01, 2021-03-01, 2021-04-01, 2021-07-01, 2021-11-01, 2022-03-01, 2022-08-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2017-12-01, 2018-04-01, 2018-06-01, 2018-10-01, 2019-03-01, 2019-07-01, 2019-12-01, 2020-06-01, 2020-12-01, 2021-03-01, 2021-04-01, 2021-07-01, 2021-11-01, 2022-03-01, 2022-08-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func GetLogAnalyticExportRequestRateByInterval(ctx *pulumi.Context, args *GetLogAnalyticExportRequestRateByIntervalArgs, opts ...pulumi.InvokeOption) (*GetLogAnalyticExportRequestRateByIntervalResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetLogAnalyticExportRequestRateByIntervalResult @@ -56,14 +56,20 @@ type GetLogAnalyticExportRequestRateByIntervalResult struct { func GetLogAnalyticExportRequestRateByIntervalOutput(ctx *pulumi.Context, args GetLogAnalyticExportRequestRateByIntervalOutputArgs, opts ...pulumi.InvokeOption) GetLogAnalyticExportRequestRateByIntervalResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLogAnalyticExportRequestRateByIntervalResult, error) { + ApplyT(func(v interface{}) (GetLogAnalyticExportRequestRateByIntervalResultOutput, error) { args := v.(GetLogAnalyticExportRequestRateByIntervalArgs) - r, err := GetLogAnalyticExportRequestRateByInterval(ctx, &args, opts...) - var s GetLogAnalyticExportRequestRateByIntervalResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetLogAnalyticExportRequestRateByIntervalResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getLogAnalyticExportRequestRateByInterval", args, &rv, "", opts...) + if err != nil { + return GetLogAnalyticExportRequestRateByIntervalResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLogAnalyticExportRequestRateByIntervalResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLogAnalyticExportRequestRateByIntervalResultOutput), nil + } + return output, nil }).(GetLogAnalyticExportRequestRateByIntervalResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportThrottledRequests.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportThrottledRequests.go index 1659fcb7a..ef0c4d78d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportThrottledRequests.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getLogAnalyticExportThrottledRequests.go @@ -14,7 +14,7 @@ import ( // Export logs that show total throttled Api requests for this subscription in the given time window. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2017-12-01, 2018-04-01, 2018-06-01, 2018-10-01, 2019-03-01, 2019-07-01, 2019-12-01, 2020-06-01, 2020-12-01, 2021-03-01, 2021-04-01, 2021-07-01, 2021-11-01, 2022-03-01, 2022-08-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2017-12-01, 2018-04-01, 2018-06-01, 2018-10-01, 2019-03-01, 2019-07-01, 2019-12-01, 2020-06-01, 2020-12-01, 2021-03-01, 2021-04-01, 2021-07-01, 2021-11-01, 2022-03-01, 2022-08-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func GetLogAnalyticExportThrottledRequests(ctx *pulumi.Context, args *GetLogAnalyticExportThrottledRequestsArgs, opts ...pulumi.InvokeOption) (*GetLogAnalyticExportThrottledRequestsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetLogAnalyticExportThrottledRequestsResult @@ -54,14 +54,20 @@ type GetLogAnalyticExportThrottledRequestsResult struct { func GetLogAnalyticExportThrottledRequestsOutput(ctx *pulumi.Context, args GetLogAnalyticExportThrottledRequestsOutputArgs, opts ...pulumi.InvokeOption) GetLogAnalyticExportThrottledRequestsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetLogAnalyticExportThrottledRequestsResult, error) { + ApplyT(func(v interface{}) (GetLogAnalyticExportThrottledRequestsResultOutput, error) { args := v.(GetLogAnalyticExportThrottledRequestsArgs) - r, err := GetLogAnalyticExportThrottledRequests(ctx, &args, opts...) - var s GetLogAnalyticExportThrottledRequestsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetLogAnalyticExportThrottledRequestsResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getLogAnalyticExportThrottledRequests", args, &rv, "", opts...) + if err != nil { + return GetLogAnalyticExportThrottledRequestsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetLogAnalyticExportThrottledRequestsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetLogAnalyticExportThrottledRequestsResultOutput), nil + } + return output, nil }).(GetLogAnalyticExportThrottledRequestsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getProximityPlacementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getProximityPlacementGroup.go index 2c12027c1..d20367d50 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getProximityPlacementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getProximityPlacementGroup.go @@ -14,7 +14,7 @@ import ( // Retrieves information about a proximity placement group . // Azure REST API version: 2023-03-01. // -// Other available API versions: 2019-03-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2019-03-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupProximityPlacementGroup(ctx *pulumi.Context, args *LookupProximityPlacementGroupArgs, opts ...pulumi.InvokeOption) (*LookupProximityPlacementGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupProximityPlacementGroupResult @@ -64,14 +64,20 @@ type LookupProximityPlacementGroupResult struct { func LookupProximityPlacementGroupOutput(ctx *pulumi.Context, args LookupProximityPlacementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupProximityPlacementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupProximityPlacementGroupResult, error) { + ApplyT(func(v interface{}) (LookupProximityPlacementGroupResultOutput, error) { args := v.(LookupProximityPlacementGroupArgs) - r, err := LookupProximityPlacementGroup(ctx, &args, opts...) - var s LookupProximityPlacementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupProximityPlacementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getProximityPlacementGroup", args, &rv, "", opts...) + if err != nil { + return LookupProximityPlacementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupProximityPlacementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupProximityPlacementGroupResultOutput), nil + } + return output, nil }).(LookupProximityPlacementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePoint.go index b962a72bc..78ffe52b0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePoint.go @@ -14,7 +14,7 @@ import ( // The operation to get the restore point. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2021-11-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2021-11-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupRestorePoint(ctx *pulumi.Context, args *LookupRestorePointArgs, opts ...pulumi.InvokeOption) (*LookupRestorePointResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRestorePointResult @@ -62,14 +62,20 @@ type LookupRestorePointResult struct { func LookupRestorePointOutput(ctx *pulumi.Context, args LookupRestorePointOutputArgs, opts ...pulumi.InvokeOption) LookupRestorePointResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRestorePointResult, error) { + ApplyT(func(v interface{}) (LookupRestorePointResultOutput, error) { args := v.(LookupRestorePointArgs) - r, err := LookupRestorePoint(ctx, &args, opts...) - var s LookupRestorePointResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRestorePointResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getRestorePoint", args, &rv, "", opts...) + if err != nil { + return LookupRestorePointResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRestorePointResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRestorePointResultOutput), nil + } + return output, nil }).(LookupRestorePointResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePointCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePointCollection.go index 8abf241d2..001c91c65 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePointCollection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getRestorePointCollection.go @@ -14,7 +14,7 @@ import ( // The operation to get the restore point collection. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupRestorePointCollection(ctx *pulumi.Context, args *LookupRestorePointCollectionArgs, opts ...pulumi.InvokeOption) (*LookupRestorePointCollectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRestorePointCollectionResult @@ -58,14 +58,20 @@ type LookupRestorePointCollectionResult struct { func LookupRestorePointCollectionOutput(ctx *pulumi.Context, args LookupRestorePointCollectionOutputArgs, opts ...pulumi.InvokeOption) LookupRestorePointCollectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRestorePointCollectionResult, error) { + ApplyT(func(v interface{}) (LookupRestorePointCollectionResultOutput, error) { args := v.(LookupRestorePointCollectionArgs) - r, err := LookupRestorePointCollection(ctx, &args, opts...) - var s LookupRestorePointCollectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRestorePointCollectionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getRestorePointCollection", args, &rv, "", opts...) + if err != nil { + return LookupRestorePointCollectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRestorePointCollectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRestorePointCollectionResultOutput), nil + } + return output, nil }).(LookupRestorePointCollectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSnapshot.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSnapshot.go index 661df0d44..708460255 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSnapshot.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSnapshot.go @@ -14,7 +14,7 @@ import ( // Gets information about a snapshot. // Azure REST API version: 2022-07-02. // -// Other available API versions: 2016-04-30-preview, 2017-03-30, 2018-06-01, 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2016-04-30-preview, 2017-03-30, 2018-06-01, 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. func LookupSnapshot(ctx *pulumi.Context, args *LookupSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupSnapshotResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSnapshotResult @@ -100,14 +100,20 @@ type LookupSnapshotResult struct { func LookupSnapshotOutput(ctx *pulumi.Context, args LookupSnapshotOutputArgs, opts ...pulumi.InvokeOption) LookupSnapshotResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSnapshotResult, error) { + ApplyT(func(v interface{}) (LookupSnapshotResultOutput, error) { args := v.(LookupSnapshotArgs) - r, err := LookupSnapshot(ctx, &args, opts...) - var s LookupSnapshotResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSnapshotResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getSnapshot", args, &rv, "", opts...) + if err != nil { + return LookupSnapshotResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSnapshotResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSnapshotResultOutput), nil + } + return output, nil }).(LookupSnapshotResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSshPublicKey.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSshPublicKey.go index aecdd4b37..08b6e5d09 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSshPublicKey.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getSshPublicKey.go @@ -14,7 +14,7 @@ import ( // Retrieves information about an SSH public key. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupSshPublicKey(ctx *pulumi.Context, args *LookupSshPublicKeyArgs, opts ...pulumi.InvokeOption) (*LookupSshPublicKeyResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSshPublicKeyResult @@ -50,14 +50,20 @@ type LookupSshPublicKeyResult struct { func LookupSshPublicKeyOutput(ctx *pulumi.Context, args LookupSshPublicKeyOutputArgs, opts ...pulumi.InvokeOption) LookupSshPublicKeyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSshPublicKeyResult, error) { + ApplyT(func(v interface{}) (LookupSshPublicKeyResultOutput, error) { args := v.(LookupSshPublicKeyArgs) - r, err := LookupSshPublicKey(ctx, &args, opts...) - var s LookupSshPublicKeyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSshPublicKeyResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getSshPublicKey", args, &rv, "", opts...) + if err != nil { + return LookupSshPublicKeyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSshPublicKeyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSshPublicKeyResultOutput), nil + } + return output, nil }).(LookupSshPublicKeyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachine.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachine.go index 097c09419..bb80e550f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachine.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachine.go @@ -14,7 +14,7 @@ import ( // Retrieves information about the model view or the instance view of a virtual machine. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachine(ctx *pulumi.Context, args *LookupVirtualMachineArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineResult @@ -112,14 +112,20 @@ type LookupVirtualMachineResult struct { func LookupVirtualMachineOutput(ctx *pulumi.Context, args LookupVirtualMachineOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineResultOutput, error) { args := v.(LookupVirtualMachineArgs) - r, err := LookupVirtualMachine(ctx, &args, opts...) - var s LookupVirtualMachineResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachine", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineResultOutput), nil + } + return output, nil }).(LookupVirtualMachineResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineExtension.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineExtension.go index e359bea0c..d62245291 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineExtension.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineExtension.go @@ -14,7 +14,7 @@ import ( // The operation to get the extension. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineExtension(ctx *pulumi.Context, args *LookupVirtualMachineExtensionArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineExtensionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineExtensionResult @@ -76,14 +76,20 @@ type LookupVirtualMachineExtensionResult struct { func LookupVirtualMachineExtensionOutput(ctx *pulumi.Context, args LookupVirtualMachineExtensionOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineExtensionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineExtensionResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineExtensionResultOutput, error) { args := v.(LookupVirtualMachineExtensionArgs) - r, err := LookupVirtualMachineExtension(ctx, &args, opts...) - var s LookupVirtualMachineExtensionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineExtensionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineExtension", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineExtensionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineExtensionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineExtensionResultOutput), nil + } + return output, nil }).(LookupVirtualMachineExtensionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineRunCommandByVirtualMachine.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineRunCommandByVirtualMachine.go index 4f65fda07..ecfce540d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineRunCommandByVirtualMachine.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineRunCommandByVirtualMachine.go @@ -14,7 +14,7 @@ import ( // The operation to get the run command. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineRunCommandByVirtualMachine(ctx *pulumi.Context, args *LookupVirtualMachineRunCommandByVirtualMachineArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineRunCommandByVirtualMachineResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineRunCommandByVirtualMachineResult @@ -97,14 +97,20 @@ func (val *LookupVirtualMachineRunCommandByVirtualMachineResult) Defaults() *Loo func LookupVirtualMachineRunCommandByVirtualMachineOutput(ctx *pulumi.Context, args LookupVirtualMachineRunCommandByVirtualMachineOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineRunCommandByVirtualMachineResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineRunCommandByVirtualMachineResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineRunCommandByVirtualMachineResultOutput, error) { args := v.(LookupVirtualMachineRunCommandByVirtualMachineArgs) - r, err := LookupVirtualMachineRunCommandByVirtualMachine(ctx, &args, opts...) - var s LookupVirtualMachineRunCommandByVirtualMachineResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineRunCommandByVirtualMachineResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineRunCommandByVirtualMachine", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineRunCommandByVirtualMachineResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineRunCommandByVirtualMachineResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineRunCommandByVirtualMachineResultOutput), nil + } + return output, nil }).(LookupVirtualMachineRunCommandByVirtualMachineResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSet.go index 91c6c1fe3..aeac865aa 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSet.go @@ -14,7 +14,7 @@ import ( // Display information about a virtual machine scale set. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2015-06-15, 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2015-06-15, 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineScaleSet(ctx *pulumi.Context, args *LookupVirtualMachineScaleSetArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineScaleSetResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineScaleSetResult @@ -98,14 +98,20 @@ type LookupVirtualMachineScaleSetResult struct { func LookupVirtualMachineScaleSetOutput(ctx *pulumi.Context, args LookupVirtualMachineScaleSetOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineScaleSetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetResultOutput, error) { args := v.(LookupVirtualMachineScaleSetArgs) - r, err := LookupVirtualMachineScaleSet(ctx, &args, opts...) - var s LookupVirtualMachineScaleSetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineScaleSetResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineScaleSet", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineScaleSetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineScaleSetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineScaleSetResultOutput), nil + } + return output, nil }).(LookupVirtualMachineScaleSetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetExtension.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetExtension.go index b80a12e59..29e8c30bc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetExtension.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetExtension.go @@ -14,7 +14,7 @@ import ( // The operation to get the extension. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineScaleSetExtension(ctx *pulumi.Context, args *LookupVirtualMachineScaleSetExtensionArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineScaleSetExtensionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineScaleSetExtensionResult @@ -70,14 +70,20 @@ type LookupVirtualMachineScaleSetExtensionResult struct { func LookupVirtualMachineScaleSetExtensionOutput(ctx *pulumi.Context, args LookupVirtualMachineScaleSetExtensionOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineScaleSetExtensionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetExtensionResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetExtensionResultOutput, error) { args := v.(LookupVirtualMachineScaleSetExtensionArgs) - r, err := LookupVirtualMachineScaleSetExtension(ctx, &args, opts...) - var s LookupVirtualMachineScaleSetExtensionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineScaleSetExtensionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineScaleSetExtension", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineScaleSetExtensionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineScaleSetExtensionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineScaleSetExtensionResultOutput), nil + } + return output, nil }).(LookupVirtualMachineScaleSetExtensionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVM.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVM.go index 295653b23..40fbaca51 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVM.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVM.go @@ -14,7 +14,7 @@ import ( // Gets a virtual machine from a VM scale set. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineScaleSetVM(ctx *pulumi.Context, args *LookupVirtualMachineScaleSetVMArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineScaleSetVMResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineScaleSetVMResult @@ -98,14 +98,20 @@ type LookupVirtualMachineScaleSetVMResult struct { func LookupVirtualMachineScaleSetVMOutput(ctx *pulumi.Context, args LookupVirtualMachineScaleSetVMOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineScaleSetVMResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetVMResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetVMResultOutput, error) { args := v.(LookupVirtualMachineScaleSetVMArgs) - r, err := LookupVirtualMachineScaleSetVM(ctx, &args, opts...) - var s LookupVirtualMachineScaleSetVMResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineScaleSetVMResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineScaleSetVM", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineScaleSetVMResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineScaleSetVMResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineScaleSetVMResultOutput), nil + } + return output, nil }).(LookupVirtualMachineScaleSetVMResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMExtension.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMExtension.go index 720dbe713..2c7601c07 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMExtension.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMExtension.go @@ -14,7 +14,7 @@ import ( // The operation to get the VMSS VM extension. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2019-12-01, 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2019-12-01, 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineScaleSetVMExtension(ctx *pulumi.Context, args *LookupVirtualMachineScaleSetVMExtensionArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineScaleSetVMExtensionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineScaleSetVMExtensionResult @@ -76,14 +76,20 @@ type LookupVirtualMachineScaleSetVMExtensionResult struct { func LookupVirtualMachineScaleSetVMExtensionOutput(ctx *pulumi.Context, args LookupVirtualMachineScaleSetVMExtensionOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineScaleSetVMExtensionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetVMExtensionResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetVMExtensionResultOutput, error) { args := v.(LookupVirtualMachineScaleSetVMExtensionArgs) - r, err := LookupVirtualMachineScaleSetVMExtension(ctx, &args, opts...) - var s LookupVirtualMachineScaleSetVMExtensionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineScaleSetVMExtensionResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineScaleSetVMExtension", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineScaleSetVMExtensionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineScaleSetVMExtensionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineScaleSetVMExtensionResultOutput), nil + } + return output, nil }).(LookupVirtualMachineScaleSetVMExtensionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMRunCommand.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMRunCommand.go index c8d56ef7c..a29c604d3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMRunCommand.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/getVirtualMachineScaleSetVMRunCommand.go @@ -14,7 +14,7 @@ import ( // The operation to get the VMSS VM run command. // Azure REST API version: 2023-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. func LookupVirtualMachineScaleSetVMRunCommand(ctx *pulumi.Context, args *LookupVirtualMachineScaleSetVMRunCommandArgs, opts ...pulumi.InvokeOption) (*LookupVirtualMachineScaleSetVMRunCommandResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualMachineScaleSetVMRunCommandResult @@ -99,14 +99,20 @@ func (val *LookupVirtualMachineScaleSetVMRunCommandResult) Defaults() *LookupVir func LookupVirtualMachineScaleSetVMRunCommandOutput(ctx *pulumi.Context, args LookupVirtualMachineScaleSetVMRunCommandOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualMachineScaleSetVMRunCommandResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetVMRunCommandResult, error) { + ApplyT(func(v interface{}) (LookupVirtualMachineScaleSetVMRunCommandResultOutput, error) { args := v.(LookupVirtualMachineScaleSetVMRunCommandArgs) - r, err := LookupVirtualMachineScaleSetVMRunCommand(ctx, &args, opts...) - var s LookupVirtualMachineScaleSetVMRunCommandResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualMachineScaleSetVMRunCommandResult + secret, err := ctx.InvokePackageRaw("azure-native:compute:getVirtualMachineScaleSetVMRunCommand", args, &rv, "", opts...) + if err != nil { + return LookupVirtualMachineScaleSetVMRunCommandResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualMachineScaleSetVMRunCommandResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualMachineScaleSetVMRunCommandResultOutput), nil + } + return output, nil }).(LookupVirtualMachineScaleSetVMRunCommandResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/image.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/image.go index f8b607a6f..ecf601f76 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/image.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/image.go @@ -15,7 +15,7 @@ import ( // The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type Image struct { pulumi.CustomResourceState @@ -116,6 +116,9 @@ func NewImage(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:Image"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:Image"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/proximityPlacementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/proximityPlacementGroup.go index 552391163..c2869c0b1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/proximityPlacementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/proximityPlacementGroup.go @@ -15,7 +15,7 @@ import ( // Specifies information about the proximity placement group. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2019-03-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2019-03-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type ProximityPlacementGroup struct { pulumi.CustomResourceState @@ -111,6 +111,9 @@ func NewProximityPlacementGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:ProximityPlacementGroup"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:ProximityPlacementGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumi-plugin.json b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumi-plugin.json index 021d33318..3825324d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumi-plugin.json +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azure-native", - "version": "2.45.0" + "version": "2.64.2" } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumiTypes.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumiTypes.go index 2ba305313..0a8f63f52 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumiTypes.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/pulumiTypes.go @@ -42771,7 +42771,7 @@ func (o VirtualMachineScaleSetPublicIPAddressConfigurationResponsePtrOutput) Sku type VirtualMachineScaleSetStorageProfile struct { // Specifies the parameters that are used to add data disks to the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). DataDisks []VirtualMachineScaleSetDataDisk `pulumi:"dataDisks"` - DiskControllerType []string `pulumi:"diskControllerType"` + DiskControllerType *string `pulumi:"diskControllerType"` // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. ImageReference *ImageReference `pulumi:"imageReference"` // Specifies information about the operating system disk used by the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). @@ -42793,7 +42793,7 @@ type VirtualMachineScaleSetStorageProfileInput interface { type VirtualMachineScaleSetStorageProfileArgs struct { // Specifies the parameters that are used to add data disks to the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). DataDisks VirtualMachineScaleSetDataDiskArrayInput `pulumi:"dataDisks"` - DiskControllerType pulumi.StringArrayInput `pulumi:"diskControllerType"` + DiskControllerType pulumi.StringPtrInput `pulumi:"diskControllerType"` // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. ImageReference ImageReferencePtrInput `pulumi:"imageReference"` // Specifies information about the operating system disk used by the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). @@ -42883,8 +42883,8 @@ func (o VirtualMachineScaleSetStorageProfileOutput) DataDisks() VirtualMachineSc return o.ApplyT(func(v VirtualMachineScaleSetStorageProfile) []VirtualMachineScaleSetDataDisk { return v.DataDisks }).(VirtualMachineScaleSetDataDiskArrayOutput) } -func (o VirtualMachineScaleSetStorageProfileOutput) DiskControllerType() pulumi.StringArrayOutput { - return o.ApplyT(func(v VirtualMachineScaleSetStorageProfile) []string { return v.DiskControllerType }).(pulumi.StringArrayOutput) +func (o VirtualMachineScaleSetStorageProfileOutput) DiskControllerType() pulumi.StringPtrOutput { + return o.ApplyT(func(v VirtualMachineScaleSetStorageProfile) *string { return v.DiskControllerType }).(pulumi.StringPtrOutput) } // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. @@ -42931,13 +42931,13 @@ func (o VirtualMachineScaleSetStorageProfilePtrOutput) DataDisks() VirtualMachin }).(VirtualMachineScaleSetDataDiskArrayOutput) } -func (o VirtualMachineScaleSetStorageProfilePtrOutput) DiskControllerType() pulumi.StringArrayOutput { - return o.ApplyT(func(v *VirtualMachineScaleSetStorageProfile) []string { +func (o VirtualMachineScaleSetStorageProfilePtrOutput) DiskControllerType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VirtualMachineScaleSetStorageProfile) *string { if v == nil { return nil } return v.DiskControllerType - }).(pulumi.StringArrayOutput) + }).(pulumi.StringPtrOutput) } // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. @@ -42964,7 +42964,7 @@ func (o VirtualMachineScaleSetStorageProfilePtrOutput) OsDisk() VirtualMachineSc type VirtualMachineScaleSetStorageProfileResponse struct { // Specifies the parameters that are used to add data disks to the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). DataDisks []VirtualMachineScaleSetDataDiskResponse `pulumi:"dataDisks"` - DiskControllerType []string `pulumi:"diskControllerType"` + DiskControllerType *string `pulumi:"diskControllerType"` // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. ImageReference *ImageReferenceResponse `pulumi:"imageReference"` // Specifies information about the operating system disk used by the virtual machines in the scale set. For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/managed-disks-overview). @@ -42993,8 +42993,8 @@ func (o VirtualMachineScaleSetStorageProfileResponseOutput) DataDisks() VirtualM }).(VirtualMachineScaleSetDataDiskResponseArrayOutput) } -func (o VirtualMachineScaleSetStorageProfileResponseOutput) DiskControllerType() pulumi.StringArrayOutput { - return o.ApplyT(func(v VirtualMachineScaleSetStorageProfileResponse) []string { return v.DiskControllerType }).(pulumi.StringArrayOutput) +func (o VirtualMachineScaleSetStorageProfileResponseOutput) DiskControllerType() pulumi.StringPtrOutput { + return o.ApplyT(func(v VirtualMachineScaleSetStorageProfileResponse) *string { return v.DiskControllerType }).(pulumi.StringPtrOutput) } // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. @@ -43043,13 +43043,13 @@ func (o VirtualMachineScaleSetStorageProfileResponsePtrOutput) DataDisks() Virtu }).(VirtualMachineScaleSetDataDiskResponseArrayOutput) } -func (o VirtualMachineScaleSetStorageProfileResponsePtrOutput) DiskControllerType() pulumi.StringArrayOutput { - return o.ApplyT(func(v *VirtualMachineScaleSetStorageProfileResponse) []string { +func (o VirtualMachineScaleSetStorageProfileResponsePtrOutput) DiskControllerType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VirtualMachineScaleSetStorageProfileResponse) *string { if v == nil { return nil } return v.DiskControllerType - }).(pulumi.StringArrayOutput) + }).(pulumi.StringPtrOutput) } // Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePoint.go index 27a0c40ac..d308aa782 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePoint.go @@ -15,7 +15,7 @@ import ( // Restore Point details. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2021-11-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2021-11-01, 2022-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type RestorePoint struct { pulumi.CustomResourceState @@ -86,6 +86,9 @@ func NewRestorePoint(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:RestorePoint"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:RestorePoint"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePointCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePointCollection.go index 2e4907b0c..558628558 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePointCollection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/restorePointCollection.go @@ -15,7 +15,7 @@ import ( // Create or update Restore Point collection parameters. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type RestorePointCollection struct { pulumi.CustomResourceState @@ -81,6 +81,9 @@ func NewRestorePointCollection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:RestorePointCollection"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:RestorePointCollection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/snapshot.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/snapshot.go index ef4f4732c..82585d955 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/snapshot.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/snapshot.go @@ -15,7 +15,7 @@ import ( // Snapshot resource. // Azure REST API version: 2022-07-02. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2016-04-30-preview, 2017-03-30, 2018-06-01, 2023-01-02, 2023-04-02, 2023-10-02. +// Other available API versions: 2016-04-30-preview, 2017-03-30, 2018-06-01, 2023-01-02, 2023-04-02, 2023-10-02, 2024-03-02. type Snapshot struct { pulumi.CustomResourceState @@ -155,6 +155,9 @@ func NewSnapshot(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20231002:Snapshot"), }, + { + Type: pulumi.String("azure-native:compute/v20240302:Snapshot"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/sshPublicKey.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/sshPublicKey.go index 2b1fec419..debc51865 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/sshPublicKey.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/sshPublicKey.go @@ -15,7 +15,7 @@ import ( // Specifies information about the SSH public key. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2020-12-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type SshPublicKey struct { pulumi.CustomResourceState @@ -84,6 +84,9 @@ func NewSshPublicKey(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:SshPublicKey"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:SshPublicKey"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachine.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachine.go index 7d182575e..8c5fb2883 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachine.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachine.go @@ -15,7 +15,7 @@ import ( // Describes a Virtual Machine. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachine struct { pulumi.CustomResourceState @@ -174,6 +174,9 @@ func NewVirtualMachine(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachine"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachine"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineExtension.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineExtension.go index a655a8ef8..3e68b9ee7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineExtension.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineExtension.go @@ -15,7 +15,7 @@ import ( // Describes a Virtual Machine Extension. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineExtension struct { pulumi.CustomResourceState @@ -139,6 +139,9 @@ func NewVirtualMachineExtension(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineExtension"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineExtension"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineRunCommandByVirtualMachine.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineRunCommandByVirtualMachine.go index 9244f6956..52b22010b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineRunCommandByVirtualMachine.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineRunCommandByVirtualMachine.go @@ -15,7 +15,7 @@ import ( // Describes a Virtual Machine run command. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineRunCommandByVirtualMachine struct { pulumi.CustomResourceState @@ -116,6 +116,9 @@ func NewVirtualMachineRunCommandByVirtualMachine(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineRunCommandByVirtualMachine"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineRunCommandByVirtualMachine"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSet.go index e73af4f2d..3d3fdabf0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSet.go @@ -15,7 +15,7 @@ import ( // Describes a Virtual Machine Scale Set. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2015-06-15, 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2015-06-15, 2016-04-30-preview, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineScaleSet struct { pulumi.CustomResourceState @@ -160,6 +160,9 @@ func NewVirtualMachineScaleSet(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineScaleSet"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineScaleSet"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetExtension.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetExtension.go index af17c728b..a4b8fc4cd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetExtension.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetExtension.go @@ -15,7 +15,7 @@ import ( // Describes a Virtual Machine Scale Set Extension. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineScaleSetExtension struct { pulumi.CustomResourceState @@ -124,6 +124,9 @@ func NewVirtualMachineScaleSetExtension(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineScaleSetExtension"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineScaleSetExtension"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVM.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVM.go index be9ee621c..b03316956 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVM.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVM.go @@ -15,7 +15,7 @@ import ( // Describes a virtual machine scale set virtual machine. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineScaleSetVM struct { pulumi.CustomResourceState @@ -149,6 +149,9 @@ func NewVirtualMachineScaleSetVM(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineScaleSetVM"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineScaleSetVM"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMExtension.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMExtension.go index 4f1bcff47..d0ace351b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMExtension.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMExtension.go @@ -15,7 +15,7 @@ import ( // Describes a VMSS VM Extension. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2019-12-01, 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2019-12-01, 2021-11-01, 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineScaleSetVMExtension struct { pulumi.CustomResourceState @@ -113,6 +113,9 @@ func NewVirtualMachineScaleSetVMExtension(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineScaleSetVMExtension"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineScaleSetVMExtension"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMRunCommand.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMRunCommand.go index 1c6972165..86b641c24 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMRunCommand.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/compute/v2/virtualMachineScaleSetVMRunCommand.go @@ -15,7 +15,7 @@ import ( // Describes a Virtual Machine run command. // Azure REST API version: 2023-03-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2023-09-01, 2024-03-01, 2024-07-01. type VirtualMachineScaleSetVMRunCommand struct { pulumi.CustomResourceState @@ -119,6 +119,9 @@ func NewVirtualMachineScaleSetVMRunCommand(ctx *pulumi.Context, { Type: pulumi.String("azure-native:compute/v20240301:VirtualMachineScaleSetVMRunCommand"), }, + { + Type: pulumi.String("azure-native:compute/v20240701:VirtualMachineScaleSetVMRunCommand"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleet.go deleted file mode 100644 index 2c9a9d4d0..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleet.go +++ /dev/null @@ -1,218 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// The Fleet resource. -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2022-07-02-preview, 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -type Fleet struct { - pulumi.CustomResourceState - - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag pulumi.StringOutput `pulumi:"eTag"` - // The FleetHubProfile configures the Fleet's hub. - HubProfile FleetHubProfileResponsePtrOutput `pulumi:"hubProfile"` - // The geo-location where the resource lives - Location pulumi.StringOutput `pulumi:"location"` - // The name of the resource - Name pulumi.StringOutput `pulumi:"name"` - // The status of the last operation. - ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponseOutput `pulumi:"systemData"` - // Resource tags. - Tags pulumi.StringMapOutput `pulumi:"tags"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewFleet registers a new resource with the given unique name, arguments, and options. -func NewFleet(ctx *pulumi.Context, - name string, args *FleetArgs, opts ...pulumi.ResourceOption) (*Fleet, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20220602preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220702preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220902preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230315preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230615preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230815preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20231015:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240202preview:Fleet"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240401:Fleet"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource Fleet - err := ctx.RegisterResource("azure-native:containerservice:Fleet", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetFleet gets an existing Fleet resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetFleet(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *FleetState, opts ...pulumi.ResourceOption) (*Fleet, error) { - var resource Fleet - err := ctx.ReadResource("azure-native:containerservice:Fleet", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering Fleet resources. -type fleetState struct { -} - -type FleetState struct { -} - -func (FleetState) ElementType() reflect.Type { - return reflect.TypeOf((*fleetState)(nil)).Elem() -} - -type fleetArgs struct { - // The name of the Fleet resource. - FleetName *string `pulumi:"fleetName"` - // The FleetHubProfile configures the Fleet's hub. - HubProfile *FleetHubProfile `pulumi:"hubProfile"` - // The geo-location where the resource lives - Location *string `pulumi:"location"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // Resource tags. - Tags map[string]string `pulumi:"tags"` -} - -// The set of arguments for constructing a Fleet resource. -type FleetArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringPtrInput - // The FleetHubProfile configures the Fleet's hub. - HubProfile FleetHubProfilePtrInput - // The geo-location where the resource lives - Location pulumi.StringPtrInput - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput - // Resource tags. - Tags pulumi.StringMapInput -} - -func (FleetArgs) ElementType() reflect.Type { - return reflect.TypeOf((*fleetArgs)(nil)).Elem() -} - -type FleetInput interface { - pulumi.Input - - ToFleetOutput() FleetOutput - ToFleetOutputWithContext(ctx context.Context) FleetOutput -} - -func (*Fleet) ElementType() reflect.Type { - return reflect.TypeOf((**Fleet)(nil)).Elem() -} - -func (i *Fleet) ToFleetOutput() FleetOutput { - return i.ToFleetOutputWithContext(context.Background()) -} - -func (i *Fleet) ToFleetOutputWithContext(ctx context.Context) FleetOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetOutput) -} - -type FleetOutput struct{ *pulumi.OutputState } - -func (FleetOutput) ElementType() reflect.Type { - return reflect.TypeOf((**Fleet)(nil)).Elem() -} - -func (o FleetOutput) ToFleetOutput() FleetOutput { - return o -} - -func (o FleetOutput) ToFleetOutputWithContext(ctx context.Context) FleetOutput { - return o -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o FleetOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.ETag }).(pulumi.StringOutput) -} - -// The FleetHubProfile configures the Fleet's hub. -func (o FleetOutput) HubProfile() FleetHubProfileResponsePtrOutput { - return o.ApplyT(func(v *Fleet) FleetHubProfileResponsePtrOutput { return v.HubProfile }).(FleetHubProfileResponsePtrOutput) -} - -// The geo-location where the resource lives -func (o FleetOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) -} - -// The name of the resource -func (o FleetOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// The status of the last operation. -func (o FleetOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o FleetOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v *Fleet) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) -} - -// Resource tags. -func (o FleetOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v *Fleet) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o FleetOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *Fleet) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(FleetOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetMember.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetMember.go deleted file mode 100644 index de5bf9466..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetMember.go +++ /dev/null @@ -1,217 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure. -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2022-07-02-preview, 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -type FleetMember struct { - pulumi.CustomResourceState - - // The ARM resource id of the cluster that joins the Fleet. Must be a valid Azure resource id. e.g.: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}'. - ClusterResourceId pulumi.StringOutput `pulumi:"clusterResourceId"` - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag pulumi.StringOutput `pulumi:"eTag"` - // The group this member belongs to for multi-cluster update management. - Group pulumi.StringPtrOutput `pulumi:"group"` - // The name of the resource - Name pulumi.StringOutput `pulumi:"name"` - // The status of the last operation. - ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponseOutput `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewFleetMember registers a new resource with the given unique name, arguments, and options. -func NewFleetMember(ctx *pulumi.Context, - name string, args *FleetMemberArgs, opts ...pulumi.ResourceOption) (*FleetMember, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.ClusterResourceId == nil { - return nil, errors.New("invalid value for required argument 'ClusterResourceId'") - } - if args.FleetName == nil { - return nil, errors.New("invalid value for required argument 'FleetName'") - } - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20220602preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220702preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220902preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230315preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230615preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230815preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20231015:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240202preview:FleetMember"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240401:FleetMember"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource FleetMember - err := ctx.RegisterResource("azure-native:containerservice:FleetMember", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetFleetMember gets an existing FleetMember resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetFleetMember(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *FleetMemberState, opts ...pulumi.ResourceOption) (*FleetMember, error) { - var resource FleetMember - err := ctx.ReadResource("azure-native:containerservice:FleetMember", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering FleetMember resources. -type fleetMemberState struct { -} - -type FleetMemberState struct { -} - -func (FleetMemberState) ElementType() reflect.Type { - return reflect.TypeOf((*fleetMemberState)(nil)).Elem() -} - -type fleetMemberArgs struct { - // The ARM resource id of the cluster that joins the Fleet. Must be a valid Azure resource id. e.g.: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}'. - ClusterResourceId string `pulumi:"clusterResourceId"` - // The name of the Fleet member resource. - FleetMemberName *string `pulumi:"fleetMemberName"` - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The group this member belongs to for multi-cluster update management. - Group *string `pulumi:"group"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` -} - -// The set of arguments for constructing a FleetMember resource. -type FleetMemberArgs struct { - // The ARM resource id of the cluster that joins the Fleet. Must be a valid Azure resource id. e.g.: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}'. - ClusterResourceId pulumi.StringInput - // The name of the Fleet member resource. - FleetMemberName pulumi.StringPtrInput - // The name of the Fleet resource. - FleetName pulumi.StringInput - // The group this member belongs to for multi-cluster update management. - Group pulumi.StringPtrInput - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput -} - -func (FleetMemberArgs) ElementType() reflect.Type { - return reflect.TypeOf((*fleetMemberArgs)(nil)).Elem() -} - -type FleetMemberInput interface { - pulumi.Input - - ToFleetMemberOutput() FleetMemberOutput - ToFleetMemberOutputWithContext(ctx context.Context) FleetMemberOutput -} - -func (*FleetMember) ElementType() reflect.Type { - return reflect.TypeOf((**FleetMember)(nil)).Elem() -} - -func (i *FleetMember) ToFleetMemberOutput() FleetMemberOutput { - return i.ToFleetMemberOutputWithContext(context.Background()) -} - -func (i *FleetMember) ToFleetMemberOutputWithContext(ctx context.Context) FleetMemberOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetMemberOutput) -} - -type FleetMemberOutput struct{ *pulumi.OutputState } - -func (FleetMemberOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetMember)(nil)).Elem() -} - -func (o FleetMemberOutput) ToFleetMemberOutput() FleetMemberOutput { - return o -} - -func (o FleetMemberOutput) ToFleetMemberOutputWithContext(ctx context.Context) FleetMemberOutput { - return o -} - -// The ARM resource id of the cluster that joins the Fleet. Must be a valid Azure resource id. e.g.: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}'. -func (o FleetMemberOutput) ClusterResourceId() pulumi.StringOutput { - return o.ApplyT(func(v *FleetMember) pulumi.StringOutput { return v.ClusterResourceId }).(pulumi.StringOutput) -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o FleetMemberOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v *FleetMember) pulumi.StringOutput { return v.ETag }).(pulumi.StringOutput) -} - -// The group this member belongs to for multi-cluster update management. -func (o FleetMemberOutput) Group() pulumi.StringPtrOutput { - return o.ApplyT(func(v *FleetMember) pulumi.StringPtrOutput { return v.Group }).(pulumi.StringPtrOutput) -} - -// The name of the resource -func (o FleetMemberOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *FleetMember) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// The status of the last operation. -func (o FleetMemberOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v *FleetMember) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o FleetMemberOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v *FleetMember) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o FleetMemberOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *FleetMember) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(FleetMemberOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetUpdateStrategy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetUpdateStrategy.go deleted file mode 100644 index b966a9803..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/fleetUpdateStrategy.go +++ /dev/null @@ -1,191 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Defines a multi-stage process to perform update operations across members of a Fleet. -// Azure REST API version: 2023-08-15-preview. -// -// Other available API versions: 2023-10-15, 2024-02-02-preview, 2024-04-01. -type FleetUpdateStrategy struct { - pulumi.CustomResourceState - - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag pulumi.StringOutput `pulumi:"eTag"` - // The name of the resource - Name pulumi.StringOutput `pulumi:"name"` - // The provisioning state of the UpdateStrategy resource. - ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` - // Defines the update sequence of the clusters. - Strategy UpdateRunStrategyResponseOutput `pulumi:"strategy"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponseOutput `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewFleetUpdateStrategy registers a new resource with the given unique name, arguments, and options. -func NewFleetUpdateStrategy(ctx *pulumi.Context, - name string, args *FleetUpdateStrategyArgs, opts ...pulumi.ResourceOption) (*FleetUpdateStrategy, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.FleetName == nil { - return nil, errors.New("invalid value for required argument 'FleetName'") - } - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - if args.Strategy == nil { - return nil, errors.New("invalid value for required argument 'Strategy'") - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20230815preview:FleetUpdateStrategy"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20231015:FleetUpdateStrategy"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240202preview:FleetUpdateStrategy"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240401:FleetUpdateStrategy"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource FleetUpdateStrategy - err := ctx.RegisterResource("azure-native:containerservice:FleetUpdateStrategy", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetFleetUpdateStrategy gets an existing FleetUpdateStrategy resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetFleetUpdateStrategy(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *FleetUpdateStrategyState, opts ...pulumi.ResourceOption) (*FleetUpdateStrategy, error) { - var resource FleetUpdateStrategy - err := ctx.ReadResource("azure-native:containerservice:FleetUpdateStrategy", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering FleetUpdateStrategy resources. -type fleetUpdateStrategyState struct { -} - -type FleetUpdateStrategyState struct { -} - -func (FleetUpdateStrategyState) ElementType() reflect.Type { - return reflect.TypeOf((*fleetUpdateStrategyState)(nil)).Elem() -} - -type fleetUpdateStrategyArgs struct { - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // Defines the update sequence of the clusters. - Strategy UpdateRunStrategy `pulumi:"strategy"` - // The name of the UpdateStrategy resource. - UpdateStrategyName *string `pulumi:"updateStrategyName"` -} - -// The set of arguments for constructing a FleetUpdateStrategy resource. -type FleetUpdateStrategyArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringInput - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput - // Defines the update sequence of the clusters. - Strategy UpdateRunStrategyInput - // The name of the UpdateStrategy resource. - UpdateStrategyName pulumi.StringPtrInput -} - -func (FleetUpdateStrategyArgs) ElementType() reflect.Type { - return reflect.TypeOf((*fleetUpdateStrategyArgs)(nil)).Elem() -} - -type FleetUpdateStrategyInput interface { - pulumi.Input - - ToFleetUpdateStrategyOutput() FleetUpdateStrategyOutput - ToFleetUpdateStrategyOutputWithContext(ctx context.Context) FleetUpdateStrategyOutput -} - -func (*FleetUpdateStrategy) ElementType() reflect.Type { - return reflect.TypeOf((**FleetUpdateStrategy)(nil)).Elem() -} - -func (i *FleetUpdateStrategy) ToFleetUpdateStrategyOutput() FleetUpdateStrategyOutput { - return i.ToFleetUpdateStrategyOutputWithContext(context.Background()) -} - -func (i *FleetUpdateStrategy) ToFleetUpdateStrategyOutputWithContext(ctx context.Context) FleetUpdateStrategyOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetUpdateStrategyOutput) -} - -type FleetUpdateStrategyOutput struct{ *pulumi.OutputState } - -func (FleetUpdateStrategyOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetUpdateStrategy)(nil)).Elem() -} - -func (o FleetUpdateStrategyOutput) ToFleetUpdateStrategyOutput() FleetUpdateStrategyOutput { - return o -} - -func (o FleetUpdateStrategyOutput) ToFleetUpdateStrategyOutputWithContext(ctx context.Context) FleetUpdateStrategyOutput { - return o -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o FleetUpdateStrategyOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v *FleetUpdateStrategy) pulumi.StringOutput { return v.ETag }).(pulumi.StringOutput) -} - -// The name of the resource -func (o FleetUpdateStrategyOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *FleetUpdateStrategy) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// The provisioning state of the UpdateStrategy resource. -func (o FleetUpdateStrategyOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v *FleetUpdateStrategy) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Defines the update sequence of the clusters. -func (o FleetUpdateStrategyOutput) Strategy() UpdateRunStrategyResponseOutput { - return o.ApplyT(func(v *FleetUpdateStrategy) UpdateRunStrategyResponseOutput { return v.Strategy }).(UpdateRunStrategyResponseOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o FleetUpdateStrategyOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v *FleetUpdateStrategy) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o FleetUpdateStrategyOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *FleetUpdateStrategy) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(FleetUpdateStrategyOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleet.go deleted file mode 100644 index 018eae3d9..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleet.go +++ /dev/null @@ -1,143 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Gets a Fleet. -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2022-07-02-preview, 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -func LookupFleet(ctx *pulumi.Context, args *LookupFleetArgs, opts ...pulumi.InvokeOption) (*LookupFleetResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupFleetResult - err := ctx.Invoke("azure-native:containerservice:getFleet", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type LookupFleetArgs struct { - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` -} - -// The Fleet resource. -type LookupFleetResult struct { - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag string `pulumi:"eTag"` - // The FleetHubProfile configures the Fleet's hub. - HubProfile *FleetHubProfileResponse `pulumi:"hubProfile"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - Id string `pulumi:"id"` - // The geo-location where the resource lives - Location string `pulumi:"location"` - // The name of the resource - Name string `pulumi:"name"` - // The status of the last operation. - ProvisioningState string `pulumi:"provisioningState"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponse `pulumi:"systemData"` - // Resource tags. - Tags map[string]string `pulumi:"tags"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type string `pulumi:"type"` -} - -func LookupFleetOutput(ctx *pulumi.Context, args LookupFleetOutputArgs, opts ...pulumi.InvokeOption) LookupFleetResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFleetResult, error) { - args := v.(LookupFleetArgs) - r, err := LookupFleet(ctx, &args, opts...) - var s LookupFleetResult - if r != nil { - s = *r - } - return s, err - }).(LookupFleetResultOutput) -} - -type LookupFleetOutputArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringInput `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` -} - -func (LookupFleetOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupFleetArgs)(nil)).Elem() -} - -// The Fleet resource. -type LookupFleetResultOutput struct{ *pulumi.OutputState } - -func (LookupFleetResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupFleetResult)(nil)).Elem() -} - -func (o LookupFleetResultOutput) ToLookupFleetResultOutput() LookupFleetResultOutput { - return o -} - -func (o LookupFleetResultOutput) ToLookupFleetResultOutputWithContext(ctx context.Context) LookupFleetResultOutput { - return o -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o LookupFleetResultOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetResult) string { return v.ETag }).(pulumi.StringOutput) -} - -// The FleetHubProfile configures the Fleet's hub. -func (o LookupFleetResultOutput) HubProfile() FleetHubProfileResponsePtrOutput { - return o.ApplyT(func(v LookupFleetResult) *FleetHubProfileResponse { return v.HubProfile }).(FleetHubProfileResponsePtrOutput) -} - -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} -func (o LookupFleetResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetResult) string { return v.Id }).(pulumi.StringOutput) -} - -// The geo-location where the resource lives -func (o LookupFleetResultOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetResult) string { return v.Location }).(pulumi.StringOutput) -} - -// The name of the resource -func (o LookupFleetResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetResult) string { return v.Name }).(pulumi.StringOutput) -} - -// The status of the last operation. -func (o LookupFleetResultOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetResult) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LookupFleetResultOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v LookupFleetResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) -} - -// Resource tags. -func (o LookupFleetResultOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v LookupFleetResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LookupFleetResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupFleetResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetMember.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetMember.go deleted file mode 100644 index 3a04f1954..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetMember.go +++ /dev/null @@ -1,140 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Get a FleetMember -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2022-07-02-preview, 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -func LookupFleetMember(ctx *pulumi.Context, args *LookupFleetMemberArgs, opts ...pulumi.InvokeOption) (*LookupFleetMemberResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupFleetMemberResult - err := ctx.Invoke("azure-native:containerservice:getFleetMember", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type LookupFleetMemberArgs struct { - // The name of the Fleet member resource. - FleetMemberName string `pulumi:"fleetMemberName"` - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` -} - -// A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure. -type LookupFleetMemberResult struct { - // The ARM resource id of the cluster that joins the Fleet. Must be a valid Azure resource id. e.g.: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}'. - ClusterResourceId string `pulumi:"clusterResourceId"` - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag string `pulumi:"eTag"` - // The group this member belongs to for multi-cluster update management. - Group *string `pulumi:"group"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - Id string `pulumi:"id"` - // The name of the resource - Name string `pulumi:"name"` - // The status of the last operation. - ProvisioningState string `pulumi:"provisioningState"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponse `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type string `pulumi:"type"` -} - -func LookupFleetMemberOutput(ctx *pulumi.Context, args LookupFleetMemberOutputArgs, opts ...pulumi.InvokeOption) LookupFleetMemberResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFleetMemberResult, error) { - args := v.(LookupFleetMemberArgs) - r, err := LookupFleetMember(ctx, &args, opts...) - var s LookupFleetMemberResult - if r != nil { - s = *r - } - return s, err - }).(LookupFleetMemberResultOutput) -} - -type LookupFleetMemberOutputArgs struct { - // The name of the Fleet member resource. - FleetMemberName pulumi.StringInput `pulumi:"fleetMemberName"` - // The name of the Fleet resource. - FleetName pulumi.StringInput `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` -} - -func (LookupFleetMemberOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupFleetMemberArgs)(nil)).Elem() -} - -// A member of the Fleet. It contains a reference to an existing Kubernetes cluster on Azure. -type LookupFleetMemberResultOutput struct{ *pulumi.OutputState } - -func (LookupFleetMemberResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupFleetMemberResult)(nil)).Elem() -} - -func (o LookupFleetMemberResultOutput) ToLookupFleetMemberResultOutput() LookupFleetMemberResultOutput { - return o -} - -func (o LookupFleetMemberResultOutput) ToLookupFleetMemberResultOutputWithContext(ctx context.Context) LookupFleetMemberResultOutput { - return o -} - -// The ARM resource id of the cluster that joins the Fleet. Must be a valid Azure resource id. e.g.: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{clusterName}'. -func (o LookupFleetMemberResultOutput) ClusterResourceId() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetMemberResult) string { return v.ClusterResourceId }).(pulumi.StringOutput) -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o LookupFleetMemberResultOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetMemberResult) string { return v.ETag }).(pulumi.StringOutput) -} - -// The group this member belongs to for multi-cluster update management. -func (o LookupFleetMemberResultOutput) Group() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupFleetMemberResult) *string { return v.Group }).(pulumi.StringPtrOutput) -} - -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} -func (o LookupFleetMemberResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetMemberResult) string { return v.Id }).(pulumi.StringOutput) -} - -// The name of the resource -func (o LookupFleetMemberResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetMemberResult) string { return v.Name }).(pulumi.StringOutput) -} - -// The status of the last operation. -func (o LookupFleetMemberResultOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetMemberResult) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LookupFleetMemberResultOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v LookupFleetMemberResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LookupFleetMemberResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetMemberResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupFleetMemberResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetUpdateStrategy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetUpdateStrategy.go deleted file mode 100644 index 65c4fb54f..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getFleetUpdateStrategy.go +++ /dev/null @@ -1,133 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Get a FleetUpdateStrategy -// Azure REST API version: 2023-08-15-preview. -// -// Other available API versions: 2023-10-15, 2024-02-02-preview, 2024-04-01. -func LookupFleetUpdateStrategy(ctx *pulumi.Context, args *LookupFleetUpdateStrategyArgs, opts ...pulumi.InvokeOption) (*LookupFleetUpdateStrategyResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupFleetUpdateStrategyResult - err := ctx.Invoke("azure-native:containerservice:getFleetUpdateStrategy", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type LookupFleetUpdateStrategyArgs struct { - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the UpdateStrategy resource. - UpdateStrategyName string `pulumi:"updateStrategyName"` -} - -// Defines a multi-stage process to perform update operations across members of a Fleet. -type LookupFleetUpdateStrategyResult struct { - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag string `pulumi:"eTag"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - Id string `pulumi:"id"` - // The name of the resource - Name string `pulumi:"name"` - // The provisioning state of the UpdateStrategy resource. - ProvisioningState string `pulumi:"provisioningState"` - // Defines the update sequence of the clusters. - Strategy UpdateRunStrategyResponse `pulumi:"strategy"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponse `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type string `pulumi:"type"` -} - -func LookupFleetUpdateStrategyOutput(ctx *pulumi.Context, args LookupFleetUpdateStrategyOutputArgs, opts ...pulumi.InvokeOption) LookupFleetUpdateStrategyResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFleetUpdateStrategyResult, error) { - args := v.(LookupFleetUpdateStrategyArgs) - r, err := LookupFleetUpdateStrategy(ctx, &args, opts...) - var s LookupFleetUpdateStrategyResult - if r != nil { - s = *r - } - return s, err - }).(LookupFleetUpdateStrategyResultOutput) -} - -type LookupFleetUpdateStrategyOutputArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringInput `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` - // The name of the UpdateStrategy resource. - UpdateStrategyName pulumi.StringInput `pulumi:"updateStrategyName"` -} - -func (LookupFleetUpdateStrategyOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupFleetUpdateStrategyArgs)(nil)).Elem() -} - -// Defines a multi-stage process to perform update operations across members of a Fleet. -type LookupFleetUpdateStrategyResultOutput struct{ *pulumi.OutputState } - -func (LookupFleetUpdateStrategyResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupFleetUpdateStrategyResult)(nil)).Elem() -} - -func (o LookupFleetUpdateStrategyResultOutput) ToLookupFleetUpdateStrategyResultOutput() LookupFleetUpdateStrategyResultOutput { - return o -} - -func (o LookupFleetUpdateStrategyResultOutput) ToLookupFleetUpdateStrategyResultOutputWithContext(ctx context.Context) LookupFleetUpdateStrategyResultOutput { - return o -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o LookupFleetUpdateStrategyResultOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) string { return v.ETag }).(pulumi.StringOutput) -} - -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} -func (o LookupFleetUpdateStrategyResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) string { return v.Id }).(pulumi.StringOutput) -} - -// The name of the resource -func (o LookupFleetUpdateStrategyResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) string { return v.Name }).(pulumi.StringOutput) -} - -// The provisioning state of the UpdateStrategy resource. -func (o LookupFleetUpdateStrategyResultOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Defines the update sequence of the clusters. -func (o LookupFleetUpdateStrategyResultOutput) Strategy() UpdateRunStrategyResponseOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) UpdateRunStrategyResponse { return v.Strategy }).(UpdateRunStrategyResponseOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LookupFleetUpdateStrategyResultOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LookupFleetUpdateStrategyResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupFleetUpdateStrategyResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupFleetUpdateStrategyResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getLoadBalancer.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getLoadBalancer.go deleted file mode 100644 index 72a28e393..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getLoadBalancer.go +++ /dev/null @@ -1,154 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// The configurations regarding multiple standard load balancers. If not supplied, single load balancer mode will be used. Multiple standard load balancers mode will be used if at lease one configuration is supplied. There has to be a configuration named `kubernetes`. -// Azure REST API version: 2024-03-02-preview. -// -// Other available API versions: 2024-04-02-preview, 2024-05-02-preview. -func LookupLoadBalancer(ctx *pulumi.Context, args *LookupLoadBalancerArgs, opts ...pulumi.InvokeOption) (*LookupLoadBalancerResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupLoadBalancerResult - err := ctx.Invoke("azure-native:containerservice:getLoadBalancer", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type LookupLoadBalancerArgs struct { - // The name of the load balancer. - LoadBalancerName string `pulumi:"loadBalancerName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName string `pulumi:"resourceName"` -} - -// The configurations regarding multiple standard load balancers. If not supplied, single load balancer mode will be used. Multiple standard load balancers mode will be used if at lease one configuration is supplied. There has to be a configuration named `kubernetes`. -type LookupLoadBalancerResult struct { - // Whether to automatically place services on the load balancer. If not supplied, the default value is true. If set to false manually, both of the external and the internal load balancer will not be selected for services unless they explicitly target it. - AllowServicePlacement *bool `pulumi:"allowServicePlacement"` - // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" - Id string `pulumi:"id"` - // The name of the resource - Name string `pulumi:"name"` - // Nodes that match this selector will be possible members of this load balancer. - NodeSelector *LabelSelectorResponse `pulumi:"nodeSelector"` - // Required field. A string value that must specify the ID of an existing agent pool. All nodes in the given pool will always be added to this load balancer. This agent pool must have at least one node and minCount>=1 for autoscaling operations. An agent pool can only be the primary pool for a single load balancer. - PrimaryAgentPoolName string `pulumi:"primaryAgentPoolName"` - // The current provisioning state. - ProvisioningState string `pulumi:"provisioningState"` - // Only services that must match this selector can be placed on this load balancer. - ServiceLabelSelector *LabelSelectorResponse `pulumi:"serviceLabelSelector"` - // Services created in namespaces that match the selector can be placed on this load balancer. - ServiceNamespaceSelector *LabelSelectorResponse `pulumi:"serviceNamespaceSelector"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponse `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type string `pulumi:"type"` -} - -func LookupLoadBalancerOutput(ctx *pulumi.Context, args LookupLoadBalancerOutputArgs, opts ...pulumi.InvokeOption) LookupLoadBalancerResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLoadBalancerResult, error) { - args := v.(LookupLoadBalancerArgs) - r, err := LookupLoadBalancer(ctx, &args, opts...) - var s LookupLoadBalancerResult - if r != nil { - s = *r - } - return s, err - }).(LookupLoadBalancerResultOutput) -} - -type LookupLoadBalancerOutputArgs struct { - // The name of the load balancer. - LoadBalancerName pulumi.StringInput `pulumi:"loadBalancerName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName pulumi.StringInput `pulumi:"resourceName"` -} - -func (LookupLoadBalancerOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupLoadBalancerArgs)(nil)).Elem() -} - -// The configurations regarding multiple standard load balancers. If not supplied, single load balancer mode will be used. Multiple standard load balancers mode will be used if at lease one configuration is supplied. There has to be a configuration named `kubernetes`. -type LookupLoadBalancerResultOutput struct{ *pulumi.OutputState } - -func (LookupLoadBalancerResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupLoadBalancerResult)(nil)).Elem() -} - -func (o LookupLoadBalancerResultOutput) ToLookupLoadBalancerResultOutput() LookupLoadBalancerResultOutput { - return o -} - -func (o LookupLoadBalancerResultOutput) ToLookupLoadBalancerResultOutputWithContext(ctx context.Context) LookupLoadBalancerResultOutput { - return o -} - -// Whether to automatically place services on the load balancer. If not supplied, the default value is true. If set to false manually, both of the external and the internal load balancer will not be selected for services unless they explicitly target it. -func (o LookupLoadBalancerResultOutput) AllowServicePlacement() pulumi.BoolPtrOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) *bool { return v.AllowServicePlacement }).(pulumi.BoolPtrOutput) -} - -// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" -func (o LookupLoadBalancerResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.Id }).(pulumi.StringOutput) -} - -// The name of the resource -func (o LookupLoadBalancerResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.Name }).(pulumi.StringOutput) -} - -// Nodes that match this selector will be possible members of this load balancer. -func (o LookupLoadBalancerResultOutput) NodeSelector() LabelSelectorResponsePtrOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) *LabelSelectorResponse { return v.NodeSelector }).(LabelSelectorResponsePtrOutput) -} - -// Required field. A string value that must specify the ID of an existing agent pool. All nodes in the given pool will always be added to this load balancer. This agent pool must have at least one node and minCount>=1 for autoscaling operations. An agent pool can only be the primary pool for a single load balancer. -func (o LookupLoadBalancerResultOutput) PrimaryAgentPoolName() pulumi.StringOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.PrimaryAgentPoolName }).(pulumi.StringOutput) -} - -// The current provisioning state. -func (o LookupLoadBalancerResultOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Only services that must match this selector can be placed on this load balancer. -func (o LookupLoadBalancerResultOutput) ServiceLabelSelector() LabelSelectorResponsePtrOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) *LabelSelectorResponse { return v.ServiceLabelSelector }).(LabelSelectorResponsePtrOutput) -} - -// Services created in namespaces that match the selector can be placed on this load balancer. -func (o LookupLoadBalancerResultOutput) ServiceNamespaceSelector() LabelSelectorResponsePtrOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) *LabelSelectorResponse { return v.ServiceNamespaceSelector }).(LabelSelectorResponsePtrOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LookupLoadBalancerResultOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LookupLoadBalancerResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupLoadBalancerResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupLoadBalancerResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedClusterSnapshot.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedClusterSnapshot.go deleted file mode 100644 index 0111d288a..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedClusterSnapshot.go +++ /dev/null @@ -1,145 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// A managed cluster snapshot resource. -// Azure REST API version: 2023-05-02-preview. -// -// Other available API versions: 2023-06-02-preview, 2023-07-02-preview, 2023-08-02-preview, 2023-09-02-preview, 2023-10-02-preview, 2023-11-02-preview, 2024-01-02-preview, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-02-preview. -func LookupManagedClusterSnapshot(ctx *pulumi.Context, args *LookupManagedClusterSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupManagedClusterSnapshotResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupManagedClusterSnapshotResult - err := ctx.Invoke("azure-native:containerservice:getManagedClusterSnapshot", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type LookupManagedClusterSnapshotArgs struct { - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName string `pulumi:"resourceName"` -} - -// A managed cluster snapshot resource. -type LookupManagedClusterSnapshotResult struct { - // CreationData to be used to specify the source resource ID to create this snapshot. - CreationData *CreationDataResponse `pulumi:"creationData"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - Id string `pulumi:"id"` - // The geo-location where the resource lives - Location string `pulumi:"location"` - // What the properties will be showed when getting managed cluster snapshot. Those properties are read-only. - ManagedClusterPropertiesReadOnly ManagedClusterPropertiesForSnapshotResponse `pulumi:"managedClusterPropertiesReadOnly"` - // The name of the resource - Name string `pulumi:"name"` - // The type of a snapshot. The default is NodePool. - SnapshotType *string `pulumi:"snapshotType"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponse `pulumi:"systemData"` - // Resource tags. - Tags map[string]string `pulumi:"tags"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type string `pulumi:"type"` -} - -func LookupManagedClusterSnapshotOutput(ctx *pulumi.Context, args LookupManagedClusterSnapshotOutputArgs, opts ...pulumi.InvokeOption) LookupManagedClusterSnapshotResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagedClusterSnapshotResult, error) { - args := v.(LookupManagedClusterSnapshotArgs) - r, err := LookupManagedClusterSnapshot(ctx, &args, opts...) - var s LookupManagedClusterSnapshotResult - if r != nil { - s = *r - } - return s, err - }).(LookupManagedClusterSnapshotResultOutput) -} - -type LookupManagedClusterSnapshotOutputArgs struct { - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName pulumi.StringInput `pulumi:"resourceName"` -} - -func (LookupManagedClusterSnapshotOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupManagedClusterSnapshotArgs)(nil)).Elem() -} - -// A managed cluster snapshot resource. -type LookupManagedClusterSnapshotResultOutput struct{ *pulumi.OutputState } - -func (LookupManagedClusterSnapshotResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupManagedClusterSnapshotResult)(nil)).Elem() -} - -func (o LookupManagedClusterSnapshotResultOutput) ToLookupManagedClusterSnapshotResultOutput() LookupManagedClusterSnapshotResultOutput { - return o -} - -func (o LookupManagedClusterSnapshotResultOutput) ToLookupManagedClusterSnapshotResultOutputWithContext(ctx context.Context) LookupManagedClusterSnapshotResultOutput { - return o -} - -// CreationData to be used to specify the source resource ID to create this snapshot. -func (o LookupManagedClusterSnapshotResultOutput) CreationData() CreationDataResponsePtrOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) *CreationDataResponse { return v.CreationData }).(CreationDataResponsePtrOutput) -} - -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} -func (o LookupManagedClusterSnapshotResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) string { return v.Id }).(pulumi.StringOutput) -} - -// The geo-location where the resource lives -func (o LookupManagedClusterSnapshotResultOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) string { return v.Location }).(pulumi.StringOutput) -} - -// What the properties will be showed when getting managed cluster snapshot. Those properties are read-only. -func (o LookupManagedClusterSnapshotResultOutput) ManagedClusterPropertiesReadOnly() ManagedClusterPropertiesForSnapshotResponseOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) ManagedClusterPropertiesForSnapshotResponse { - return v.ManagedClusterPropertiesReadOnly - }).(ManagedClusterPropertiesForSnapshotResponseOutput) -} - -// The name of the resource -func (o LookupManagedClusterSnapshotResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) string { return v.Name }).(pulumi.StringOutput) -} - -// The type of a snapshot. The default is NodePool. -func (o LookupManagedClusterSnapshotResultOutput) SnapshotType() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) *string { return v.SnapshotType }).(pulumi.StringPtrOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LookupManagedClusterSnapshotResultOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) -} - -// Resource tags. -func (o LookupManagedClusterSnapshotResultOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LookupManagedClusterSnapshotResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupManagedClusterSnapshotResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupManagedClusterSnapshotResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getOpenShiftManagedCluster.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getOpenShiftManagedCluster.go deleted file mode 100644 index 3cfb35941..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getOpenShiftManagedCluster.go +++ /dev/null @@ -1,225 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Gets the details of the managed OpenShift cluster with a specified resource group and name. -// Azure REST API version: 2019-10-27-preview. -// -// Other available API versions: 2018-09-30-preview. -func LookupOpenShiftManagedCluster(ctx *pulumi.Context, args *LookupOpenShiftManagedClusterArgs, opts ...pulumi.InvokeOption) (*LookupOpenShiftManagedClusterResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupOpenShiftManagedClusterResult - err := ctx.Invoke("azure-native:containerservice:getOpenShiftManagedCluster", args, &rv, opts...) - if err != nil { - return nil, err - } - return rv.Defaults(), nil -} - -type LookupOpenShiftManagedClusterArgs struct { - // The name of the resource group. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the OpenShift managed cluster resource. - ResourceName string `pulumi:"resourceName"` -} - -// OpenShift Managed cluster. -type LookupOpenShiftManagedClusterResult struct { - // Configuration of OpenShift cluster VMs. - AgentPoolProfiles []OpenShiftManagedClusterAgentPoolProfileResponse `pulumi:"agentPoolProfiles"` - // Configures OpenShift authentication. - AuthProfile *OpenShiftManagedClusterAuthProfileResponse `pulumi:"authProfile"` - // Version of OpenShift specified when creating the cluster. - ClusterVersion string `pulumi:"clusterVersion"` - // Service generated FQDN for OpenShift API server loadbalancer internal hostname. - Fqdn string `pulumi:"fqdn"` - // Resource Id - Id string `pulumi:"id"` - // Resource location - Location string `pulumi:"location"` - // Configuration for OpenShift master VMs. - MasterPoolProfile *OpenShiftManagedClusterMasterPoolProfileResponse `pulumi:"masterPoolProfile"` - // Configures Log Analytics integration. - MonitorProfile *OpenShiftManagedClusterMonitorProfileResponse `pulumi:"monitorProfile"` - // Resource name - Name string `pulumi:"name"` - // Configuration for OpenShift networking. - NetworkProfile *NetworkProfileResponse `pulumi:"networkProfile"` - // Version of OpenShift specified when creating the cluster. - OpenShiftVersion string `pulumi:"openShiftVersion"` - // Define the resource plan as required by ARM for billing purposes - Plan *PurchasePlanResponse `pulumi:"plan"` - // The current deployment or provisioning state, which only appears in the response. - ProvisioningState string `pulumi:"provisioningState"` - // Service generated FQDN or private IP for OpenShift API server. - PublicHostname string `pulumi:"publicHostname"` - // Allows node rotation - RefreshCluster *bool `pulumi:"refreshCluster"` - // Configuration for OpenShift router(s). - RouterProfiles []OpenShiftRouterProfileResponse `pulumi:"routerProfiles"` - // Resource tags - Tags map[string]string `pulumi:"tags"` - // Resource type - Type string `pulumi:"type"` -} - -// Defaults sets the appropriate defaults for LookupOpenShiftManagedClusterResult -func (val *LookupOpenShiftManagedClusterResult) Defaults() *LookupOpenShiftManagedClusterResult { - if val == nil { - return nil - } - tmp := *val - tmp.NetworkProfile = tmp.NetworkProfile.Defaults() - - return &tmp -} - -func LookupOpenShiftManagedClusterOutput(ctx *pulumi.Context, args LookupOpenShiftManagedClusterOutputArgs, opts ...pulumi.InvokeOption) LookupOpenShiftManagedClusterResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupOpenShiftManagedClusterResult, error) { - args := v.(LookupOpenShiftManagedClusterArgs) - r, err := LookupOpenShiftManagedCluster(ctx, &args, opts...) - var s LookupOpenShiftManagedClusterResult - if r != nil { - s = *r - } - return s, err - }).(LookupOpenShiftManagedClusterResultOutput) -} - -type LookupOpenShiftManagedClusterOutputArgs struct { - // The name of the resource group. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` - // The name of the OpenShift managed cluster resource. - ResourceName pulumi.StringInput `pulumi:"resourceName"` -} - -func (LookupOpenShiftManagedClusterOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupOpenShiftManagedClusterArgs)(nil)).Elem() -} - -// OpenShift Managed cluster. -type LookupOpenShiftManagedClusterResultOutput struct{ *pulumi.OutputState } - -func (LookupOpenShiftManagedClusterResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupOpenShiftManagedClusterResult)(nil)).Elem() -} - -func (o LookupOpenShiftManagedClusterResultOutput) ToLookupOpenShiftManagedClusterResultOutput() LookupOpenShiftManagedClusterResultOutput { - return o -} - -func (o LookupOpenShiftManagedClusterResultOutput) ToLookupOpenShiftManagedClusterResultOutputWithContext(ctx context.Context) LookupOpenShiftManagedClusterResultOutput { - return o -} - -// Configuration of OpenShift cluster VMs. -func (o LookupOpenShiftManagedClusterResultOutput) AgentPoolProfiles() OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) []OpenShiftManagedClusterAgentPoolProfileResponse { - return v.AgentPoolProfiles - }).(OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput) -} - -// Configures OpenShift authentication. -func (o LookupOpenShiftManagedClusterResultOutput) AuthProfile() OpenShiftManagedClusterAuthProfileResponsePtrOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) *OpenShiftManagedClusterAuthProfileResponse { - return v.AuthProfile - }).(OpenShiftManagedClusterAuthProfileResponsePtrOutput) -} - -// Version of OpenShift specified when creating the cluster. -func (o LookupOpenShiftManagedClusterResultOutput) ClusterVersion() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.ClusterVersion }).(pulumi.StringOutput) -} - -// Service generated FQDN for OpenShift API server loadbalancer internal hostname. -func (o LookupOpenShiftManagedClusterResultOutput) Fqdn() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.Fqdn }).(pulumi.StringOutput) -} - -// Resource Id -func (o LookupOpenShiftManagedClusterResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.Id }).(pulumi.StringOutput) -} - -// Resource location -func (o LookupOpenShiftManagedClusterResultOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.Location }).(pulumi.StringOutput) -} - -// Configuration for OpenShift master VMs. -func (o LookupOpenShiftManagedClusterResultOutput) MasterPoolProfile() OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) *OpenShiftManagedClusterMasterPoolProfileResponse { - return v.MasterPoolProfile - }).(OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) -} - -// Configures Log Analytics integration. -func (o LookupOpenShiftManagedClusterResultOutput) MonitorProfile() OpenShiftManagedClusterMonitorProfileResponsePtrOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) *OpenShiftManagedClusterMonitorProfileResponse { - return v.MonitorProfile - }).(OpenShiftManagedClusterMonitorProfileResponsePtrOutput) -} - -// Resource name -func (o LookupOpenShiftManagedClusterResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.Name }).(pulumi.StringOutput) -} - -// Configuration for OpenShift networking. -func (o LookupOpenShiftManagedClusterResultOutput) NetworkProfile() NetworkProfileResponsePtrOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) *NetworkProfileResponse { return v.NetworkProfile }).(NetworkProfileResponsePtrOutput) -} - -// Version of OpenShift specified when creating the cluster. -func (o LookupOpenShiftManagedClusterResultOutput) OpenShiftVersion() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.OpenShiftVersion }).(pulumi.StringOutput) -} - -// Define the resource plan as required by ARM for billing purposes -func (o LookupOpenShiftManagedClusterResultOutput) Plan() PurchasePlanResponsePtrOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) *PurchasePlanResponse { return v.Plan }).(PurchasePlanResponsePtrOutput) -} - -// The current deployment or provisioning state, which only appears in the response. -func (o LookupOpenShiftManagedClusterResultOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Service generated FQDN or private IP for OpenShift API server. -func (o LookupOpenShiftManagedClusterResultOutput) PublicHostname() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.PublicHostname }).(pulumi.StringOutput) -} - -// Allows node rotation -func (o LookupOpenShiftManagedClusterResultOutput) RefreshCluster() pulumi.BoolPtrOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) *bool { return v.RefreshCluster }).(pulumi.BoolPtrOutput) -} - -// Configuration for OpenShift router(s). -func (o LookupOpenShiftManagedClusterResultOutput) RouterProfiles() OpenShiftRouterProfileResponseArrayOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) []OpenShiftRouterProfileResponse { return v.RouterProfiles }).(OpenShiftRouterProfileResponseArrayOutput) -} - -// Resource tags -func (o LookupOpenShiftManagedClusterResultOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) -} - -// Resource type -func (o LookupOpenShiftManagedClusterResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupOpenShiftManagedClusterResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupOpenShiftManagedClusterResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getUpdateRun.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getUpdateRun.go deleted file mode 100644 index c51d09458..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getUpdateRun.go +++ /dev/null @@ -1,151 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Get a UpdateRun -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -func LookupUpdateRun(ctx *pulumi.Context, args *LookupUpdateRunArgs, opts ...pulumi.InvokeOption) (*LookupUpdateRunResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv LookupUpdateRunResult - err := ctx.Invoke("azure-native:containerservice:getUpdateRun", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type LookupUpdateRunArgs struct { - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the UpdateRun resource. - UpdateRunName string `pulumi:"updateRunName"` -} - -// A multi-stage process to perform update operations across members of a Fleet. -type LookupUpdateRunResult struct { - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag string `pulumi:"eTag"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - Id string `pulumi:"id"` - // The update to be applied to all clusters in the UpdateRun. The managedClusterUpdate can be modified until the run is started. - ManagedClusterUpdate ManagedClusterUpdateResponse `pulumi:"managedClusterUpdate"` - // The name of the resource - Name string `pulumi:"name"` - // The provisioning state of the UpdateRun resource. - ProvisioningState string `pulumi:"provisioningState"` - // The status of the UpdateRun. - Status UpdateRunStatusResponse `pulumi:"status"` - // The strategy defines the order in which the clusters will be updated. - // If not set, all members will be updated sequentially. The UpdateRun status will show a single UpdateStage and a single UpdateGroup targeting all members. - // The strategy of the UpdateRun can be modified until the run is started. - Strategy *UpdateRunStrategyResponse `pulumi:"strategy"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponse `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type string `pulumi:"type"` -} - -func LookupUpdateRunOutput(ctx *pulumi.Context, args LookupUpdateRunOutputArgs, opts ...pulumi.InvokeOption) LookupUpdateRunResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupUpdateRunResult, error) { - args := v.(LookupUpdateRunArgs) - r, err := LookupUpdateRun(ctx, &args, opts...) - var s LookupUpdateRunResult - if r != nil { - s = *r - } - return s, err - }).(LookupUpdateRunResultOutput) -} - -type LookupUpdateRunOutputArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringInput `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` - // The name of the UpdateRun resource. - UpdateRunName pulumi.StringInput `pulumi:"updateRunName"` -} - -func (LookupUpdateRunOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LookupUpdateRunArgs)(nil)).Elem() -} - -// A multi-stage process to perform update operations across members of a Fleet. -type LookupUpdateRunResultOutput struct{ *pulumi.OutputState } - -func (LookupUpdateRunResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LookupUpdateRunResult)(nil)).Elem() -} - -func (o LookupUpdateRunResultOutput) ToLookupUpdateRunResultOutput() LookupUpdateRunResultOutput { - return o -} - -func (o LookupUpdateRunResultOutput) ToLookupUpdateRunResultOutputWithContext(ctx context.Context) LookupUpdateRunResultOutput { - return o -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o LookupUpdateRunResultOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v LookupUpdateRunResult) string { return v.ETag }).(pulumi.StringOutput) -} - -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} -func (o LookupUpdateRunResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v LookupUpdateRunResult) string { return v.Id }).(pulumi.StringOutput) -} - -// The update to be applied to all clusters in the UpdateRun. The managedClusterUpdate can be modified until the run is started. -func (o LookupUpdateRunResultOutput) ManagedClusterUpdate() ManagedClusterUpdateResponseOutput { - return o.ApplyT(func(v LookupUpdateRunResult) ManagedClusterUpdateResponse { return v.ManagedClusterUpdate }).(ManagedClusterUpdateResponseOutput) -} - -// The name of the resource -func (o LookupUpdateRunResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v LookupUpdateRunResult) string { return v.Name }).(pulumi.StringOutput) -} - -// The provisioning state of the UpdateRun resource. -func (o LookupUpdateRunResultOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v LookupUpdateRunResult) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// The status of the UpdateRun. -func (o LookupUpdateRunResultOutput) Status() UpdateRunStatusResponseOutput { - return o.ApplyT(func(v LookupUpdateRunResult) UpdateRunStatusResponse { return v.Status }).(UpdateRunStatusResponseOutput) -} - -// The strategy defines the order in which the clusters will be updated. -// If not set, all members will be updated sequentially. The UpdateRun status will show a single UpdateStage and a single UpdateGroup targeting all members. -// The strategy of the UpdateRun can be modified until the run is started. -func (o LookupUpdateRunResultOutput) Strategy() UpdateRunStrategyResponsePtrOutput { - return o.ApplyT(func(v LookupUpdateRunResult) *UpdateRunStrategyResponse { return v.Strategy }).(UpdateRunStrategyResponsePtrOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LookupUpdateRunResultOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v LookupUpdateRunResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LookupUpdateRunResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v LookupUpdateRunResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LookupUpdateRunResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listFleetCredentials.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listFleetCredentials.go deleted file mode 100644 index 2b249a8d1..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listFleetCredentials.go +++ /dev/null @@ -1,87 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Lists the user credentials of a Fleet. -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2022-07-02-preview, 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -func ListFleetCredentials(ctx *pulumi.Context, args *ListFleetCredentialsArgs, opts ...pulumi.InvokeOption) (*ListFleetCredentialsResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv ListFleetCredentialsResult - err := ctx.Invoke("azure-native:containerservice:listFleetCredentials", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type ListFleetCredentialsArgs struct { - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` -} - -// The Credential results response. -type ListFleetCredentialsResult struct { - // Array of base64-encoded Kubernetes configuration files. - Kubeconfigs []FleetCredentialResultResponse `pulumi:"kubeconfigs"` -} - -func ListFleetCredentialsOutput(ctx *pulumi.Context, args ListFleetCredentialsOutputArgs, opts ...pulumi.InvokeOption) ListFleetCredentialsResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListFleetCredentialsResult, error) { - args := v.(ListFleetCredentialsArgs) - r, err := ListFleetCredentials(ctx, &args, opts...) - var s ListFleetCredentialsResult - if r != nil { - s = *r - } - return s, err - }).(ListFleetCredentialsResultOutput) -} - -type ListFleetCredentialsOutputArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringInput `pulumi:"fleetName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` -} - -func (ListFleetCredentialsOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ListFleetCredentialsArgs)(nil)).Elem() -} - -// The Credential results response. -type ListFleetCredentialsResultOutput struct{ *pulumi.OutputState } - -func (ListFleetCredentialsResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ListFleetCredentialsResult)(nil)).Elem() -} - -func (o ListFleetCredentialsResultOutput) ToListFleetCredentialsResultOutput() ListFleetCredentialsResultOutput { - return o -} - -func (o ListFleetCredentialsResultOutput) ToListFleetCredentialsResultOutputWithContext(ctx context.Context) ListFleetCredentialsResultOutput { - return o -} - -// Array of base64-encoded Kubernetes configuration files. -func (o ListFleetCredentialsResultOutput) Kubeconfigs() FleetCredentialResultResponseArrayOutput { - return o.ApplyT(func(v ListFleetCredentialsResult) []FleetCredentialResultResponse { return v.Kubeconfigs }).(FleetCredentialResultResponseArrayOutput) -} - -func init() { - pulumi.RegisterOutputType(ListFleetCredentialsResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAccessProfile.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAccessProfile.go deleted file mode 100644 index 0cf8a0b24..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAccessProfile.go +++ /dev/null @@ -1,126 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// Gets the accessProfile for the specified role name of the managed cluster with a specified resource group and name. -// Azure REST API version: 2020-03-01. -// -// Other available API versions: 2017-08-31, 2019-02-01, 2019-06-01. -func ListManagedClusterAccessProfile(ctx *pulumi.Context, args *ListManagedClusterAccessProfileArgs, opts ...pulumi.InvokeOption) (*ListManagedClusterAccessProfileResult, error) { - opts = utilities.PkgInvokeDefaultOpts(opts) - var rv ListManagedClusterAccessProfileResult - err := ctx.Invoke("azure-native:containerservice:listManagedClusterAccessProfile", args, &rv, opts...) - if err != nil { - return nil, err - } - return &rv, nil -} - -type ListManagedClusterAccessProfileArgs struct { - // The name of the resource group. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName string `pulumi:"resourceName"` - // The name of the role for managed cluster accessProfile resource. - RoleName string `pulumi:"roleName"` -} - -// Managed cluster Access Profile. -type ListManagedClusterAccessProfileResult struct { - // Resource Id - Id string `pulumi:"id"` - // Base64-encoded Kubernetes configuration file. - KubeConfig *string `pulumi:"kubeConfig"` - // Resource location - Location string `pulumi:"location"` - // Resource name - Name string `pulumi:"name"` - // Resource tags - Tags map[string]string `pulumi:"tags"` - // Resource type - Type string `pulumi:"type"` -} - -func ListManagedClusterAccessProfileOutput(ctx *pulumi.Context, args ListManagedClusterAccessProfileOutputArgs, opts ...pulumi.InvokeOption) ListManagedClusterAccessProfileResultOutput { - return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListManagedClusterAccessProfileResult, error) { - args := v.(ListManagedClusterAccessProfileArgs) - r, err := ListManagedClusterAccessProfile(ctx, &args, opts...) - var s ListManagedClusterAccessProfileResult - if r != nil { - s = *r - } - return s, err - }).(ListManagedClusterAccessProfileResultOutput) -} - -type ListManagedClusterAccessProfileOutputArgs struct { - // The name of the resource group. - ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName pulumi.StringInput `pulumi:"resourceName"` - // The name of the role for managed cluster accessProfile resource. - RoleName pulumi.StringInput `pulumi:"roleName"` -} - -func (ListManagedClusterAccessProfileOutputArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ListManagedClusterAccessProfileArgs)(nil)).Elem() -} - -// Managed cluster Access Profile. -type ListManagedClusterAccessProfileResultOutput struct{ *pulumi.OutputState } - -func (ListManagedClusterAccessProfileResultOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ListManagedClusterAccessProfileResult)(nil)).Elem() -} - -func (o ListManagedClusterAccessProfileResultOutput) ToListManagedClusterAccessProfileResultOutput() ListManagedClusterAccessProfileResultOutput { - return o -} - -func (o ListManagedClusterAccessProfileResultOutput) ToListManagedClusterAccessProfileResultOutputWithContext(ctx context.Context) ListManagedClusterAccessProfileResultOutput { - return o -} - -// Resource Id -func (o ListManagedClusterAccessProfileResultOutput) Id() pulumi.StringOutput { - return o.ApplyT(func(v ListManagedClusterAccessProfileResult) string { return v.Id }).(pulumi.StringOutput) -} - -// Base64-encoded Kubernetes configuration file. -func (o ListManagedClusterAccessProfileResultOutput) KubeConfig() pulumi.StringPtrOutput { - return o.ApplyT(func(v ListManagedClusterAccessProfileResult) *string { return v.KubeConfig }).(pulumi.StringPtrOutput) -} - -// Resource location -func (o ListManagedClusterAccessProfileResultOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v ListManagedClusterAccessProfileResult) string { return v.Location }).(pulumi.StringOutput) -} - -// Resource name -func (o ListManagedClusterAccessProfileResultOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ListManagedClusterAccessProfileResult) string { return v.Name }).(pulumi.StringOutput) -} - -// Resource tags -func (o ListManagedClusterAccessProfileResultOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v ListManagedClusterAccessProfileResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) -} - -// Resource type -func (o ListManagedClusterAccessProfileResultOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v ListManagedClusterAccessProfileResult) string { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(ListManagedClusterAccessProfileResultOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/loadBalancer.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/loadBalancer.go deleted file mode 100644 index ee4c77983..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/loadBalancer.go +++ /dev/null @@ -1,232 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// The configurations regarding multiple standard load balancers. If not supplied, single load balancer mode will be used. Multiple standard load balancers mode will be used if at lease one configuration is supplied. There has to be a configuration named `kubernetes`. -// Azure REST API version: 2024-03-02-preview. -// -// Other available API versions: 2024-04-02-preview, 2024-05-02-preview. -type LoadBalancer struct { - pulumi.CustomResourceState - - // Whether to automatically place services on the load balancer. If not supplied, the default value is true. If set to false manually, both of the external and the internal load balancer will not be selected for services unless they explicitly target it. - AllowServicePlacement pulumi.BoolPtrOutput `pulumi:"allowServicePlacement"` - // The name of the resource - Name pulumi.StringOutput `pulumi:"name"` - // Nodes that match this selector will be possible members of this load balancer. - NodeSelector LabelSelectorResponsePtrOutput `pulumi:"nodeSelector"` - // Required field. A string value that must specify the ID of an existing agent pool. All nodes in the given pool will always be added to this load balancer. This agent pool must have at least one node and minCount>=1 for autoscaling operations. An agent pool can only be the primary pool for a single load balancer. - PrimaryAgentPoolName pulumi.StringOutput `pulumi:"primaryAgentPoolName"` - // The current provisioning state. - ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` - // Only services that must match this selector can be placed on this load balancer. - ServiceLabelSelector LabelSelectorResponsePtrOutput `pulumi:"serviceLabelSelector"` - // Services created in namespaces that match the selector can be placed on this load balancer. - ServiceNamespaceSelector LabelSelectorResponsePtrOutput `pulumi:"serviceNamespaceSelector"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponseOutput `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewLoadBalancer registers a new resource with the given unique name, arguments, and options. -func NewLoadBalancer(ctx *pulumi.Context, - name string, args *LoadBalancerArgs, opts ...pulumi.ResourceOption) (*LoadBalancer, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.Name == nil { - return nil, errors.New("invalid value for required argument 'Name'") - } - if args.PrimaryAgentPoolName == nil { - return nil, errors.New("invalid value for required argument 'PrimaryAgentPoolName'") - } - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - if args.ResourceName == nil { - return nil, errors.New("invalid value for required argument 'ResourceName'") - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20240302preview:LoadBalancer"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240402preview:LoadBalancer"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240502preview:LoadBalancer"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource LoadBalancer - err := ctx.RegisterResource("azure-native:containerservice:LoadBalancer", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetLoadBalancer gets an existing LoadBalancer resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetLoadBalancer(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *LoadBalancerState, opts ...pulumi.ResourceOption) (*LoadBalancer, error) { - var resource LoadBalancer - err := ctx.ReadResource("azure-native:containerservice:LoadBalancer", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering LoadBalancer resources. -type loadBalancerState struct { -} - -type LoadBalancerState struct { -} - -func (LoadBalancerState) ElementType() reflect.Type { - return reflect.TypeOf((*loadBalancerState)(nil)).Elem() -} - -type loadBalancerArgs struct { - // Whether to automatically place services on the load balancer. If not supplied, the default value is true. If set to false manually, both of the external and the internal load balancer will not be selected for services unless they explicitly target it. - AllowServicePlacement *bool `pulumi:"allowServicePlacement"` - // The name of the load balancer. - LoadBalancerName *string `pulumi:"loadBalancerName"` - // Name of the public load balancer. There will be an internal load balancer created if needed, and the name will be `-internal`. The internal lb shares the same configurations as the external one. The internal lbs are not needed to be included in LoadBalancer list. There must be a name of kubernetes in the list. - Name string `pulumi:"name"` - // Nodes that match this selector will be possible members of this load balancer. - NodeSelector *LabelSelector `pulumi:"nodeSelector"` - // Required field. A string value that must specify the ID of an existing agent pool. All nodes in the given pool will always be added to this load balancer. This agent pool must have at least one node and minCount>=1 for autoscaling operations. An agent pool can only be the primary pool for a single load balancer. - PrimaryAgentPoolName string `pulumi:"primaryAgentPoolName"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName string `pulumi:"resourceName"` - // Only services that must match this selector can be placed on this load balancer. - ServiceLabelSelector *LabelSelector `pulumi:"serviceLabelSelector"` - // Services created in namespaces that match the selector can be placed on this load balancer. - ServiceNamespaceSelector *LabelSelector `pulumi:"serviceNamespaceSelector"` -} - -// The set of arguments for constructing a LoadBalancer resource. -type LoadBalancerArgs struct { - // Whether to automatically place services on the load balancer. If not supplied, the default value is true. If set to false manually, both of the external and the internal load balancer will not be selected for services unless they explicitly target it. - AllowServicePlacement pulumi.BoolPtrInput - // The name of the load balancer. - LoadBalancerName pulumi.StringPtrInput - // Name of the public load balancer. There will be an internal load balancer created if needed, and the name will be `-internal`. The internal lb shares the same configurations as the external one. The internal lbs are not needed to be included in LoadBalancer list. There must be a name of kubernetes in the list. - Name pulumi.StringInput - // Nodes that match this selector will be possible members of this load balancer. - NodeSelector LabelSelectorPtrInput - // Required field. A string value that must specify the ID of an existing agent pool. All nodes in the given pool will always be added to this load balancer. This agent pool must have at least one node and minCount>=1 for autoscaling operations. An agent pool can only be the primary pool for a single load balancer. - PrimaryAgentPoolName pulumi.StringInput - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput - // The name of the managed cluster resource. - ResourceName pulumi.StringInput - // Only services that must match this selector can be placed on this load balancer. - ServiceLabelSelector LabelSelectorPtrInput - // Services created in namespaces that match the selector can be placed on this load balancer. - ServiceNamespaceSelector LabelSelectorPtrInput -} - -func (LoadBalancerArgs) ElementType() reflect.Type { - return reflect.TypeOf((*loadBalancerArgs)(nil)).Elem() -} - -type LoadBalancerInput interface { - pulumi.Input - - ToLoadBalancerOutput() LoadBalancerOutput - ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput -} - -func (*LoadBalancer) ElementType() reflect.Type { - return reflect.TypeOf((**LoadBalancer)(nil)).Elem() -} - -func (i *LoadBalancer) ToLoadBalancerOutput() LoadBalancerOutput { - return i.ToLoadBalancerOutputWithContext(context.Background()) -} - -func (i *LoadBalancer) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput { - return pulumi.ToOutputWithContext(ctx, i).(LoadBalancerOutput) -} - -type LoadBalancerOutput struct{ *pulumi.OutputState } - -func (LoadBalancerOutput) ElementType() reflect.Type { - return reflect.TypeOf((**LoadBalancer)(nil)).Elem() -} - -func (o LoadBalancerOutput) ToLoadBalancerOutput() LoadBalancerOutput { - return o -} - -func (o LoadBalancerOutput) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput { - return o -} - -// Whether to automatically place services on the load balancer. If not supplied, the default value is true. If set to false manually, both of the external and the internal load balancer will not be selected for services unless they explicitly target it. -func (o LoadBalancerOutput) AllowServicePlacement() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *LoadBalancer) pulumi.BoolPtrOutput { return v.AllowServicePlacement }).(pulumi.BoolPtrOutput) -} - -// The name of the resource -func (o LoadBalancerOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// Nodes that match this selector will be possible members of this load balancer. -func (o LoadBalancerOutput) NodeSelector() LabelSelectorResponsePtrOutput { - return o.ApplyT(func(v *LoadBalancer) LabelSelectorResponsePtrOutput { return v.NodeSelector }).(LabelSelectorResponsePtrOutput) -} - -// Required field. A string value that must specify the ID of an existing agent pool. All nodes in the given pool will always be added to this load balancer. This agent pool must have at least one node and minCount>=1 for autoscaling operations. An agent pool can only be the primary pool for a single load balancer. -func (o LoadBalancerOutput) PrimaryAgentPoolName() pulumi.StringOutput { - return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.PrimaryAgentPoolName }).(pulumi.StringOutput) -} - -// The current provisioning state. -func (o LoadBalancerOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Only services that must match this selector can be placed on this load balancer. -func (o LoadBalancerOutput) ServiceLabelSelector() LabelSelectorResponsePtrOutput { - return o.ApplyT(func(v *LoadBalancer) LabelSelectorResponsePtrOutput { return v.ServiceLabelSelector }).(LabelSelectorResponsePtrOutput) -} - -// Services created in namespaces that match the selector can be placed on this load balancer. -func (o LoadBalancerOutput) ServiceNamespaceSelector() LabelSelectorResponsePtrOutput { - return o.ApplyT(func(v *LoadBalancer) LabelSelectorResponsePtrOutput { return v.ServiceNamespaceSelector }).(LabelSelectorResponsePtrOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o LoadBalancerOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v *LoadBalancer) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o LoadBalancerOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *LoadBalancer) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(LoadBalancerOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedClusterSnapshot.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedClusterSnapshot.go deleted file mode 100644 index 4c16afa8b..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedClusterSnapshot.go +++ /dev/null @@ -1,278 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// A managed cluster snapshot resource. -// Azure REST API version: 2023-05-02-preview. Prior API version in Azure Native 1.x: 2022-02-02-preview. -// -// Other available API versions: 2023-06-02-preview, 2023-07-02-preview, 2023-08-02-preview, 2023-09-02-preview, 2023-10-02-preview, 2023-11-02-preview, 2024-01-02-preview, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-02-preview. -type ManagedClusterSnapshot struct { - pulumi.CustomResourceState - - // CreationData to be used to specify the source resource ID to create this snapshot. - CreationData CreationDataResponsePtrOutput `pulumi:"creationData"` - // The geo-location where the resource lives - Location pulumi.StringOutput `pulumi:"location"` - // What the properties will be showed when getting managed cluster snapshot. Those properties are read-only. - ManagedClusterPropertiesReadOnly ManagedClusterPropertiesForSnapshotResponseOutput `pulumi:"managedClusterPropertiesReadOnly"` - // The name of the resource - Name pulumi.StringOutput `pulumi:"name"` - // The type of a snapshot. The default is NodePool. - SnapshotType pulumi.StringPtrOutput `pulumi:"snapshotType"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponseOutput `pulumi:"systemData"` - // Resource tags. - Tags pulumi.StringMapOutput `pulumi:"tags"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewManagedClusterSnapshot registers a new resource with the given unique name, arguments, and options. -func NewManagedClusterSnapshot(ctx *pulumi.Context, - name string, args *ManagedClusterSnapshotArgs, opts ...pulumi.ResourceOption) (*ManagedClusterSnapshot, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20220202preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220302preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220402preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220502preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220602preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220702preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220802preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220803preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20220902preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20221002preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20221102preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230102preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230202preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230302preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230402preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230502preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230602preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230702preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230802preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230902preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20231002preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20231102preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240102preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240202preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240302preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240402preview:ManagedClusterSnapshot"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240502preview:ManagedClusterSnapshot"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource ManagedClusterSnapshot - err := ctx.RegisterResource("azure-native:containerservice:ManagedClusterSnapshot", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetManagedClusterSnapshot gets an existing ManagedClusterSnapshot resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetManagedClusterSnapshot(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *ManagedClusterSnapshotState, opts ...pulumi.ResourceOption) (*ManagedClusterSnapshot, error) { - var resource ManagedClusterSnapshot - err := ctx.ReadResource("azure-native:containerservice:ManagedClusterSnapshot", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering ManagedClusterSnapshot resources. -type managedClusterSnapshotState struct { -} - -type ManagedClusterSnapshotState struct { -} - -func (ManagedClusterSnapshotState) ElementType() reflect.Type { - return reflect.TypeOf((*managedClusterSnapshotState)(nil)).Elem() -} - -type managedClusterSnapshotArgs struct { - // CreationData to be used to specify the source resource ID to create this snapshot. - CreationData *CreationData `pulumi:"creationData"` - // The geo-location where the resource lives - Location *string `pulumi:"location"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the managed cluster resource. - ResourceName *string `pulumi:"resourceName"` - // The type of a snapshot. The default is NodePool. - SnapshotType *string `pulumi:"snapshotType"` - // Resource tags. - Tags map[string]string `pulumi:"tags"` -} - -// The set of arguments for constructing a ManagedClusterSnapshot resource. -type ManagedClusterSnapshotArgs struct { - // CreationData to be used to specify the source resource ID to create this snapshot. - CreationData CreationDataPtrInput - // The geo-location where the resource lives - Location pulumi.StringPtrInput - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput - // The name of the managed cluster resource. - ResourceName pulumi.StringPtrInput - // The type of a snapshot. The default is NodePool. - SnapshotType pulumi.StringPtrInput - // Resource tags. - Tags pulumi.StringMapInput -} - -func (ManagedClusterSnapshotArgs) ElementType() reflect.Type { - return reflect.TypeOf((*managedClusterSnapshotArgs)(nil)).Elem() -} - -type ManagedClusterSnapshotInput interface { - pulumi.Input - - ToManagedClusterSnapshotOutput() ManagedClusterSnapshotOutput - ToManagedClusterSnapshotOutputWithContext(ctx context.Context) ManagedClusterSnapshotOutput -} - -func (*ManagedClusterSnapshot) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSnapshot)(nil)).Elem() -} - -func (i *ManagedClusterSnapshot) ToManagedClusterSnapshotOutput() ManagedClusterSnapshotOutput { - return i.ToManagedClusterSnapshotOutputWithContext(context.Background()) -} - -func (i *ManagedClusterSnapshot) ToManagedClusterSnapshotOutputWithContext(ctx context.Context) ManagedClusterSnapshotOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSnapshotOutput) -} - -type ManagedClusterSnapshotOutput struct{ *pulumi.OutputState } - -func (ManagedClusterSnapshotOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSnapshot)(nil)).Elem() -} - -func (o ManagedClusterSnapshotOutput) ToManagedClusterSnapshotOutput() ManagedClusterSnapshotOutput { - return o -} - -func (o ManagedClusterSnapshotOutput) ToManagedClusterSnapshotOutputWithContext(ctx context.Context) ManagedClusterSnapshotOutput { - return o -} - -// CreationData to be used to specify the source resource ID to create this snapshot. -func (o ManagedClusterSnapshotOutput) CreationData() CreationDataResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) CreationDataResponsePtrOutput { return v.CreationData }).(CreationDataResponsePtrOutput) -} - -// The geo-location where the resource lives -func (o ManagedClusterSnapshotOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) -} - -// What the properties will be showed when getting managed cluster snapshot. Those properties are read-only. -func (o ManagedClusterSnapshotOutput) ManagedClusterPropertiesReadOnly() ManagedClusterPropertiesForSnapshotResponseOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) ManagedClusterPropertiesForSnapshotResponseOutput { - return v.ManagedClusterPropertiesReadOnly - }).(ManagedClusterPropertiesForSnapshotResponseOutput) -} - -// The name of the resource -func (o ManagedClusterSnapshotOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// The type of a snapshot. The default is NodePool. -func (o ManagedClusterSnapshotOutput) SnapshotType() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) pulumi.StringPtrOutput { return v.SnapshotType }).(pulumi.StringPtrOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o ManagedClusterSnapshotOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) -} - -// Resource tags. -func (o ManagedClusterSnapshotOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o ManagedClusterSnapshotOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *ManagedClusterSnapshot) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(ManagedClusterSnapshotOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/openShiftManagedCluster.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/openShiftManagedCluster.go deleted file mode 100644 index 47a55dd20..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/openShiftManagedCluster.go +++ /dev/null @@ -1,312 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// OpenShift Managed cluster. -// Azure REST API version: 2019-10-27-preview. Prior API version in Azure Native 1.x: 2019-04-30. -// -// Other available API versions: 2018-09-30-preview. -type OpenShiftManagedCluster struct { - pulumi.CustomResourceState - - // Configuration of OpenShift cluster VMs. - AgentPoolProfiles OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput `pulumi:"agentPoolProfiles"` - // Configures OpenShift authentication. - AuthProfile OpenShiftManagedClusterAuthProfileResponsePtrOutput `pulumi:"authProfile"` - // Version of OpenShift specified when creating the cluster. - ClusterVersion pulumi.StringOutput `pulumi:"clusterVersion"` - // Service generated FQDN for OpenShift API server loadbalancer internal hostname. - Fqdn pulumi.StringOutput `pulumi:"fqdn"` - // Resource location - Location pulumi.StringOutput `pulumi:"location"` - // Configuration for OpenShift master VMs. - MasterPoolProfile OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput `pulumi:"masterPoolProfile"` - // Configures Log Analytics integration. - MonitorProfile OpenShiftManagedClusterMonitorProfileResponsePtrOutput `pulumi:"monitorProfile"` - // Resource name - Name pulumi.StringOutput `pulumi:"name"` - // Configuration for OpenShift networking. - NetworkProfile NetworkProfileResponsePtrOutput `pulumi:"networkProfile"` - // Version of OpenShift specified when creating the cluster. - OpenShiftVersion pulumi.StringOutput `pulumi:"openShiftVersion"` - // Define the resource plan as required by ARM for billing purposes - Plan PurchasePlanResponsePtrOutput `pulumi:"plan"` - // The current deployment or provisioning state, which only appears in the response. - ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` - // Service generated FQDN or private IP for OpenShift API server. - PublicHostname pulumi.StringOutput `pulumi:"publicHostname"` - // Allows node rotation - RefreshCluster pulumi.BoolPtrOutput `pulumi:"refreshCluster"` - // Configuration for OpenShift router(s). - RouterProfiles OpenShiftRouterProfileResponseArrayOutput `pulumi:"routerProfiles"` - // Resource tags - Tags pulumi.StringMapOutput `pulumi:"tags"` - // Resource type - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewOpenShiftManagedCluster registers a new resource with the given unique name, arguments, and options. -func NewOpenShiftManagedCluster(ctx *pulumi.Context, - name string, args *OpenShiftManagedClusterArgs, opts ...pulumi.ResourceOption) (*OpenShiftManagedCluster, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.OpenShiftVersion == nil { - return nil, errors.New("invalid value for required argument 'OpenShiftVersion'") - } - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - if args.NetworkProfile != nil { - args.NetworkProfile = args.NetworkProfile.ToNetworkProfilePtrOutput().ApplyT(func(v *NetworkProfile) *NetworkProfile { return v.Defaults() }).(NetworkProfilePtrOutput) - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20180930preview:OpenShiftManagedCluster"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20190430:OpenShiftManagedCluster"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20190930preview:OpenShiftManagedCluster"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20191027preview:OpenShiftManagedCluster"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource OpenShiftManagedCluster - err := ctx.RegisterResource("azure-native:containerservice:OpenShiftManagedCluster", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetOpenShiftManagedCluster gets an existing OpenShiftManagedCluster resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetOpenShiftManagedCluster(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *OpenShiftManagedClusterState, opts ...pulumi.ResourceOption) (*OpenShiftManagedCluster, error) { - var resource OpenShiftManagedCluster - err := ctx.ReadResource("azure-native:containerservice:OpenShiftManagedCluster", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering OpenShiftManagedCluster resources. -type openShiftManagedClusterState struct { -} - -type OpenShiftManagedClusterState struct { -} - -func (OpenShiftManagedClusterState) ElementType() reflect.Type { - return reflect.TypeOf((*openShiftManagedClusterState)(nil)).Elem() -} - -type openShiftManagedClusterArgs struct { - // Configuration of OpenShift cluster VMs. - AgentPoolProfiles []OpenShiftManagedClusterAgentPoolProfile `pulumi:"agentPoolProfiles"` - // Configures OpenShift authentication. - AuthProfile *OpenShiftManagedClusterAuthProfile `pulumi:"authProfile"` - // Resource location - Location *string `pulumi:"location"` - // Configuration for OpenShift master VMs. - MasterPoolProfile *OpenShiftManagedClusterMasterPoolProfile `pulumi:"masterPoolProfile"` - // Configures Log Analytics integration. - MonitorProfile *OpenShiftManagedClusterMonitorProfile `pulumi:"monitorProfile"` - // Configuration for OpenShift networking. - NetworkProfile *NetworkProfile `pulumi:"networkProfile"` - // Version of OpenShift specified when creating the cluster. - OpenShiftVersion string `pulumi:"openShiftVersion"` - // Define the resource plan as required by ARM for billing purposes - Plan *PurchasePlan `pulumi:"plan"` - // Allows node rotation - RefreshCluster *bool `pulumi:"refreshCluster"` - // The name of the resource group. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The name of the OpenShift managed cluster resource. - ResourceName *string `pulumi:"resourceName"` - // Configuration for OpenShift router(s). - RouterProfiles []OpenShiftRouterProfile `pulumi:"routerProfiles"` - // Resource tags - Tags map[string]string `pulumi:"tags"` -} - -// The set of arguments for constructing a OpenShiftManagedCluster resource. -type OpenShiftManagedClusterArgs struct { - // Configuration of OpenShift cluster VMs. - AgentPoolProfiles OpenShiftManagedClusterAgentPoolProfileArrayInput - // Configures OpenShift authentication. - AuthProfile OpenShiftManagedClusterAuthProfilePtrInput - // Resource location - Location pulumi.StringPtrInput - // Configuration for OpenShift master VMs. - MasterPoolProfile OpenShiftManagedClusterMasterPoolProfilePtrInput - // Configures Log Analytics integration. - MonitorProfile OpenShiftManagedClusterMonitorProfilePtrInput - // Configuration for OpenShift networking. - NetworkProfile NetworkProfilePtrInput - // Version of OpenShift specified when creating the cluster. - OpenShiftVersion pulumi.StringInput - // Define the resource plan as required by ARM for billing purposes - Plan PurchasePlanPtrInput - // Allows node rotation - RefreshCluster pulumi.BoolPtrInput - // The name of the resource group. - ResourceGroupName pulumi.StringInput - // The name of the OpenShift managed cluster resource. - ResourceName pulumi.StringPtrInput - // Configuration for OpenShift router(s). - RouterProfiles OpenShiftRouterProfileArrayInput - // Resource tags - Tags pulumi.StringMapInput -} - -func (OpenShiftManagedClusterArgs) ElementType() reflect.Type { - return reflect.TypeOf((*openShiftManagedClusterArgs)(nil)).Elem() -} - -type OpenShiftManagedClusterInput interface { - pulumi.Input - - ToOpenShiftManagedClusterOutput() OpenShiftManagedClusterOutput - ToOpenShiftManagedClusterOutputWithContext(ctx context.Context) OpenShiftManagedClusterOutput -} - -func (*OpenShiftManagedCluster) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedCluster)(nil)).Elem() -} - -func (i *OpenShiftManagedCluster) ToOpenShiftManagedClusterOutput() OpenShiftManagedClusterOutput { - return i.ToOpenShiftManagedClusterOutputWithContext(context.Background()) -} - -func (i *OpenShiftManagedCluster) ToOpenShiftManagedClusterOutputWithContext(ctx context.Context) OpenShiftManagedClusterOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterOutput) -} - -type OpenShiftManagedClusterOutput struct{ *pulumi.OutputState } - -func (OpenShiftManagedClusterOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedCluster)(nil)).Elem() -} - -func (o OpenShiftManagedClusterOutput) ToOpenShiftManagedClusterOutput() OpenShiftManagedClusterOutput { - return o -} - -func (o OpenShiftManagedClusterOutput) ToOpenShiftManagedClusterOutputWithContext(ctx context.Context) OpenShiftManagedClusterOutput { - return o -} - -// Configuration of OpenShift cluster VMs. -func (o OpenShiftManagedClusterOutput) AgentPoolProfiles() OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput { - return v.AgentPoolProfiles - }).(OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput) -} - -// Configures OpenShift authentication. -func (o OpenShiftManagedClusterOutput) AuthProfile() OpenShiftManagedClusterAuthProfileResponsePtrOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) OpenShiftManagedClusterAuthProfileResponsePtrOutput { - return v.AuthProfile - }).(OpenShiftManagedClusterAuthProfileResponsePtrOutput) -} - -// Version of OpenShift specified when creating the cluster. -func (o OpenShiftManagedClusterOutput) ClusterVersion() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.ClusterVersion }).(pulumi.StringOutput) -} - -// Service generated FQDN for OpenShift API server loadbalancer internal hostname. -func (o OpenShiftManagedClusterOutput) Fqdn() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.Fqdn }).(pulumi.StringOutput) -} - -// Resource location -func (o OpenShiftManagedClusterOutput) Location() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) -} - -// Configuration for OpenShift master VMs. -func (o OpenShiftManagedClusterOutput) MasterPoolProfile() OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput { - return v.MasterPoolProfile - }).(OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) -} - -// Configures Log Analytics integration. -func (o OpenShiftManagedClusterOutput) MonitorProfile() OpenShiftManagedClusterMonitorProfileResponsePtrOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) OpenShiftManagedClusterMonitorProfileResponsePtrOutput { - return v.MonitorProfile - }).(OpenShiftManagedClusterMonitorProfileResponsePtrOutput) -} - -// Resource name -func (o OpenShiftManagedClusterOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// Configuration for OpenShift networking. -func (o OpenShiftManagedClusterOutput) NetworkProfile() NetworkProfileResponsePtrOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) NetworkProfileResponsePtrOutput { return v.NetworkProfile }).(NetworkProfileResponsePtrOutput) -} - -// Version of OpenShift specified when creating the cluster. -func (o OpenShiftManagedClusterOutput) OpenShiftVersion() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.OpenShiftVersion }).(pulumi.StringOutput) -} - -// Define the resource plan as required by ARM for billing purposes -func (o OpenShiftManagedClusterOutput) Plan() PurchasePlanResponsePtrOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) PurchasePlanResponsePtrOutput { return v.Plan }).(PurchasePlanResponsePtrOutput) -} - -// The current deployment or provisioning state, which only appears in the response. -func (o OpenShiftManagedClusterOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// Service generated FQDN or private IP for OpenShift API server. -func (o OpenShiftManagedClusterOutput) PublicHostname() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.PublicHostname }).(pulumi.StringOutput) -} - -// Allows node rotation -func (o OpenShiftManagedClusterOutput) RefreshCluster() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.BoolPtrOutput { return v.RefreshCluster }).(pulumi.BoolPtrOutput) -} - -// Configuration for OpenShift router(s). -func (o OpenShiftManagedClusterOutput) RouterProfiles() OpenShiftRouterProfileResponseArrayOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) OpenShiftRouterProfileResponseArrayOutput { return v.RouterProfiles }).(OpenShiftRouterProfileResponseArrayOutput) -} - -// Resource tags -func (o OpenShiftManagedClusterOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) -} - -// Resource type -func (o OpenShiftManagedClusterOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *OpenShiftManagedCluster) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(OpenShiftManagedClusterOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumi-plugin.json b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumi-plugin.json deleted file mode 100644 index 5e48be47c..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumi-plugin.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "resource": true, - "name": "azure-native", - "version": "2.53.0" -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/updateRun.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/updateRun.go deleted file mode 100644 index c124000a8..000000000 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/updateRun.go +++ /dev/null @@ -1,223 +0,0 @@ -// Code generated by the Pulumi SDK Generator DO NOT EDIT. -// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** - -package containerservice - -import ( - "context" - "reflect" - - "errors" - "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" - "github.com/pulumi/pulumi/sdk/v3/go/pulumi" -) - -// A multi-stage process to perform update operations across members of a Fleet. -// Azure REST API version: 2023-03-15-preview. -// -// Other available API versions: 2023-06-15-preview, 2023-08-15-preview, 2023-10-15, 2024-02-02-preview, 2024-04-01. -type UpdateRun struct { - pulumi.CustomResourceState - - // If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. - ETag pulumi.StringOutput `pulumi:"eTag"` - // The update to be applied to all clusters in the UpdateRun. The managedClusterUpdate can be modified until the run is started. - ManagedClusterUpdate ManagedClusterUpdateResponseOutput `pulumi:"managedClusterUpdate"` - // The name of the resource - Name pulumi.StringOutput `pulumi:"name"` - // The provisioning state of the UpdateRun resource. - ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` - // The status of the UpdateRun. - Status UpdateRunStatusResponseOutput `pulumi:"status"` - // The strategy defines the order in which the clusters will be updated. - // If not set, all members will be updated sequentially. The UpdateRun status will show a single UpdateStage and a single UpdateGroup targeting all members. - // The strategy of the UpdateRun can be modified until the run is started. - Strategy UpdateRunStrategyResponsePtrOutput `pulumi:"strategy"` - // Azure Resource Manager metadata containing createdBy and modifiedBy information. - SystemData SystemDataResponseOutput `pulumi:"systemData"` - // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - Type pulumi.StringOutput `pulumi:"type"` -} - -// NewUpdateRun registers a new resource with the given unique name, arguments, and options. -func NewUpdateRun(ctx *pulumi.Context, - name string, args *UpdateRunArgs, opts ...pulumi.ResourceOption) (*UpdateRun, error) { - if args == nil { - return nil, errors.New("missing one or more required arguments") - } - - if args.FleetName == nil { - return nil, errors.New("invalid value for required argument 'FleetName'") - } - if args.ManagedClusterUpdate == nil { - return nil, errors.New("invalid value for required argument 'ManagedClusterUpdate'") - } - if args.ResourceGroupName == nil { - return nil, errors.New("invalid value for required argument 'ResourceGroupName'") - } - aliases := pulumi.Aliases([]pulumi.Alias{ - { - Type: pulumi.String("azure-native:containerservice/v20230315preview:UpdateRun"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230615preview:UpdateRun"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20230815preview:UpdateRun"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20231015:UpdateRun"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240202preview:UpdateRun"), - }, - { - Type: pulumi.String("azure-native:containerservice/v20240401:UpdateRun"), - }, - }) - opts = append(opts, aliases) - opts = utilities.PkgResourceDefaultOpts(opts) - var resource UpdateRun - err := ctx.RegisterResource("azure-native:containerservice:UpdateRun", name, args, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// GetUpdateRun gets an existing UpdateRun resource's state with the given name, ID, and optional -// state properties that are used to uniquely qualify the lookup (nil if not required). -func GetUpdateRun(ctx *pulumi.Context, - name string, id pulumi.IDInput, state *UpdateRunState, opts ...pulumi.ResourceOption) (*UpdateRun, error) { - var resource UpdateRun - err := ctx.ReadResource("azure-native:containerservice:UpdateRun", name, id, state, &resource, opts...) - if err != nil { - return nil, err - } - return &resource, nil -} - -// Input properties used for looking up and filtering UpdateRun resources. -type updateRunState struct { -} - -type UpdateRunState struct { -} - -func (UpdateRunState) ElementType() reflect.Type { - return reflect.TypeOf((*updateRunState)(nil)).Elem() -} - -type updateRunArgs struct { - // The name of the Fleet resource. - FleetName string `pulumi:"fleetName"` - // The update to be applied to all clusters in the UpdateRun. The managedClusterUpdate can be modified until the run is started. - ManagedClusterUpdate ManagedClusterUpdate `pulumi:"managedClusterUpdate"` - // The name of the resource group. The name is case insensitive. - ResourceGroupName string `pulumi:"resourceGroupName"` - // The strategy defines the order in which the clusters will be updated. - // If not set, all members will be updated sequentially. The UpdateRun status will show a single UpdateStage and a single UpdateGroup targeting all members. - // The strategy of the UpdateRun can be modified until the run is started. - Strategy *UpdateRunStrategy `pulumi:"strategy"` - // The name of the UpdateRun resource. - UpdateRunName *string `pulumi:"updateRunName"` -} - -// The set of arguments for constructing a UpdateRun resource. -type UpdateRunArgs struct { - // The name of the Fleet resource. - FleetName pulumi.StringInput - // The update to be applied to all clusters in the UpdateRun. The managedClusterUpdate can be modified until the run is started. - ManagedClusterUpdate ManagedClusterUpdateInput - // The name of the resource group. The name is case insensitive. - ResourceGroupName pulumi.StringInput - // The strategy defines the order in which the clusters will be updated. - // If not set, all members will be updated sequentially. The UpdateRun status will show a single UpdateStage and a single UpdateGroup targeting all members. - // The strategy of the UpdateRun can be modified until the run is started. - Strategy UpdateRunStrategyPtrInput - // The name of the UpdateRun resource. - UpdateRunName pulumi.StringPtrInput -} - -func (UpdateRunArgs) ElementType() reflect.Type { - return reflect.TypeOf((*updateRunArgs)(nil)).Elem() -} - -type UpdateRunInput interface { - pulumi.Input - - ToUpdateRunOutput() UpdateRunOutput - ToUpdateRunOutputWithContext(ctx context.Context) UpdateRunOutput -} - -func (*UpdateRun) ElementType() reflect.Type { - return reflect.TypeOf((**UpdateRun)(nil)).Elem() -} - -func (i *UpdateRun) ToUpdateRunOutput() UpdateRunOutput { - return i.ToUpdateRunOutputWithContext(context.Background()) -} - -func (i *UpdateRun) ToUpdateRunOutputWithContext(ctx context.Context) UpdateRunOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateRunOutput) -} - -type UpdateRunOutput struct{ *pulumi.OutputState } - -func (UpdateRunOutput) ElementType() reflect.Type { - return reflect.TypeOf((**UpdateRun)(nil)).Elem() -} - -func (o UpdateRunOutput) ToUpdateRunOutput() UpdateRunOutput { - return o -} - -func (o UpdateRunOutput) ToUpdateRunOutputWithContext(ctx context.Context) UpdateRunOutput { - return o -} - -// If eTag is provided in the response body, it may also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. -func (o UpdateRunOutput) ETag() pulumi.StringOutput { - return o.ApplyT(func(v *UpdateRun) pulumi.StringOutput { return v.ETag }).(pulumi.StringOutput) -} - -// The update to be applied to all clusters in the UpdateRun. The managedClusterUpdate can be modified until the run is started. -func (o UpdateRunOutput) ManagedClusterUpdate() ManagedClusterUpdateResponseOutput { - return o.ApplyT(func(v *UpdateRun) ManagedClusterUpdateResponseOutput { return v.ManagedClusterUpdate }).(ManagedClusterUpdateResponseOutput) -} - -// The name of the resource -func (o UpdateRunOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v *UpdateRun) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) -} - -// The provisioning state of the UpdateRun resource. -func (o UpdateRunOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v *UpdateRun) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// The status of the UpdateRun. -func (o UpdateRunOutput) Status() UpdateRunStatusResponseOutput { - return o.ApplyT(func(v *UpdateRun) UpdateRunStatusResponseOutput { return v.Status }).(UpdateRunStatusResponseOutput) -} - -// The strategy defines the order in which the clusters will be updated. -// If not set, all members will be updated sequentially. The UpdateRun status will show a single UpdateStage and a single UpdateGroup targeting all members. -// The strategy of the UpdateRun can be modified until the run is started. -func (o UpdateRunOutput) Strategy() UpdateRunStrategyResponsePtrOutput { - return o.ApplyT(func(v *UpdateRun) UpdateRunStrategyResponsePtrOutput { return v.Strategy }).(UpdateRunStrategyResponsePtrOutput) -} - -// Azure Resource Manager metadata containing createdBy and modifiedBy information. -func (o UpdateRunOutput) SystemData() SystemDataResponseOutput { - return o.ApplyT(func(v *UpdateRun) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) -} - -// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" -func (o UpdateRunOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v *UpdateRun) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) -} - -func init() { - pulumi.RegisterOutputType(UpdateRunOutput{}) -} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/agentPool.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/agentPool.go similarity index 93% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/agentPool.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/agentPool.go index 77c51b0e9..0bc52ddfd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/agentPool.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/agentPool.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,14 +13,13 @@ import ( ) // Agent Pool. -// Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-03-01. -// -// Other available API versions: 2019-02-01, 2019-04-01, 2020-06-01, 2021-02-01, 2021-08-01, 2022-04-02-preview, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. type AgentPool struct { pulumi.CustomResourceState // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"` + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID pulumi.StringPtrOutput `pulumi:"capacityReservationGroupID"` // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. Count pulumi.IntPtrOutput `pulumi:"count"` // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. @@ -57,6 +56,8 @@ type AgentPool struct { Mode pulumi.StringPtrOutput `pulumi:"mode"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. Name pulumi.StringOutput `pulumi:"name"` + // Network-related settings of an agent pool. + NetworkProfile AgentPoolNetworkProfileResponsePtrOutput `pulumi:"networkProfile"` // The version of node image NodeImageVersion pulumi.StringOutput `pulumi:"nodeImageVersion"` // The node labels to be persisted across all nodes in agent pool. @@ -89,6 +90,8 @@ type AgentPool struct { ScaleSetEvictionPolicy pulumi.StringPtrOutput `pulumi:"scaleSetEvictionPolicy"` // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. ScaleSetPriority pulumi.StringPtrOutput `pulumi:"scaleSetPriority"` + // The security settings of an agent pool. + SecurityProfile AgentPoolSecurityProfileResponsePtrOutput `pulumi:"securityProfile"` // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) SpotMaxPrice pulumi.Float64PtrOutput `pulumi:"spotMaxPrice"` // The tags to be persisted on the agent pool virtual machine scale set. @@ -101,6 +104,8 @@ type AgentPool struct { VmSize pulumi.StringPtrOutput `pulumi:"vmSize"` // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} VnetSubnetID pulumi.StringPtrOutput `pulumi:"vnetSubnetID"` + // The Windows agent pool's specific profile. + WindowsProfile AgentPoolWindowsProfileResponsePtrOutput `pulumi:"windowsProfile"` // Determines the type of workload a node can run. WorkloadRuntime pulumi.StringPtrOutput `pulumi:"workloadRuntime"` } @@ -119,6 +124,9 @@ func NewAgentPool(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'ResourceName'") } aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:containerservice:AgentPool"), + }, { Type: pulumi.String("azure-native:containerservice/v20190201:AgentPool"), }, @@ -338,11 +346,20 @@ func NewAgentPool(ctx *pulumi.Context, { Type: pulumi.String("azure-native:containerservice/v20240502preview:AgentPool"), }, + { + Type: pulumi.String("azure-native:containerservice/v20240602preview:AgentPool"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240701:AgentPool"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240702preview:AgentPool"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) var resource AgentPool - err := ctx.RegisterResource("azure-native:containerservice:AgentPool", name, args, &resource, opts...) + err := ctx.RegisterResource("azure-native:containerservice/v20240801:AgentPool", name, args, &resource, opts...) if err != nil { return nil, err } @@ -354,7 +371,7 @@ func NewAgentPool(ctx *pulumi.Context, func GetAgentPool(ctx *pulumi.Context, name string, id pulumi.IDInput, state *AgentPoolState, opts ...pulumi.ResourceOption) (*AgentPool, error) { var resource AgentPool - err := ctx.ReadResource("azure-native:containerservice:AgentPool", name, id, state, &resource, opts...) + err := ctx.ReadResource("azure-native:containerservice/v20240801:AgentPool", name, id, state, &resource, opts...) if err != nil { return nil, err } @@ -377,6 +394,8 @@ type agentPoolArgs struct { AgentPoolName *string `pulumi:"agentPoolName"` // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. AvailabilityZones []string `pulumi:"availabilityZones"` + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID *string `pulumi:"capacityReservationGroupID"` // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. Count *int `pulumi:"count"` // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. @@ -409,6 +428,8 @@ type agentPoolArgs struct { MinCount *int `pulumi:"minCount"` // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools Mode *string `pulumi:"mode"` + // Network-related settings of an agent pool. + NetworkProfile *AgentPoolNetworkProfile `pulumi:"networkProfile"` // The node labels to be persisted across all nodes in agent pool. NodeLabels map[string]string `pulumi:"nodeLabels"` // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} @@ -441,6 +462,8 @@ type agentPoolArgs struct { ScaleSetEvictionPolicy *string `pulumi:"scaleSetEvictionPolicy"` // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. ScaleSetPriority *string `pulumi:"scaleSetPriority"` + // The security settings of an agent pool. + SecurityProfile *AgentPoolSecurityProfile `pulumi:"securityProfile"` // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) SpotMaxPrice *float64 `pulumi:"spotMaxPrice"` // The tags to be persisted on the agent pool virtual machine scale set. @@ -453,6 +476,8 @@ type agentPoolArgs struct { VmSize *string `pulumi:"vmSize"` // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} VnetSubnetID *string `pulumi:"vnetSubnetID"` + // The Windows agent pool's specific profile. + WindowsProfile *AgentPoolWindowsProfile `pulumi:"windowsProfile"` // Determines the type of workload a node can run. WorkloadRuntime *string `pulumi:"workloadRuntime"` } @@ -463,6 +488,8 @@ type AgentPoolArgs struct { AgentPoolName pulumi.StringPtrInput // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. AvailabilityZones pulumi.StringArrayInput + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID pulumi.StringPtrInput // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. Count pulumi.IntPtrInput // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. @@ -495,6 +522,8 @@ type AgentPoolArgs struct { MinCount pulumi.IntPtrInput // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools Mode pulumi.StringPtrInput + // Network-related settings of an agent pool. + NetworkProfile AgentPoolNetworkProfilePtrInput // The node labels to be persisted across all nodes in agent pool. NodeLabels pulumi.StringMapInput // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} @@ -527,6 +556,8 @@ type AgentPoolArgs struct { ScaleSetEvictionPolicy pulumi.StringPtrInput // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. ScaleSetPriority pulumi.StringPtrInput + // The security settings of an agent pool. + SecurityProfile AgentPoolSecurityProfilePtrInput // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) SpotMaxPrice pulumi.Float64PtrInput // The tags to be persisted on the agent pool virtual machine scale set. @@ -539,6 +570,8 @@ type AgentPoolArgs struct { VmSize pulumi.StringPtrInput // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} VnetSubnetID pulumi.StringPtrInput + // The Windows agent pool's specific profile. + WindowsProfile AgentPoolWindowsProfilePtrInput // Determines the type of workload a node can run. WorkloadRuntime pulumi.StringPtrInput } @@ -585,6 +618,11 @@ func (o AgentPoolOutput) AvailabilityZones() pulumi.StringArrayOutput { return o.ApplyT(func(v *AgentPool) pulumi.StringArrayOutput { return v.AvailabilityZones }).(pulumi.StringArrayOutput) } +// AKS will associate the specified agent pool with the Capacity Reservation Group. +func (o AgentPoolOutput) CapacityReservationGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentPool) pulumi.StringPtrOutput { return v.CapacityReservationGroupID }).(pulumi.StringPtrOutput) +} + // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. func (o AgentPoolOutput) Count() pulumi.IntPtrOutput { return o.ApplyT(func(v *AgentPool) pulumi.IntPtrOutput { return v.Count }).(pulumi.IntPtrOutput) @@ -675,6 +713,11 @@ func (o AgentPoolOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *AgentPool) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } +// Network-related settings of an agent pool. +func (o AgentPoolOutput) NetworkProfile() AgentPoolNetworkProfileResponsePtrOutput { + return o.ApplyT(func(v *AgentPool) AgentPoolNetworkProfileResponsePtrOutput { return v.NetworkProfile }).(AgentPoolNetworkProfileResponsePtrOutput) +} + // The version of node image func (o AgentPoolOutput) NodeImageVersion() pulumi.StringOutput { return o.ApplyT(func(v *AgentPool) pulumi.StringOutput { return v.NodeImageVersion }).(pulumi.StringOutput) @@ -755,6 +798,11 @@ func (o AgentPoolOutput) ScaleSetPriority() pulumi.StringPtrOutput { return o.ApplyT(func(v *AgentPool) pulumi.StringPtrOutput { return v.ScaleSetPriority }).(pulumi.StringPtrOutput) } +// The security settings of an agent pool. +func (o AgentPoolOutput) SecurityProfile() AgentPoolSecurityProfileResponsePtrOutput { + return o.ApplyT(func(v *AgentPool) AgentPoolSecurityProfileResponsePtrOutput { return v.SecurityProfile }).(AgentPoolSecurityProfileResponsePtrOutput) +} + // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) func (o AgentPoolOutput) SpotMaxPrice() pulumi.Float64PtrOutput { return o.ApplyT(func(v *AgentPool) pulumi.Float64PtrOutput { return v.SpotMaxPrice }).(pulumi.Float64PtrOutput) @@ -785,6 +833,11 @@ func (o AgentPoolOutput) VnetSubnetID() pulumi.StringPtrOutput { return o.ApplyT(func(v *AgentPool) pulumi.StringPtrOutput { return v.VnetSubnetID }).(pulumi.StringPtrOutput) } +// The Windows agent pool's specific profile. +func (o AgentPoolOutput) WindowsProfile() AgentPoolWindowsProfileResponsePtrOutput { + return o.ApplyT(func(v *AgentPool) AgentPoolWindowsProfileResponsePtrOutput { return v.WindowsProfile }).(AgentPoolWindowsProfileResponsePtrOutput) +} + // Determines the type of workload a node can run. func (o AgentPoolOutput) WorkloadRuntime() pulumi.StringPtrOutput { return o.ApplyT(func(v *AgentPool) pulumi.StringPtrOutput { return v.WorkloadRuntime }).(pulumi.StringPtrOutput) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getAgentPool.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getAgentPool.go similarity index 91% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getAgentPool.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getAgentPool.go index 1b9465a51..f942dd75f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getAgentPool.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getAgentPool.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // Agent Pool. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2019-02-01, 2019-04-01, 2020-06-01, 2021-02-01, 2021-08-01, 2022-04-02-preview, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func LookupAgentPool(ctx *pulumi.Context, args *LookupAgentPoolArgs, opts ...pulumi.InvokeOption) (*LookupAgentPoolResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupAgentPoolResult - err := ctx.Invoke("azure-native:containerservice:getAgentPool", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:getAgentPool", args, &rv, opts...) if err != nil { return nil, err } @@ -38,6 +35,8 @@ type LookupAgentPoolArgs struct { type LookupAgentPoolResult struct { // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. AvailabilityZones []string `pulumi:"availabilityZones"` + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID *string `pulumi:"capacityReservationGroupID"` // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. Count *int `pulumi:"count"` // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. @@ -76,6 +75,8 @@ type LookupAgentPoolResult struct { Mode *string `pulumi:"mode"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. Name string `pulumi:"name"` + // Network-related settings of an agent pool. + NetworkProfile *AgentPoolNetworkProfileResponse `pulumi:"networkProfile"` // The version of node image NodeImageVersion string `pulumi:"nodeImageVersion"` // The node labels to be persisted across all nodes in agent pool. @@ -108,6 +109,8 @@ type LookupAgentPoolResult struct { ScaleSetEvictionPolicy *string `pulumi:"scaleSetEvictionPolicy"` // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. ScaleSetPriority *string `pulumi:"scaleSetPriority"` + // The security settings of an agent pool. + SecurityProfile *AgentPoolSecurityProfileResponse `pulumi:"securityProfile"` // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) SpotMaxPrice *float64 `pulumi:"spotMaxPrice"` // The tags to be persisted on the agent pool virtual machine scale set. @@ -120,20 +123,28 @@ type LookupAgentPoolResult struct { VmSize *string `pulumi:"vmSize"` // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} VnetSubnetID *string `pulumi:"vnetSubnetID"` + // The Windows agent pool's specific profile. + WindowsProfile *AgentPoolWindowsProfileResponse `pulumi:"windowsProfile"` // Determines the type of workload a node can run. WorkloadRuntime *string `pulumi:"workloadRuntime"` } func LookupAgentPoolOutput(ctx *pulumi.Context, args LookupAgentPoolOutputArgs, opts ...pulumi.InvokeOption) LookupAgentPoolResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAgentPoolResult, error) { + ApplyT(func(v interface{}) (LookupAgentPoolResultOutput, error) { args := v.(LookupAgentPoolArgs) - r, err := LookupAgentPool(ctx, &args, opts...) - var s LookupAgentPoolResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAgentPoolResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:getAgentPool", args, &rv, "", opts...) + if err != nil { + return LookupAgentPoolResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAgentPoolResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAgentPoolResultOutput), nil + } + return output, nil }).(LookupAgentPoolResultOutput) } @@ -170,6 +181,11 @@ func (o LookupAgentPoolResultOutput) AvailabilityZones() pulumi.StringArrayOutpu return o.ApplyT(func(v LookupAgentPoolResult) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) } +// AKS will associate the specified agent pool with the Capacity Reservation Group. +func (o LookupAgentPoolResultOutput) CapacityReservationGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupAgentPoolResult) *string { return v.CapacityReservationGroupID }).(pulumi.StringPtrOutput) +} + // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. func (o LookupAgentPoolResultOutput) Count() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupAgentPoolResult) *int { return v.Count }).(pulumi.IntPtrOutput) @@ -265,6 +281,11 @@ func (o LookupAgentPoolResultOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v LookupAgentPoolResult) string { return v.Name }).(pulumi.StringOutput) } +// Network-related settings of an agent pool. +func (o LookupAgentPoolResultOutput) NetworkProfile() AgentPoolNetworkProfileResponsePtrOutput { + return o.ApplyT(func(v LookupAgentPoolResult) *AgentPoolNetworkProfileResponse { return v.NetworkProfile }).(AgentPoolNetworkProfileResponsePtrOutput) +} + // The version of node image func (o LookupAgentPoolResultOutput) NodeImageVersion() pulumi.StringOutput { return o.ApplyT(func(v LookupAgentPoolResult) string { return v.NodeImageVersion }).(pulumi.StringOutput) @@ -345,6 +366,11 @@ func (o LookupAgentPoolResultOutput) ScaleSetPriority() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAgentPoolResult) *string { return v.ScaleSetPriority }).(pulumi.StringPtrOutput) } +// The security settings of an agent pool. +func (o LookupAgentPoolResultOutput) SecurityProfile() AgentPoolSecurityProfileResponsePtrOutput { + return o.ApplyT(func(v LookupAgentPoolResult) *AgentPoolSecurityProfileResponse { return v.SecurityProfile }).(AgentPoolSecurityProfileResponsePtrOutput) +} + // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) func (o LookupAgentPoolResultOutput) SpotMaxPrice() pulumi.Float64PtrOutput { return o.ApplyT(func(v LookupAgentPoolResult) *float64 { return v.SpotMaxPrice }).(pulumi.Float64PtrOutput) @@ -375,6 +401,11 @@ func (o LookupAgentPoolResultOutput) VnetSubnetID() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAgentPoolResult) *string { return v.VnetSubnetID }).(pulumi.StringPtrOutput) } +// The Windows agent pool's specific profile. +func (o LookupAgentPoolResultOutput) WindowsProfile() AgentPoolWindowsProfileResponsePtrOutput { + return o.ApplyT(func(v LookupAgentPoolResult) *AgentPoolWindowsProfileResponse { return v.WindowsProfile }).(AgentPoolWindowsProfileResponsePtrOutput) +} + // Determines the type of workload a node can run. func (o LookupAgentPoolResultOutput) WorkloadRuntime() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupAgentPoolResult) *string { return v.WorkloadRuntime }).(pulumi.StringPtrOutput) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getMaintenanceConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getMaintenanceConfiguration.go similarity index 78% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getMaintenanceConfiguration.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getMaintenanceConfiguration.go index d6816bee0..557e14381 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getMaintenanceConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getMaintenanceConfiguration.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,17 +12,14 @@ import ( ) // See [planned maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for more information about planned maintenance. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func LookupMaintenanceConfiguration(ctx *pulumi.Context, args *LookupMaintenanceConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupMaintenanceConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupMaintenanceConfigurationResult - err := ctx.Invoke("azure-native:containerservice:getMaintenanceConfiguration", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:getMaintenanceConfiguration", args, &rv, opts...) if err != nil { return nil, err } - return &rv, nil + return rv.Defaults(), nil } type LookupMaintenanceConfigurationArgs struct { @@ -38,6 +35,8 @@ type LookupMaintenanceConfigurationArgs struct { type LookupMaintenanceConfigurationResult struct { // Resource ID. Id string `pulumi:"id"` + // Maintenance window for the maintenance configuration. + MaintenanceWindow *MaintenanceWindowResponse `pulumi:"maintenanceWindow"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. Name string `pulumi:"name"` // Time slots on which upgrade is not allowed. @@ -50,16 +49,33 @@ type LookupMaintenanceConfigurationResult struct { Type string `pulumi:"type"` } +// Defaults sets the appropriate defaults for LookupMaintenanceConfigurationResult +func (val *LookupMaintenanceConfigurationResult) Defaults() *LookupMaintenanceConfigurationResult { + if val == nil { + return nil + } + tmp := *val + tmp.MaintenanceWindow = tmp.MaintenanceWindow.Defaults() + + return &tmp +} + func LookupMaintenanceConfigurationOutput(ctx *pulumi.Context, args LookupMaintenanceConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupMaintenanceConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupMaintenanceConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupMaintenanceConfigurationResultOutput, error) { args := v.(LookupMaintenanceConfigurationArgs) - r, err := LookupMaintenanceConfiguration(ctx, &args, opts...) - var s LookupMaintenanceConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupMaintenanceConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:getMaintenanceConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupMaintenanceConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupMaintenanceConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupMaintenanceConfigurationResultOutput), nil + } + return output, nil }).(LookupMaintenanceConfigurationResultOutput) } @@ -96,6 +112,11 @@ func (o LookupMaintenanceConfigurationResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupMaintenanceConfigurationResult) string { return v.Id }).(pulumi.StringOutput) } +// Maintenance window for the maintenance configuration. +func (o LookupMaintenanceConfigurationResultOutput) MaintenanceWindow() MaintenanceWindowResponsePtrOutput { + return o.ApplyT(func(v LookupMaintenanceConfigurationResult) *MaintenanceWindowResponse { return v.MaintenanceWindow }).(MaintenanceWindowResponsePtrOutput) +} + // The name of the resource that is unique within a resource group. This name can be used to access the resource. func (o LookupMaintenanceConfigurationResultOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v LookupMaintenanceConfigurationResult) string { return v.Name }).(pulumi.StringOutput) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedCluster.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getManagedCluster.go similarity index 88% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedCluster.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getManagedCluster.go index 9708a1a7e..dff26788e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getManagedCluster.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getManagedCluster.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // Managed cluster. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2017-08-31, 2019-02-01, 2019-06-01, 2021-05-01, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func LookupManagedCluster(ctx *pulumi.Context, args *LookupManagedClusterArgs, opts ...pulumi.InvokeOption) (*LookupManagedClusterResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupManagedClusterResult - err := ctx.Invoke("azure-native:containerservice:getManagedCluster", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:getManagedCluster", args, &rv, opts...) if err != nil { return nil, err } @@ -70,12 +67,14 @@ type LookupManagedClusterResult struct { FqdnSubdomain *string `pulumi:"fqdnSubdomain"` // Configurations for provisioning the cluster with HTTP proxy servers. HttpProxyConfig *ManagedClusterHTTPProxyConfigResponse `pulumi:"httpProxyConfig"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" Id string `pulumi:"id"` // The identity of the managed cluster, if configured. Identity *ManagedClusterIdentityResponse `pulumi:"identity"` // Identities associated with the cluster. IdentityProfile map[string]UserAssignedIdentityResponse `pulumi:"identityProfile"` + // Ingress profile for the managed cluster. + IngressProfile *ManagedClusterIngressProfileResponse `pulumi:"ingressProfile"` // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details. KubernetesVersion *string `pulumi:"kubernetesVersion"` // The profile for Linux VMs in the Managed Cluster. @@ -84,6 +83,8 @@ type LookupManagedClusterResult struct { Location string `pulumi:"location"` // The max number of agent pools for the managed cluster. MaxAgentPools int `pulumi:"maxAgentPools"` + // Optional cluster metrics configuration. + MetricsProfile *ManagedClusterMetricsProfileResponse `pulumi:"metricsProfile"` // The name of the resource Name string `pulumi:"name"` // The network configuration profile. @@ -104,8 +105,12 @@ type LookupManagedClusterResult struct { ProvisioningState string `pulumi:"provisioningState"` // Allow or deny public network access for AKS PublicNetworkAccess *string `pulumi:"publicNetworkAccess"` + // The resourceUID uniquely identifies ManagedClusters that reuse ARM ResourceIds (i.e: create, delete, create sequence) + ResourceUID string `pulumi:"resourceUID"` // Security profile for the managed cluster. SecurityProfile *ManagedClusterSecurityProfileResponse `pulumi:"securityProfile"` + // Service mesh profile for a managed cluster. + ServiceMeshProfile *ServiceMeshProfileResponse `pulumi:"serviceMeshProfile"` // Information about a service principal identity for the cluster to use for manipulating Azure APIs. ServicePrincipalProfile *ManagedClusterServicePrincipalProfileResponse `pulumi:"servicePrincipalProfile"` // The managed cluster SKU. @@ -120,6 +125,8 @@ type LookupManagedClusterResult struct { Tags map[string]string `pulumi:"tags"` // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" Type string `pulumi:"type"` + // Settings for upgrading a cluster. + UpgradeSettings *ClusterUpgradeSettingsResponse `pulumi:"upgradeSettings"` // The profile for Windows VMs in the Managed Cluster. WindowsProfile *ManagedClusterWindowsProfileResponse `pulumi:"windowsProfile"` // Workload Auto-scaler profile for the managed cluster. @@ -136,19 +143,27 @@ func (val *LookupManagedClusterResult) Defaults() *LookupManagedClusterResult { tmp.SecurityProfile = tmp.SecurityProfile.Defaults() + tmp.WorkloadAutoScalerProfile = tmp.WorkloadAutoScalerProfile.Defaults() + return &tmp } func LookupManagedClusterOutput(ctx *pulumi.Context, args LookupManagedClusterOutputArgs, opts ...pulumi.InvokeOption) LookupManagedClusterResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagedClusterResult, error) { + ApplyT(func(v interface{}) (LookupManagedClusterResultOutput, error) { args := v.(LookupManagedClusterArgs) - r, err := LookupManagedCluster(ctx, &args, opts...) - var s LookupManagedClusterResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagedClusterResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:getManagedCluster", args, &rv, "", opts...) + if err != nil { + return LookupManagedClusterResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupManagedClusterResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagedClusterResultOutput), nil } - return s, err + return output, nil }).(LookupManagedClusterResultOutput) } @@ -280,7 +295,7 @@ func (o LookupManagedClusterResultOutput) HttpProxyConfig() ManagedClusterHTTPPr return o.ApplyT(func(v LookupManagedClusterResult) *ManagedClusterHTTPProxyConfigResponse { return v.HttpProxyConfig }).(ManagedClusterHTTPProxyConfigResponsePtrOutput) } -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" func (o LookupManagedClusterResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupManagedClusterResult) string { return v.Id }).(pulumi.StringOutput) } @@ -295,6 +310,11 @@ func (o LookupManagedClusterResultOutput) IdentityProfile() UserAssignedIdentity return o.ApplyT(func(v LookupManagedClusterResult) map[string]UserAssignedIdentityResponse { return v.IdentityProfile }).(UserAssignedIdentityResponseMapOutput) } +// Ingress profile for the managed cluster. +func (o LookupManagedClusterResultOutput) IngressProfile() ManagedClusterIngressProfileResponsePtrOutput { + return o.ApplyT(func(v LookupManagedClusterResult) *ManagedClusterIngressProfileResponse { return v.IngressProfile }).(ManagedClusterIngressProfileResponsePtrOutput) +} + // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details. func (o LookupManagedClusterResultOutput) KubernetesVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupManagedClusterResult) *string { return v.KubernetesVersion }).(pulumi.StringPtrOutput) @@ -315,6 +335,11 @@ func (o LookupManagedClusterResultOutput) MaxAgentPools() pulumi.IntOutput { return o.ApplyT(func(v LookupManagedClusterResult) int { return v.MaxAgentPools }).(pulumi.IntOutput) } +// Optional cluster metrics configuration. +func (o LookupManagedClusterResultOutput) MetricsProfile() ManagedClusterMetricsProfileResponsePtrOutput { + return o.ApplyT(func(v LookupManagedClusterResult) *ManagedClusterMetricsProfileResponse { return v.MetricsProfile }).(ManagedClusterMetricsProfileResponsePtrOutput) +} + // The name of the resource func (o LookupManagedClusterResultOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v LookupManagedClusterResult) string { return v.Name }).(pulumi.StringOutput) @@ -369,11 +394,21 @@ func (o LookupManagedClusterResultOutput) PublicNetworkAccess() pulumi.StringPtr return o.ApplyT(func(v LookupManagedClusterResult) *string { return v.PublicNetworkAccess }).(pulumi.StringPtrOutput) } +// The resourceUID uniquely identifies ManagedClusters that reuse ARM ResourceIds (i.e: create, delete, create sequence) +func (o LookupManagedClusterResultOutput) ResourceUID() pulumi.StringOutput { + return o.ApplyT(func(v LookupManagedClusterResult) string { return v.ResourceUID }).(pulumi.StringOutput) +} + // Security profile for the managed cluster. func (o LookupManagedClusterResultOutput) SecurityProfile() ManagedClusterSecurityProfileResponsePtrOutput { return o.ApplyT(func(v LookupManagedClusterResult) *ManagedClusterSecurityProfileResponse { return v.SecurityProfile }).(ManagedClusterSecurityProfileResponsePtrOutput) } +// Service mesh profile for a managed cluster. +func (o LookupManagedClusterResultOutput) ServiceMeshProfile() ServiceMeshProfileResponsePtrOutput { + return o.ApplyT(func(v LookupManagedClusterResult) *ServiceMeshProfileResponse { return v.ServiceMeshProfile }).(ServiceMeshProfileResponsePtrOutput) +} + // Information about a service principal identity for the cluster to use for manipulating Azure APIs. func (o LookupManagedClusterResultOutput) ServicePrincipalProfile() ManagedClusterServicePrincipalProfileResponsePtrOutput { return o.ApplyT(func(v LookupManagedClusterResult) *ManagedClusterServicePrincipalProfileResponse { @@ -411,6 +446,11 @@ func (o LookupManagedClusterResultOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v LookupManagedClusterResult) string { return v.Type }).(pulumi.StringOutput) } +// Settings for upgrading a cluster. +func (o LookupManagedClusterResultOutput) UpgradeSettings() ClusterUpgradeSettingsResponsePtrOutput { + return o.ApplyT(func(v LookupManagedClusterResult) *ClusterUpgradeSettingsResponse { return v.UpgradeSettings }).(ClusterUpgradeSettingsResponsePtrOutput) +} + // The profile for Windows VMs in the Managed Cluster. func (o LookupManagedClusterResultOutput) WindowsProfile() ManagedClusterWindowsProfileResponsePtrOutput { return o.ApplyT(func(v LookupManagedClusterResult) *ManagedClusterWindowsProfileResponse { return v.WindowsProfile }).(ManagedClusterWindowsProfileResponsePtrOutput) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getPrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getPrivateEndpointConnection.go similarity index 87% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getPrivateEndpointConnection.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getPrivateEndpointConnection.go index 1a860b88d..09876b00f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getPrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getPrivateEndpointConnection.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // To learn more about private clusters, see: https://docs.microsoft.com/azure/aks/private-clusters -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func LookupPrivateEndpointConnection(ctx *pulumi.Context, args *LookupPrivateEndpointConnectionArgs, opts ...pulumi.InvokeOption) (*LookupPrivateEndpointConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateEndpointConnectionResult - err := ctx.Invoke("azure-native:containerservice:getPrivateEndpointConnection", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:getPrivateEndpointConnection", args, &rv, opts...) if err != nil { return nil, err } @@ -52,14 +49,20 @@ type LookupPrivateEndpointConnectionResult struct { func LookupPrivateEndpointConnectionOutput(ctx *pulumi.Context, args LookupPrivateEndpointConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateEndpointConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateEndpointConnectionResult, error) { + ApplyT(func(v interface{}) (LookupPrivateEndpointConnectionResultOutput, error) { args := v.(LookupPrivateEndpointConnectionArgs) - r, err := LookupPrivateEndpointConnection(ctx, &args, opts...) - var s LookupPrivateEndpointConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateEndpointConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:getPrivateEndpointConnection", args, &rv, "", opts...) + if err != nil { + return LookupPrivateEndpointConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateEndpointConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateEndpointConnectionResultOutput), nil + } + return output, nil }).(LookupPrivateEndpointConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getSnapshot.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getSnapshot.go similarity index 86% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getSnapshot.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getSnapshot.go index f2625d2ba..0921d7363 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getSnapshot.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getSnapshot.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // A node pool snapshot resource. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func LookupSnapshot(ctx *pulumi.Context, args *LookupSnapshotArgs, opts ...pulumi.InvokeOption) (*LookupSnapshotResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSnapshotResult - err := ctx.Invoke("azure-native:containerservice:getSnapshot", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:getSnapshot", args, &rv, opts...) if err != nil { return nil, err } @@ -38,7 +35,7 @@ type LookupSnapshotResult struct { CreationData *CreationDataResponse `pulumi:"creationData"` // Whether to use a FIPS-enabled OS. EnableFIPS bool `pulumi:"enableFIPS"` - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" Id string `pulumi:"id"` // The version of Kubernetes. KubernetesVersion string `pulumi:"kubernetesVersion"` @@ -66,14 +63,20 @@ type LookupSnapshotResult struct { func LookupSnapshotOutput(ctx *pulumi.Context, args LookupSnapshotOutputArgs, opts ...pulumi.InvokeOption) LookupSnapshotResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSnapshotResult, error) { + ApplyT(func(v interface{}) (LookupSnapshotResultOutput, error) { args := v.(LookupSnapshotArgs) - r, err := LookupSnapshot(ctx, &args, opts...) - var s LookupSnapshotResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSnapshotResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:getSnapshot", args, &rv, "", opts...) + if err != nil { + return LookupSnapshotResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSnapshotResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSnapshotResultOutput), nil + } + return output, nil }).(LookupSnapshotResultOutput) } @@ -113,7 +116,7 @@ func (o LookupSnapshotResultOutput) EnableFIPS() pulumi.BoolOutput { return o.ApplyT(func(v LookupSnapshotResult) bool { return v.EnableFIPS }).(pulumi.BoolOutput) } -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" func (o LookupSnapshotResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupSnapshotResult) string { return v.Id }).(pulumi.StringOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getTrustedAccessRoleBinding.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getTrustedAccessRoleBinding.go similarity index 85% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getTrustedAccessRoleBinding.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getTrustedAccessRoleBinding.go index d4dbb573b..301236bfd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/getTrustedAccessRoleBinding.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/getTrustedAccessRoleBinding.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // Defines binding between a resource and role -// Azure REST API version: 2023-05-02-preview. -// -// Other available API versions: 2023-06-02-preview, 2023-07-02-preview, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func LookupTrustedAccessRoleBinding(ctx *pulumi.Context, args *LookupTrustedAccessRoleBindingArgs, opts ...pulumi.InvokeOption) (*LookupTrustedAccessRoleBindingResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupTrustedAccessRoleBindingResult - err := ctx.Invoke("azure-native:containerservice:getTrustedAccessRoleBinding", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:getTrustedAccessRoleBinding", args, &rv, opts...) if err != nil { return nil, err } @@ -36,7 +33,7 @@ type LookupTrustedAccessRoleBindingArgs struct { // Defines binding between a resource and role type LookupTrustedAccessRoleBindingResult struct { - // Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" Id string `pulumi:"id"` // The name of the resource Name string `pulumi:"name"` @@ -54,14 +51,20 @@ type LookupTrustedAccessRoleBindingResult struct { func LookupTrustedAccessRoleBindingOutput(ctx *pulumi.Context, args LookupTrustedAccessRoleBindingOutputArgs, opts ...pulumi.InvokeOption) LookupTrustedAccessRoleBindingResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTrustedAccessRoleBindingResult, error) { + ApplyT(func(v interface{}) (LookupTrustedAccessRoleBindingResultOutput, error) { args := v.(LookupTrustedAccessRoleBindingArgs) - r, err := LookupTrustedAccessRoleBinding(ctx, &args, opts...) - var s LookupTrustedAccessRoleBindingResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTrustedAccessRoleBindingResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:getTrustedAccessRoleBinding", args, &rv, "", opts...) + if err != nil { + return LookupTrustedAccessRoleBindingResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTrustedAccessRoleBindingResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTrustedAccessRoleBindingResultOutput), nil + } + return output, nil }).(LookupTrustedAccessRoleBindingResultOutput) } @@ -93,7 +96,7 @@ func (o LookupTrustedAccessRoleBindingResultOutput) ToLookupTrustedAccessRoleBin return o } -// Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" func (o LookupTrustedAccessRoleBindingResultOutput) Id() pulumi.StringOutput { return o.ApplyT(func(v LookupTrustedAccessRoleBindingResult) string { return v.Id }).(pulumi.StringOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/init.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/init.go similarity index 52% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/init.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/init.go index 3322e7ac1..52672a0ca 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/init.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/init.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "fmt" @@ -21,32 +21,18 @@ func (m *module) Version() semver.Version { func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { switch typ { - case "azure-native:containerservice:AgentPool": + case "azure-native:containerservice/v20240801:AgentPool": r = &AgentPool{} - case "azure-native:containerservice:Fleet": - r = &Fleet{} - case "azure-native:containerservice:FleetMember": - r = &FleetMember{} - case "azure-native:containerservice:FleetUpdateStrategy": - r = &FleetUpdateStrategy{} - case "azure-native:containerservice:LoadBalancer": - r = &LoadBalancer{} - case "azure-native:containerservice:MaintenanceConfiguration": + case "azure-native:containerservice/v20240801:MaintenanceConfiguration": r = &MaintenanceConfiguration{} - case "azure-native:containerservice:ManagedCluster": + case "azure-native:containerservice/v20240801:ManagedCluster": r = &ManagedCluster{} - case "azure-native:containerservice:ManagedClusterSnapshot": - r = &ManagedClusterSnapshot{} - case "azure-native:containerservice:OpenShiftManagedCluster": - r = &OpenShiftManagedCluster{} - case "azure-native:containerservice:PrivateEndpointConnection": + case "azure-native:containerservice/v20240801:PrivateEndpointConnection": r = &PrivateEndpointConnection{} - case "azure-native:containerservice:Snapshot": + case "azure-native:containerservice/v20240801:Snapshot": r = &Snapshot{} - case "azure-native:containerservice:TrustedAccessRoleBinding": + case "azure-native:containerservice/v20240801:TrustedAccessRoleBinding": r = &TrustedAccessRoleBinding{} - case "azure-native:containerservice:UpdateRun": - r = &UpdateRun{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } @@ -62,7 +48,7 @@ func init() { } pulumi.RegisterResourceModule( "azure-native", - "containerservice", + "containerservice/v20240801", &module{version}, ) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAdminCredentials.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterAdminCredentials.go similarity index 81% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAdminCredentials.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterAdminCredentials.go index 20475d48a..94a673b9d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterAdminCredentials.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterAdminCredentials.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // The list credential result response. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2019-02-01, 2019-06-01, 2021-05-01, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func ListManagedClusterAdminCredentials(ctx *pulumi.Context, args *ListManagedClusterAdminCredentialsArgs, opts ...pulumi.InvokeOption) (*ListManagedClusterAdminCredentialsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListManagedClusterAdminCredentialsResult - err := ctx.Invoke("azure-native:containerservice:listManagedClusterAdminCredentials", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:listManagedClusterAdminCredentials", args, &rv, opts...) if err != nil { return nil, err } @@ -42,14 +39,20 @@ type ListManagedClusterAdminCredentialsResult struct { func ListManagedClusterAdminCredentialsOutput(ctx *pulumi.Context, args ListManagedClusterAdminCredentialsOutputArgs, opts ...pulumi.InvokeOption) ListManagedClusterAdminCredentialsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListManagedClusterAdminCredentialsResult, error) { + ApplyT(func(v interface{}) (ListManagedClusterAdminCredentialsResultOutput, error) { args := v.(ListManagedClusterAdminCredentialsArgs) - r, err := ListManagedClusterAdminCredentials(ctx, &args, opts...) - var s ListManagedClusterAdminCredentialsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListManagedClusterAdminCredentialsResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:listManagedClusterAdminCredentials", args, &rv, "", opts...) + if err != nil { + return ListManagedClusterAdminCredentialsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListManagedClusterAdminCredentialsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListManagedClusterAdminCredentialsResultOutput), nil + } + return output, nil }).(ListManagedClusterAdminCredentialsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterMonitoringUserCredentials.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterMonitoringUserCredentials.go similarity index 81% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterMonitoringUserCredentials.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterMonitoringUserCredentials.go index a8c466f49..93f7b4941 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterMonitoringUserCredentials.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterMonitoringUserCredentials.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // The list credential result response. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2021-05-01, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func ListManagedClusterMonitoringUserCredentials(ctx *pulumi.Context, args *ListManagedClusterMonitoringUserCredentialsArgs, opts ...pulumi.InvokeOption) (*ListManagedClusterMonitoringUserCredentialsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListManagedClusterMonitoringUserCredentialsResult - err := ctx.Invoke("azure-native:containerservice:listManagedClusterMonitoringUserCredentials", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:listManagedClusterMonitoringUserCredentials", args, &rv, opts...) if err != nil { return nil, err } @@ -42,14 +39,20 @@ type ListManagedClusterMonitoringUserCredentialsResult struct { func ListManagedClusterMonitoringUserCredentialsOutput(ctx *pulumi.Context, args ListManagedClusterMonitoringUserCredentialsOutputArgs, opts ...pulumi.InvokeOption) ListManagedClusterMonitoringUserCredentialsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListManagedClusterMonitoringUserCredentialsResult, error) { + ApplyT(func(v interface{}) (ListManagedClusterMonitoringUserCredentialsResultOutput, error) { args := v.(ListManagedClusterMonitoringUserCredentialsArgs) - r, err := ListManagedClusterMonitoringUserCredentials(ctx, &args, opts...) - var s ListManagedClusterMonitoringUserCredentialsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListManagedClusterMonitoringUserCredentialsResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:listManagedClusterMonitoringUserCredentials", args, &rv, "", opts...) + if err != nil { + return ListManagedClusterMonitoringUserCredentialsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListManagedClusterMonitoringUserCredentialsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListManagedClusterMonitoringUserCredentialsResultOutput), nil + } + return output, nil }).(ListManagedClusterMonitoringUserCredentialsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterUserCredentials.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterUserCredentials.go similarity index 83% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterUserCredentials.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterUserCredentials.go index c01a95ea3..caf214e00 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/listManagedClusterUserCredentials.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/listManagedClusterUserCredentials.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -12,13 +12,10 @@ import ( ) // The list credential result response. -// Azure REST API version: 2023-04-01. -// -// Other available API versions: 2019-02-01, 2019-06-01, 2021-05-01, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. func ListManagedClusterUserCredentials(ctx *pulumi.Context, args *ListManagedClusterUserCredentialsArgs, opts ...pulumi.InvokeOption) (*ListManagedClusterUserCredentialsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListManagedClusterUserCredentialsResult - err := ctx.Invoke("azure-native:containerservice:listManagedClusterUserCredentials", args, &rv, opts...) + err := ctx.Invoke("azure-native:containerservice/v20240801:listManagedClusterUserCredentials", args, &rv, opts...) if err != nil { return nil, err } @@ -44,14 +41,20 @@ type ListManagedClusterUserCredentialsResult struct { func ListManagedClusterUserCredentialsOutput(ctx *pulumi.Context, args ListManagedClusterUserCredentialsOutputArgs, opts ...pulumi.InvokeOption) ListManagedClusterUserCredentialsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListManagedClusterUserCredentialsResult, error) { + ApplyT(func(v interface{}) (ListManagedClusterUserCredentialsResultOutput, error) { args := v.(ListManagedClusterUserCredentialsArgs) - r, err := ListManagedClusterUserCredentials(ctx, &args, opts...) - var s ListManagedClusterUserCredentialsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListManagedClusterUserCredentialsResult + secret, err := ctx.InvokePackageRaw("azure-native:containerservice/v20240801:listManagedClusterUserCredentials", args, &rv, "", opts...) + if err != nil { + return ListManagedClusterUserCredentialsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListManagedClusterUserCredentialsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListManagedClusterUserCredentialsResultOutput), nil + } + return output, nil }).(ListManagedClusterUserCredentialsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/maintenanceConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/maintenanceConfiguration.go similarity index 89% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/maintenanceConfiguration.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/maintenanceConfiguration.go index 6323d11c7..e537be8b8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/maintenanceConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/maintenanceConfiguration.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,12 +13,11 @@ import ( ) // See [planned maintenance](https://docs.microsoft.com/azure/aks/planned-maintenance) for more information about planned maintenance. -// Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-03-01. -// -// Other available API versions: 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. type MaintenanceConfiguration struct { pulumi.CustomResourceState + // Maintenance window for the maintenance configuration. + MaintenanceWindow MaintenanceWindowResponsePtrOutput `pulumi:"maintenanceWindow"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. Name pulumi.StringOutput `pulumi:"name"` // Time slots on which upgrade is not allowed. @@ -44,7 +43,13 @@ func NewMaintenanceConfiguration(ctx *pulumi.Context, if args.ResourceName == nil { return nil, errors.New("invalid value for required argument 'ResourceName'") } + if args.MaintenanceWindow != nil { + args.MaintenanceWindow = args.MaintenanceWindow.ToMaintenanceWindowPtrOutput().ApplyT(func(v *MaintenanceWindow) *MaintenanceWindow { return v.Defaults() }).(MaintenanceWindowPtrOutput) + } aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:containerservice:MaintenanceConfiguration"), + }, { Type: pulumi.String("azure-native:containerservice/v20201201:MaintenanceConfiguration"), }, @@ -222,11 +227,20 @@ func NewMaintenanceConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:containerservice/v20240502preview:MaintenanceConfiguration"), }, + { + Type: pulumi.String("azure-native:containerservice/v20240602preview:MaintenanceConfiguration"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240701:MaintenanceConfiguration"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240702preview:MaintenanceConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) var resource MaintenanceConfiguration - err := ctx.RegisterResource("azure-native:containerservice:MaintenanceConfiguration", name, args, &resource, opts...) + err := ctx.RegisterResource("azure-native:containerservice/v20240801:MaintenanceConfiguration", name, args, &resource, opts...) if err != nil { return nil, err } @@ -238,7 +252,7 @@ func NewMaintenanceConfiguration(ctx *pulumi.Context, func GetMaintenanceConfiguration(ctx *pulumi.Context, name string, id pulumi.IDInput, state *MaintenanceConfigurationState, opts ...pulumi.ResourceOption) (*MaintenanceConfiguration, error) { var resource MaintenanceConfiguration - err := ctx.ReadResource("azure-native:containerservice:MaintenanceConfiguration", name, id, state, &resource, opts...) + err := ctx.ReadResource("azure-native:containerservice/v20240801:MaintenanceConfiguration", name, id, state, &resource, opts...) if err != nil { return nil, err } @@ -259,6 +273,8 @@ func (MaintenanceConfigurationState) ElementType() reflect.Type { type maintenanceConfigurationArgs struct { // The name of the maintenance configuration. ConfigName *string `pulumi:"configName"` + // Maintenance window for the maintenance configuration. + MaintenanceWindow *MaintenanceWindow `pulumi:"maintenanceWindow"` // Time slots on which upgrade is not allowed. NotAllowedTime []TimeSpan `pulumi:"notAllowedTime"` // The name of the resource group. The name is case insensitive. @@ -273,6 +289,8 @@ type maintenanceConfigurationArgs struct { type MaintenanceConfigurationArgs struct { // The name of the maintenance configuration. ConfigName pulumi.StringPtrInput + // Maintenance window for the maintenance configuration. + MaintenanceWindow MaintenanceWindowPtrInput // Time slots on which upgrade is not allowed. NotAllowedTime TimeSpanArrayInput // The name of the resource group. The name is case insensitive. @@ -320,6 +338,11 @@ func (o MaintenanceConfigurationOutput) ToMaintenanceConfigurationOutputWithCont return o } +// Maintenance window for the maintenance configuration. +func (o MaintenanceConfigurationOutput) MaintenanceWindow() MaintenanceWindowResponsePtrOutput { + return o.ApplyT(func(v *MaintenanceConfiguration) MaintenanceWindowResponsePtrOutput { return v.MaintenanceWindow }).(MaintenanceWindowResponsePtrOutput) +} + // The name of the resource that is unique within a resource group. This name can be used to access the resource. func (o MaintenanceConfigurationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *MaintenanceConfiguration) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedCluster.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/managedCluster.go similarity index 91% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedCluster.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/managedCluster.go index e2cc58378..923980926 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/managedCluster.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/managedCluster.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,11 +13,6 @@ import ( ) // Managed cluster. -// Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-03-01. -// -// Other available API versions: 2017-08-31, 2019-02-01, 2019-06-01, 2021-05-01, 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. -// -// When creating a managed cluster you must define at least one agent pool inline via the `agentPoolProfiles` property. The Azure API does not currently allow this property to be updated directly. Instead, additional agent pools can be defined via the `AgentPool` resource. If needing to change the initial agent pool profile property, you can either trigger the whole cluster to be re-created by using the [replaceOnChanges resource option](https://www.pulumi.com/docs/concepts/options/replaceonchanges/), or make the change directly in Azure then use `pulumi refresh` to update the stack's stack to match. type ManagedCluster struct { pulumi.CustomResourceState @@ -61,6 +56,8 @@ type ManagedCluster struct { Identity ManagedClusterIdentityResponsePtrOutput `pulumi:"identity"` // Identities associated with the cluster. IdentityProfile UserAssignedIdentityResponseMapOutput `pulumi:"identityProfile"` + // Ingress profile for the managed cluster. + IngressProfile ManagedClusterIngressProfileResponsePtrOutput `pulumi:"ingressProfile"` // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details. KubernetesVersion pulumi.StringPtrOutput `pulumi:"kubernetesVersion"` // The profile for Linux VMs in the Managed Cluster. @@ -69,6 +66,8 @@ type ManagedCluster struct { Location pulumi.StringOutput `pulumi:"location"` // The max number of agent pools for the managed cluster. MaxAgentPools pulumi.IntOutput `pulumi:"maxAgentPools"` + // Optional cluster metrics configuration. + MetricsProfile ManagedClusterMetricsProfileResponsePtrOutput `pulumi:"metricsProfile"` // The name of the resource Name pulumi.StringOutput `pulumi:"name"` // The network configuration profile. @@ -89,8 +88,12 @@ type ManagedCluster struct { ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` // Allow or deny public network access for AKS PublicNetworkAccess pulumi.StringPtrOutput `pulumi:"publicNetworkAccess"` + // The resourceUID uniquely identifies ManagedClusters that reuse ARM ResourceIds (i.e: create, delete, create sequence) + ResourceUID pulumi.StringOutput `pulumi:"resourceUID"` // Security profile for the managed cluster. SecurityProfile ManagedClusterSecurityProfileResponsePtrOutput `pulumi:"securityProfile"` + // Service mesh profile for a managed cluster. + ServiceMeshProfile ServiceMeshProfileResponsePtrOutput `pulumi:"serviceMeshProfile"` // Information about a service principal identity for the cluster to use for manipulating Azure APIs. ServicePrincipalProfile ManagedClusterServicePrincipalProfileResponsePtrOutput `pulumi:"servicePrincipalProfile"` // The managed cluster SKU. @@ -105,6 +108,8 @@ type ManagedCluster struct { Tags pulumi.StringMapOutput `pulumi:"tags"` // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" Type pulumi.StringOutput `pulumi:"type"` + // Settings for upgrading a cluster. + UpgradeSettings ClusterUpgradeSettingsResponsePtrOutput `pulumi:"upgradeSettings"` // The profile for Windows VMs in the Managed Cluster. WindowsProfile ManagedClusterWindowsProfileResponsePtrOutput `pulumi:"windowsProfile"` // Workload Auto-scaler profile for the managed cluster. @@ -127,7 +132,15 @@ func NewManagedCluster(ctx *pulumi.Context, if args.SecurityProfile != nil { args.SecurityProfile = args.SecurityProfile.ToManagedClusterSecurityProfilePtrOutput().ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfile { return v.Defaults() }).(ManagedClusterSecurityProfilePtrOutput) } + if args.WorkloadAutoScalerProfile != nil { + args.WorkloadAutoScalerProfile = args.WorkloadAutoScalerProfile.ToManagedClusterWorkloadAutoScalerProfilePtrOutput().ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfile { + return v.Defaults() + }).(ManagedClusterWorkloadAutoScalerProfilePtrOutput) + } aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:containerservice:ManagedCluster"), + }, { Type: pulumi.String("azure-native:containerservice/v20170831:ManagedCluster"), }, @@ -356,11 +369,20 @@ func NewManagedCluster(ctx *pulumi.Context, { Type: pulumi.String("azure-native:containerservice/v20240502preview:ManagedCluster"), }, + { + Type: pulumi.String("azure-native:containerservice/v20240602preview:ManagedCluster"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240701:ManagedCluster"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240702preview:ManagedCluster"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) var resource ManagedCluster - err := ctx.RegisterResource("azure-native:containerservice:ManagedCluster", name, args, &resource, opts...) + err := ctx.RegisterResource("azure-native:containerservice/v20240801:ManagedCluster", name, args, &resource, opts...) if err != nil { return nil, err } @@ -372,7 +394,7 @@ func NewManagedCluster(ctx *pulumi.Context, func GetManagedCluster(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ManagedClusterState, opts ...pulumi.ResourceOption) (*ManagedCluster, error) { var resource ManagedCluster - err := ctx.ReadResource("azure-native:containerservice:ManagedCluster", name, id, state, &resource, opts...) + err := ctx.ReadResource("azure-native:containerservice/v20240801:ManagedCluster", name, id, state, &resource, opts...) if err != nil { return nil, err } @@ -425,12 +447,16 @@ type managedClusterArgs struct { Identity *ManagedClusterIdentity `pulumi:"identity"` // Identities associated with the cluster. IdentityProfile map[string]UserAssignedIdentity `pulumi:"identityProfile"` + // Ingress profile for the managed cluster. + IngressProfile *ManagedClusterIngressProfile `pulumi:"ingressProfile"` // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details. KubernetesVersion *string `pulumi:"kubernetesVersion"` // The profile for Linux VMs in the Managed Cluster. LinuxProfile *ContainerServiceLinuxProfile `pulumi:"linuxProfile"` // The geo-location where the resource lives Location *string `pulumi:"location"` + // Optional cluster metrics configuration. + MetricsProfile *ManagedClusterMetricsProfile `pulumi:"metricsProfile"` // The network configuration profile. NetworkProfile *ContainerServiceNetworkProfile `pulumi:"networkProfile"` // The name of the resource group containing agent pool nodes. @@ -449,6 +475,8 @@ type managedClusterArgs struct { ResourceName *string `pulumi:"resourceName"` // Security profile for the managed cluster. SecurityProfile *ManagedClusterSecurityProfile `pulumi:"securityProfile"` + // Service mesh profile for a managed cluster. + ServiceMeshProfile *ServiceMeshProfile `pulumi:"serviceMeshProfile"` // Information about a service principal identity for the cluster to use for manipulating Azure APIs. ServicePrincipalProfile *ManagedClusterServicePrincipalProfile `pulumi:"servicePrincipalProfile"` // The managed cluster SKU. @@ -459,6 +487,8 @@ type managedClusterArgs struct { SupportPlan *string `pulumi:"supportPlan"` // Resource tags. Tags map[string]string `pulumi:"tags"` + // Settings for upgrading a cluster. + UpgradeSettings *ClusterUpgradeSettings `pulumi:"upgradeSettings"` // The profile for Windows VMs in the Managed Cluster. WindowsProfile *ManagedClusterWindowsProfile `pulumi:"windowsProfile"` // Workload Auto-scaler profile for the managed cluster. @@ -501,12 +531,16 @@ type ManagedClusterArgs struct { Identity ManagedClusterIdentityPtrInput // Identities associated with the cluster. IdentityProfile UserAssignedIdentityMapInput + // Ingress profile for the managed cluster. + IngressProfile ManagedClusterIngressProfilePtrInput // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details. KubernetesVersion pulumi.StringPtrInput // The profile for Linux VMs in the Managed Cluster. LinuxProfile ContainerServiceLinuxProfilePtrInput // The geo-location where the resource lives Location pulumi.StringPtrInput + // Optional cluster metrics configuration. + MetricsProfile ManagedClusterMetricsProfilePtrInput // The network configuration profile. NetworkProfile ContainerServiceNetworkProfilePtrInput // The name of the resource group containing agent pool nodes. @@ -525,6 +559,8 @@ type ManagedClusterArgs struct { ResourceName pulumi.StringPtrInput // Security profile for the managed cluster. SecurityProfile ManagedClusterSecurityProfilePtrInput + // Service mesh profile for a managed cluster. + ServiceMeshProfile ServiceMeshProfilePtrInput // Information about a service principal identity for the cluster to use for manipulating Azure APIs. ServicePrincipalProfile ManagedClusterServicePrincipalProfilePtrInput // The managed cluster SKU. @@ -535,6 +571,8 @@ type ManagedClusterArgs struct { SupportPlan pulumi.StringPtrInput // Resource tags. Tags pulumi.StringMapInput + // Settings for upgrading a cluster. + UpgradeSettings ClusterUpgradeSettingsPtrInput // The profile for Windows VMs in the Managed Cluster. WindowsProfile ManagedClusterWindowsProfilePtrInput // Workload Auto-scaler profile for the managed cluster. @@ -684,6 +722,11 @@ func (o ManagedClusterOutput) IdentityProfile() UserAssignedIdentityResponseMapO return o.ApplyT(func(v *ManagedCluster) UserAssignedIdentityResponseMapOutput { return v.IdentityProfile }).(UserAssignedIdentityResponseMapOutput) } +// Ingress profile for the managed cluster. +func (o ManagedClusterOutput) IngressProfile() ManagedClusterIngressProfileResponsePtrOutput { + return o.ApplyT(func(v *ManagedCluster) ManagedClusterIngressProfileResponsePtrOutput { return v.IngressProfile }).(ManagedClusterIngressProfileResponsePtrOutput) +} + // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details. func (o ManagedClusterOutput) KubernetesVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *ManagedCluster) pulumi.StringPtrOutput { return v.KubernetesVersion }).(pulumi.StringPtrOutput) @@ -704,6 +747,11 @@ func (o ManagedClusterOutput) MaxAgentPools() pulumi.IntOutput { return o.ApplyT(func(v *ManagedCluster) pulumi.IntOutput { return v.MaxAgentPools }).(pulumi.IntOutput) } +// Optional cluster metrics configuration. +func (o ManagedClusterOutput) MetricsProfile() ManagedClusterMetricsProfileResponsePtrOutput { + return o.ApplyT(func(v *ManagedCluster) ManagedClusterMetricsProfileResponsePtrOutput { return v.MetricsProfile }).(ManagedClusterMetricsProfileResponsePtrOutput) +} + // The name of the resource func (o ManagedClusterOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *ManagedCluster) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) @@ -754,11 +802,21 @@ func (o ManagedClusterOutput) PublicNetworkAccess() pulumi.StringPtrOutput { return o.ApplyT(func(v *ManagedCluster) pulumi.StringPtrOutput { return v.PublicNetworkAccess }).(pulumi.StringPtrOutput) } +// The resourceUID uniquely identifies ManagedClusters that reuse ARM ResourceIds (i.e: create, delete, create sequence) +func (o ManagedClusterOutput) ResourceUID() pulumi.StringOutput { + return o.ApplyT(func(v *ManagedCluster) pulumi.StringOutput { return v.ResourceUID }).(pulumi.StringOutput) +} + // Security profile for the managed cluster. func (o ManagedClusterOutput) SecurityProfile() ManagedClusterSecurityProfileResponsePtrOutput { return o.ApplyT(func(v *ManagedCluster) ManagedClusterSecurityProfileResponsePtrOutput { return v.SecurityProfile }).(ManagedClusterSecurityProfileResponsePtrOutput) } +// Service mesh profile for a managed cluster. +func (o ManagedClusterOutput) ServiceMeshProfile() ServiceMeshProfileResponsePtrOutput { + return o.ApplyT(func(v *ManagedCluster) ServiceMeshProfileResponsePtrOutput { return v.ServiceMeshProfile }).(ServiceMeshProfileResponsePtrOutput) +} + // Information about a service principal identity for the cluster to use for manipulating Azure APIs. func (o ManagedClusterOutput) ServicePrincipalProfile() ManagedClusterServicePrincipalProfileResponsePtrOutput { return o.ApplyT(func(v *ManagedCluster) ManagedClusterServicePrincipalProfileResponsePtrOutput { @@ -796,6 +854,11 @@ func (o ManagedClusterOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v *ManagedCluster) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) } +// Settings for upgrading a cluster. +func (o ManagedClusterOutput) UpgradeSettings() ClusterUpgradeSettingsResponsePtrOutput { + return o.ApplyT(func(v *ManagedCluster) ClusterUpgradeSettingsResponsePtrOutput { return v.UpgradeSettings }).(ClusterUpgradeSettingsResponsePtrOutput) +} + // The profile for Windows VMs in the Managed Cluster. func (o ManagedClusterOutput) WindowsProfile() ManagedClusterWindowsProfileResponsePtrOutput { return o.ApplyT(func(v *ManagedCluster) ManagedClusterWindowsProfileResponsePtrOutput { return v.WindowsProfile }).(ManagedClusterWindowsProfileResponsePtrOutput) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/privateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/privateEndpointConnection.go similarity index 94% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/privateEndpointConnection.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/privateEndpointConnection.go index 4a27dfc42..6f211a27b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/privateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/privateEndpointConnection.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,9 +13,6 @@ import ( ) // A private endpoint connection -// Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-03-01. -// -// Other available API versions: 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. type PrivateEndpointConnection struct { pulumi.CustomResourceState @@ -48,6 +45,9 @@ func NewPrivateEndpointConnection(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'ResourceName'") } aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:containerservice:PrivateEndpointConnection"), + }, { Type: pulumi.String("azure-native:containerservice/v20200601:PrivateEndpointConnection"), }, @@ -237,11 +237,20 @@ func NewPrivateEndpointConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:containerservice/v20240502preview:PrivateEndpointConnection"), }, + { + Type: pulumi.String("azure-native:containerservice/v20240602preview:PrivateEndpointConnection"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240701:PrivateEndpointConnection"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240702preview:PrivateEndpointConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) var resource PrivateEndpointConnection - err := ctx.RegisterResource("azure-native:containerservice:PrivateEndpointConnection", name, args, &resource, opts...) + err := ctx.RegisterResource("azure-native:containerservice/v20240801:PrivateEndpointConnection", name, args, &resource, opts...) if err != nil { return nil, err } @@ -253,7 +262,7 @@ func NewPrivateEndpointConnection(ctx *pulumi.Context, func GetPrivateEndpointConnection(ctx *pulumi.Context, name string, id pulumi.IDInput, state *PrivateEndpointConnectionState, opts ...pulumi.ResourceOption) (*PrivateEndpointConnection, error) { var resource PrivateEndpointConnection - err := ctx.ReadResource("azure-native:containerservice:PrivateEndpointConnection", name, id, state, &resource, opts...) + err := ctx.ReadResource("azure-native:containerservice/v20240801:PrivateEndpointConnection", name, id, state, &resource, opts...) if err != nil { return nil, err } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumiEnums.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/pulumiEnums.go similarity index 86% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumiEnums.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/pulumiEnums.go index f5da037b4..d23a6df0f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumiEnums.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/pulumiEnums.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -346,6 +346,174 @@ func (in *agentPoolTypePtr) ToAgentPoolTypePtrOutputWithContext(ctx context.Cont return pulumi.ToOutputWithContext(ctx, in).(AgentPoolTypePtrOutput) } +// The type of the managed inbound Load Balancer BackendPool. +type BackendPoolType string + +const ( + // The type of the managed inbound Load Balancer BackendPool. https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#configure-load-balancer-backend. + BackendPoolTypeNodeIPConfiguration = BackendPoolType("NodeIPConfiguration") + // The type of the managed inbound Load Balancer BackendPool. https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/#configure-load-balancer-backend. + BackendPoolTypeNodeIP = BackendPoolType("NodeIP") +) + +func (BackendPoolType) ElementType() reflect.Type { + return reflect.TypeOf((*BackendPoolType)(nil)).Elem() +} + +func (e BackendPoolType) ToBackendPoolTypeOutput() BackendPoolTypeOutput { + return pulumi.ToOutput(e).(BackendPoolTypeOutput) +} + +func (e BackendPoolType) ToBackendPoolTypeOutputWithContext(ctx context.Context) BackendPoolTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(BackendPoolTypeOutput) +} + +func (e BackendPoolType) ToBackendPoolTypePtrOutput() BackendPoolTypePtrOutput { + return e.ToBackendPoolTypePtrOutputWithContext(context.Background()) +} + +func (e BackendPoolType) ToBackendPoolTypePtrOutputWithContext(ctx context.Context) BackendPoolTypePtrOutput { + return BackendPoolType(e).ToBackendPoolTypeOutputWithContext(ctx).ToBackendPoolTypePtrOutputWithContext(ctx) +} + +func (e BackendPoolType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e BackendPoolType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e BackendPoolType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e BackendPoolType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type BackendPoolTypeOutput struct{ *pulumi.OutputState } + +func (BackendPoolTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*BackendPoolType)(nil)).Elem() +} + +func (o BackendPoolTypeOutput) ToBackendPoolTypeOutput() BackendPoolTypeOutput { + return o +} + +func (o BackendPoolTypeOutput) ToBackendPoolTypeOutputWithContext(ctx context.Context) BackendPoolTypeOutput { + return o +} + +func (o BackendPoolTypeOutput) ToBackendPoolTypePtrOutput() BackendPoolTypePtrOutput { + return o.ToBackendPoolTypePtrOutputWithContext(context.Background()) +} + +func (o BackendPoolTypeOutput) ToBackendPoolTypePtrOutputWithContext(ctx context.Context) BackendPoolTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v BackendPoolType) *BackendPoolType { + return &v + }).(BackendPoolTypePtrOutput) +} + +func (o BackendPoolTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o BackendPoolTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e BackendPoolType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o BackendPoolTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o BackendPoolTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e BackendPoolType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type BackendPoolTypePtrOutput struct{ *pulumi.OutputState } + +func (BackendPoolTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**BackendPoolType)(nil)).Elem() +} + +func (o BackendPoolTypePtrOutput) ToBackendPoolTypePtrOutput() BackendPoolTypePtrOutput { + return o +} + +func (o BackendPoolTypePtrOutput) ToBackendPoolTypePtrOutputWithContext(ctx context.Context) BackendPoolTypePtrOutput { + return o +} + +func (o BackendPoolTypePtrOutput) Elem() BackendPoolTypeOutput { + return o.ApplyT(func(v *BackendPoolType) BackendPoolType { + if v != nil { + return *v + } + var ret BackendPoolType + return ret + }).(BackendPoolTypeOutput) +} + +func (o BackendPoolTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o BackendPoolTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *BackendPoolType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// BackendPoolTypeInput is an input type that accepts values of the BackendPoolType enum +// A concrete instance of `BackendPoolTypeInput` can be one of the following: +// +// BackendPoolTypeNodeIPConfiguration +// BackendPoolTypeNodeIP +type BackendPoolTypeInput interface { + pulumi.Input + + ToBackendPoolTypeOutput() BackendPoolTypeOutput + ToBackendPoolTypeOutputWithContext(context.Context) BackendPoolTypeOutput +} + +var backendPoolTypePtrType = reflect.TypeOf((**BackendPoolType)(nil)).Elem() + +type BackendPoolTypePtrInput interface { + pulumi.Input + + ToBackendPoolTypePtrOutput() BackendPoolTypePtrOutput + ToBackendPoolTypePtrOutputWithContext(context.Context) BackendPoolTypePtrOutput +} + +type backendPoolTypePtr string + +func BackendPoolTypePtr(v string) BackendPoolTypePtrInput { + return (*backendPoolTypePtr)(&v) +} + +func (*backendPoolTypePtr) ElementType() reflect.Type { + return backendPoolTypePtrType +} + +func (in *backendPoolTypePtr) ToBackendPoolTypePtrOutput() BackendPoolTypePtrOutput { + return pulumi.ToOutput(in).(BackendPoolTypePtrOutput) +} + +func (in *backendPoolTypePtr) ToBackendPoolTypePtrOutputWithContext(ctx context.Context) BackendPoolTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(BackendPoolTypePtrOutput) +} + // Tells whether the cluster is Running or Stopped type Code string @@ -1360,6 +1528,174 @@ func (in *ipFamilyPtr) ToIpFamilyPtrOutputWithContext(ctx context.Context) IpFam return pulumi.ToOutputWithContext(ctx, in).(IpFamilyPtrOutput) } +// Mode of an ingress gateway. +type IstioIngressGatewayMode string + +const ( + // The ingress gateway is assigned a public IP address and is publicly accessible. + IstioIngressGatewayModeExternal = IstioIngressGatewayMode("External") + // The ingress gateway is assigned an internal IP address and cannot is accessed publicly. + IstioIngressGatewayModeInternal = IstioIngressGatewayMode("Internal") +) + +func (IstioIngressGatewayMode) ElementType() reflect.Type { + return reflect.TypeOf((*IstioIngressGatewayMode)(nil)).Elem() +} + +func (e IstioIngressGatewayMode) ToIstioIngressGatewayModeOutput() IstioIngressGatewayModeOutput { + return pulumi.ToOutput(e).(IstioIngressGatewayModeOutput) +} + +func (e IstioIngressGatewayMode) ToIstioIngressGatewayModeOutputWithContext(ctx context.Context) IstioIngressGatewayModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(IstioIngressGatewayModeOutput) +} + +func (e IstioIngressGatewayMode) ToIstioIngressGatewayModePtrOutput() IstioIngressGatewayModePtrOutput { + return e.ToIstioIngressGatewayModePtrOutputWithContext(context.Background()) +} + +func (e IstioIngressGatewayMode) ToIstioIngressGatewayModePtrOutputWithContext(ctx context.Context) IstioIngressGatewayModePtrOutput { + return IstioIngressGatewayMode(e).ToIstioIngressGatewayModeOutputWithContext(ctx).ToIstioIngressGatewayModePtrOutputWithContext(ctx) +} + +func (e IstioIngressGatewayMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e IstioIngressGatewayMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e IstioIngressGatewayMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e IstioIngressGatewayMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type IstioIngressGatewayModeOutput struct{ *pulumi.OutputState } + +func (IstioIngressGatewayModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioIngressGatewayMode)(nil)).Elem() +} + +func (o IstioIngressGatewayModeOutput) ToIstioIngressGatewayModeOutput() IstioIngressGatewayModeOutput { + return o +} + +func (o IstioIngressGatewayModeOutput) ToIstioIngressGatewayModeOutputWithContext(ctx context.Context) IstioIngressGatewayModeOutput { + return o +} + +func (o IstioIngressGatewayModeOutput) ToIstioIngressGatewayModePtrOutput() IstioIngressGatewayModePtrOutput { + return o.ToIstioIngressGatewayModePtrOutputWithContext(context.Background()) +} + +func (o IstioIngressGatewayModeOutput) ToIstioIngressGatewayModePtrOutputWithContext(ctx context.Context) IstioIngressGatewayModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IstioIngressGatewayMode) *IstioIngressGatewayMode { + return &v + }).(IstioIngressGatewayModePtrOutput) +} + +func (o IstioIngressGatewayModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o IstioIngressGatewayModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e IstioIngressGatewayMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o IstioIngressGatewayModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o IstioIngressGatewayModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e IstioIngressGatewayMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type IstioIngressGatewayModePtrOutput struct{ *pulumi.OutputState } + +func (IstioIngressGatewayModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioIngressGatewayMode)(nil)).Elem() +} + +func (o IstioIngressGatewayModePtrOutput) ToIstioIngressGatewayModePtrOutput() IstioIngressGatewayModePtrOutput { + return o +} + +func (o IstioIngressGatewayModePtrOutput) ToIstioIngressGatewayModePtrOutputWithContext(ctx context.Context) IstioIngressGatewayModePtrOutput { + return o +} + +func (o IstioIngressGatewayModePtrOutput) Elem() IstioIngressGatewayModeOutput { + return o.ApplyT(func(v *IstioIngressGatewayMode) IstioIngressGatewayMode { + if v != nil { + return *v + } + var ret IstioIngressGatewayMode + return ret + }).(IstioIngressGatewayModeOutput) +} + +func (o IstioIngressGatewayModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o IstioIngressGatewayModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *IstioIngressGatewayMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// IstioIngressGatewayModeInput is an input type that accepts values of the IstioIngressGatewayMode enum +// A concrete instance of `IstioIngressGatewayModeInput` can be one of the following: +// +// IstioIngressGatewayModeExternal +// IstioIngressGatewayModeInternal +type IstioIngressGatewayModeInput interface { + pulumi.Input + + ToIstioIngressGatewayModeOutput() IstioIngressGatewayModeOutput + ToIstioIngressGatewayModeOutputWithContext(context.Context) IstioIngressGatewayModeOutput +} + +var istioIngressGatewayModePtrType = reflect.TypeOf((**IstioIngressGatewayMode)(nil)).Elem() + +type IstioIngressGatewayModePtrInput interface { + pulumi.Input + + ToIstioIngressGatewayModePtrOutput() IstioIngressGatewayModePtrOutput + ToIstioIngressGatewayModePtrOutputWithContext(context.Context) IstioIngressGatewayModePtrOutput +} + +type istioIngressGatewayModePtr string + +func IstioIngressGatewayModePtr(v string) IstioIngressGatewayModePtrInput { + return (*istioIngressGatewayModePtr)(&v) +} + +func (*istioIngressGatewayModePtr) ElementType() reflect.Type { + return istioIngressGatewayModePtrType +} + +func (in *istioIngressGatewayModePtr) ToIstioIngressGatewayModePtrOutput() IstioIngressGatewayModePtrOutput { + return pulumi.ToOutput(in).(IstioIngressGatewayModePtrOutput) +} + +func (in *istioIngressGatewayModePtr) ToIstioIngressGatewayModePtrOutputWithContext(ctx context.Context) IstioIngressGatewayModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(IstioIngressGatewayModePtrOutput) +} + // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. type KeyVaultNetworkAccessTypes string @@ -2534,127 +2870,127 @@ func (in *managedClusterSKUTierPtr) ToManagedClusterSKUTierPtrOutputWithContext( return pulumi.ToOutputWithContext(ctx, in).(ManagedClusterSKUTierPtrOutput) } -// ManagedClusterUpgradeType is the type of upgrade to be applied. -type ManagedClusterUpgradeType string +// Network dataplane used in the Kubernetes cluster. +type NetworkDataplane string const ( - // Full upgrades the control plane and all agent pools of the target ManagedClusters. Requires the ManagedClusterUpgradeSpec.KubernetesVersion property to be set. - ManagedClusterUpgradeTypeFull = ManagedClusterUpgradeType("Full") - // NodeImageOnly upgrades only the node images of the target ManagedClusters. Requires the ManagedClusterUpgradeSpec.KubernetesVersion property to NOT be set. - ManagedClusterUpgradeTypeNodeImageOnly = ManagedClusterUpgradeType("NodeImageOnly") + // Use Azure network dataplane. + NetworkDataplaneAzure = NetworkDataplane("azure") + // Use Cilium network dataplane. See [Azure CNI Powered by Cilium](https://learn.microsoft.com/azure/aks/azure-cni-powered-by-cilium) for more information. + NetworkDataplaneCilium = NetworkDataplane("cilium") ) -func (ManagedClusterUpgradeType) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpgradeType)(nil)).Elem() +func (NetworkDataplane) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkDataplane)(nil)).Elem() } -func (e ManagedClusterUpgradeType) ToManagedClusterUpgradeTypeOutput() ManagedClusterUpgradeTypeOutput { - return pulumi.ToOutput(e).(ManagedClusterUpgradeTypeOutput) +func (e NetworkDataplane) ToNetworkDataplaneOutput() NetworkDataplaneOutput { + return pulumi.ToOutput(e).(NetworkDataplaneOutput) } -func (e ManagedClusterUpgradeType) ToManagedClusterUpgradeTypeOutputWithContext(ctx context.Context) ManagedClusterUpgradeTypeOutput { - return pulumi.ToOutputWithContext(ctx, e).(ManagedClusterUpgradeTypeOutput) +func (e NetworkDataplane) ToNetworkDataplaneOutputWithContext(ctx context.Context) NetworkDataplaneOutput { + return pulumi.ToOutputWithContext(ctx, e).(NetworkDataplaneOutput) } -func (e ManagedClusterUpgradeType) ToManagedClusterUpgradeTypePtrOutput() ManagedClusterUpgradeTypePtrOutput { - return e.ToManagedClusterUpgradeTypePtrOutputWithContext(context.Background()) +func (e NetworkDataplane) ToNetworkDataplanePtrOutput() NetworkDataplanePtrOutput { + return e.ToNetworkDataplanePtrOutputWithContext(context.Background()) } -func (e ManagedClusterUpgradeType) ToManagedClusterUpgradeTypePtrOutputWithContext(ctx context.Context) ManagedClusterUpgradeTypePtrOutput { - return ManagedClusterUpgradeType(e).ToManagedClusterUpgradeTypeOutputWithContext(ctx).ToManagedClusterUpgradeTypePtrOutputWithContext(ctx) +func (e NetworkDataplane) ToNetworkDataplanePtrOutputWithContext(ctx context.Context) NetworkDataplanePtrOutput { + return NetworkDataplane(e).ToNetworkDataplaneOutputWithContext(ctx).ToNetworkDataplanePtrOutputWithContext(ctx) } -func (e ManagedClusterUpgradeType) ToStringOutput() pulumi.StringOutput { +func (e NetworkDataplane) ToStringOutput() pulumi.StringOutput { return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) } -func (e ManagedClusterUpgradeType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { +func (e NetworkDataplane) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) } -func (e ManagedClusterUpgradeType) ToStringPtrOutput() pulumi.StringPtrOutput { +func (e NetworkDataplane) ToStringPtrOutput() pulumi.StringPtrOutput { return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) } -func (e ManagedClusterUpgradeType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { +func (e NetworkDataplane) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) } -type ManagedClusterUpgradeTypeOutput struct{ *pulumi.OutputState } +type NetworkDataplaneOutput struct{ *pulumi.OutputState } -func (ManagedClusterUpgradeTypeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpgradeType)(nil)).Elem() +func (NetworkDataplaneOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkDataplane)(nil)).Elem() } -func (o ManagedClusterUpgradeTypeOutput) ToManagedClusterUpgradeTypeOutput() ManagedClusterUpgradeTypeOutput { +func (o NetworkDataplaneOutput) ToNetworkDataplaneOutput() NetworkDataplaneOutput { return o } -func (o ManagedClusterUpgradeTypeOutput) ToManagedClusterUpgradeTypeOutputWithContext(ctx context.Context) ManagedClusterUpgradeTypeOutput { +func (o NetworkDataplaneOutput) ToNetworkDataplaneOutputWithContext(ctx context.Context) NetworkDataplaneOutput { return o } -func (o ManagedClusterUpgradeTypeOutput) ToManagedClusterUpgradeTypePtrOutput() ManagedClusterUpgradeTypePtrOutput { - return o.ToManagedClusterUpgradeTypePtrOutputWithContext(context.Background()) +func (o NetworkDataplaneOutput) ToNetworkDataplanePtrOutput() NetworkDataplanePtrOutput { + return o.ToNetworkDataplanePtrOutputWithContext(context.Background()) } -func (o ManagedClusterUpgradeTypeOutput) ToManagedClusterUpgradeTypePtrOutputWithContext(ctx context.Context) ManagedClusterUpgradeTypePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterUpgradeType) *ManagedClusterUpgradeType { +func (o NetworkDataplaneOutput) ToNetworkDataplanePtrOutputWithContext(ctx context.Context) NetworkDataplanePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkDataplane) *NetworkDataplane { return &v - }).(ManagedClusterUpgradeTypePtrOutput) + }).(NetworkDataplanePtrOutput) } -func (o ManagedClusterUpgradeTypeOutput) ToStringOutput() pulumi.StringOutput { +func (o NetworkDataplaneOutput) ToStringOutput() pulumi.StringOutput { return o.ToStringOutputWithContext(context.Background()) } -func (o ManagedClusterUpgradeTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ManagedClusterUpgradeType) string { +func (o NetworkDataplaneOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkDataplane) string { return string(e) }).(pulumi.StringOutput) } -func (o ManagedClusterUpgradeTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o NetworkDataplaneOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o ManagedClusterUpgradeTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ManagedClusterUpgradeType) *string { +func (o NetworkDataplaneOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkDataplane) *string { v := string(e) return &v }).(pulumi.StringPtrOutput) } -type ManagedClusterUpgradeTypePtrOutput struct{ *pulumi.OutputState } +type NetworkDataplanePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterUpgradeTypePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterUpgradeType)(nil)).Elem() +func (NetworkDataplanePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkDataplane)(nil)).Elem() } -func (o ManagedClusterUpgradeTypePtrOutput) ToManagedClusterUpgradeTypePtrOutput() ManagedClusterUpgradeTypePtrOutput { +func (o NetworkDataplanePtrOutput) ToNetworkDataplanePtrOutput() NetworkDataplanePtrOutput { return o } -func (o ManagedClusterUpgradeTypePtrOutput) ToManagedClusterUpgradeTypePtrOutputWithContext(ctx context.Context) ManagedClusterUpgradeTypePtrOutput { +func (o NetworkDataplanePtrOutput) ToNetworkDataplanePtrOutputWithContext(ctx context.Context) NetworkDataplanePtrOutput { return o } -func (o ManagedClusterUpgradeTypePtrOutput) Elem() ManagedClusterUpgradeTypeOutput { - return o.ApplyT(func(v *ManagedClusterUpgradeType) ManagedClusterUpgradeType { +func (o NetworkDataplanePtrOutput) Elem() NetworkDataplaneOutput { + return o.ApplyT(func(v *NetworkDataplane) NetworkDataplane { if v != nil { return *v } - var ret ManagedClusterUpgradeType + var ret NetworkDataplane return ret - }).(ManagedClusterUpgradeTypeOutput) + }).(NetworkDataplaneOutput) } -func (o ManagedClusterUpgradeTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o NetworkDataplanePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o ManagedClusterUpgradeTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *ManagedClusterUpgradeType) *string { +func (o NetworkDataplanePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *NetworkDataplane) *string { if e == nil { return nil } @@ -2663,187 +2999,19 @@ func (o ManagedClusterUpgradeTypePtrOutput) ToStringPtrOutputWithContext(ctx con }).(pulumi.StringPtrOutput) } -// ManagedClusterUpgradeTypeInput is an input type that accepts values of the ManagedClusterUpgradeType enum -// A concrete instance of `ManagedClusterUpgradeTypeInput` can be one of the following: +// NetworkDataplaneInput is an input type that accepts values of the NetworkDataplane enum +// A concrete instance of `NetworkDataplaneInput` can be one of the following: // -// ManagedClusterUpgradeTypeFull -// ManagedClusterUpgradeTypeNodeImageOnly -type ManagedClusterUpgradeTypeInput interface { +// NetworkDataplaneAzure +// NetworkDataplaneCilium +type NetworkDataplaneInput interface { pulumi.Input - ToManagedClusterUpgradeTypeOutput() ManagedClusterUpgradeTypeOutput - ToManagedClusterUpgradeTypeOutputWithContext(context.Context) ManagedClusterUpgradeTypeOutput + ToNetworkDataplaneOutput() NetworkDataplaneOutput + ToNetworkDataplaneOutputWithContext(context.Context) NetworkDataplaneOutput } -var managedClusterUpgradeTypePtrType = reflect.TypeOf((**ManagedClusterUpgradeType)(nil)).Elem() - -type ManagedClusterUpgradeTypePtrInput interface { - pulumi.Input - - ToManagedClusterUpgradeTypePtrOutput() ManagedClusterUpgradeTypePtrOutput - ToManagedClusterUpgradeTypePtrOutputWithContext(context.Context) ManagedClusterUpgradeTypePtrOutput -} - -type managedClusterUpgradeTypePtr string - -func ManagedClusterUpgradeTypePtr(v string) ManagedClusterUpgradeTypePtrInput { - return (*managedClusterUpgradeTypePtr)(&v) -} - -func (*managedClusterUpgradeTypePtr) ElementType() reflect.Type { - return managedClusterUpgradeTypePtrType -} - -func (in *managedClusterUpgradeTypePtr) ToManagedClusterUpgradeTypePtrOutput() ManagedClusterUpgradeTypePtrOutput { - return pulumi.ToOutput(in).(ManagedClusterUpgradeTypePtrOutput) -} - -func (in *managedClusterUpgradeTypePtr) ToManagedClusterUpgradeTypePtrOutputWithContext(ctx context.Context) ManagedClusterUpgradeTypePtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(ManagedClusterUpgradeTypePtrOutput) -} - -// Network dataplane used in the Kubernetes cluster. -type NetworkDataplane string - -const ( - // Use Azure network dataplane. - NetworkDataplaneAzure = NetworkDataplane("azure") - // Use Cilium network dataplane. See [Azure CNI Powered by Cilium](https://learn.microsoft.com/azure/aks/azure-cni-powered-by-cilium) for more information. - NetworkDataplaneCilium = NetworkDataplane("cilium") -) - -func (NetworkDataplane) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkDataplane)(nil)).Elem() -} - -func (e NetworkDataplane) ToNetworkDataplaneOutput() NetworkDataplaneOutput { - return pulumi.ToOutput(e).(NetworkDataplaneOutput) -} - -func (e NetworkDataplane) ToNetworkDataplaneOutputWithContext(ctx context.Context) NetworkDataplaneOutput { - return pulumi.ToOutputWithContext(ctx, e).(NetworkDataplaneOutput) -} - -func (e NetworkDataplane) ToNetworkDataplanePtrOutput() NetworkDataplanePtrOutput { - return e.ToNetworkDataplanePtrOutputWithContext(context.Background()) -} - -func (e NetworkDataplane) ToNetworkDataplanePtrOutputWithContext(ctx context.Context) NetworkDataplanePtrOutput { - return NetworkDataplane(e).ToNetworkDataplaneOutputWithContext(ctx).ToNetworkDataplanePtrOutputWithContext(ctx) -} - -func (e NetworkDataplane) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e NetworkDataplane) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e NetworkDataplane) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e NetworkDataplane) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type NetworkDataplaneOutput struct{ *pulumi.OutputState } - -func (NetworkDataplaneOutput) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkDataplane)(nil)).Elem() -} - -func (o NetworkDataplaneOutput) ToNetworkDataplaneOutput() NetworkDataplaneOutput { - return o -} - -func (o NetworkDataplaneOutput) ToNetworkDataplaneOutputWithContext(ctx context.Context) NetworkDataplaneOutput { - return o -} - -func (o NetworkDataplaneOutput) ToNetworkDataplanePtrOutput() NetworkDataplanePtrOutput { - return o.ToNetworkDataplanePtrOutputWithContext(context.Background()) -} - -func (o NetworkDataplaneOutput) ToNetworkDataplanePtrOutputWithContext(ctx context.Context) NetworkDataplanePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkDataplane) *NetworkDataplane { - return &v - }).(NetworkDataplanePtrOutput) -} - -func (o NetworkDataplaneOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o NetworkDataplaneOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkDataplane) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o NetworkDataplaneOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o NetworkDataplaneOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkDataplane) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type NetworkDataplanePtrOutput struct{ *pulumi.OutputState } - -func (NetworkDataplanePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**NetworkDataplane)(nil)).Elem() -} - -func (o NetworkDataplanePtrOutput) ToNetworkDataplanePtrOutput() NetworkDataplanePtrOutput { - return o -} - -func (o NetworkDataplanePtrOutput) ToNetworkDataplanePtrOutputWithContext(ctx context.Context) NetworkDataplanePtrOutput { - return o -} - -func (o NetworkDataplanePtrOutput) Elem() NetworkDataplaneOutput { - return o.ApplyT(func(v *NetworkDataplane) NetworkDataplane { - if v != nil { - return *v - } - var ret NetworkDataplane - return ret - }).(NetworkDataplaneOutput) -} - -func (o NetworkDataplanePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o NetworkDataplanePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *NetworkDataplane) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// NetworkDataplaneInput is an input type that accepts values of the NetworkDataplane enum -// A concrete instance of `NetworkDataplaneInput` can be one of the following: -// -// NetworkDataplaneAzure -// NetworkDataplaneCilium -type NetworkDataplaneInput interface { - pulumi.Input - - ToNetworkDataplaneOutput() NetworkDataplaneOutput - ToNetworkDataplaneOutputWithContext(context.Context) NetworkDataplaneOutput -} - -var networkDataplanePtrType = reflect.TypeOf((**NetworkDataplane)(nil)).Elem() +var networkDataplanePtrType = reflect.TypeOf((**NetworkDataplane)(nil)).Elem() type NetworkDataplanePtrInput interface { pulumi.Input @@ -3378,6 +3546,8 @@ func (in *networkPluginModePtr) ToNetworkPluginModePtrOutputWithContext(ctx cont type NetworkPolicy string const ( + // Network policies will not be enforced. This is the default value when NetworkPolicy is not specified. + NetworkPolicyNone = NetworkPolicy("none") // Use Calico network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information. NetworkPolicyCalico = NetworkPolicy("calico") // Use Azure network policies. See [differences between Azure and Calico policies](https://docs.microsoft.com/azure/aks/use-network-policies#differences-between-azure-and-calico-policies-and-their-capabilities) for more information. @@ -3508,6 +3678,7 @@ func (o NetworkPolicyPtrOutput) ToStringPtrOutputWithContext(ctx context.Context // NetworkPolicyInput is an input type that accepts values of the NetworkPolicy enum // A concrete instance of `NetworkPolicyInput` can be one of the following: // +// NetworkPolicyNone // NetworkPolicyCalico // NetworkPolicyAzure // NetworkPolicyCilium @@ -3545,6 +3716,180 @@ func (in *networkPolicyPtr) ToNetworkPolicyPtrOutputWithContext(ctx context.Cont return pulumi.ToOutputWithContext(ctx, in).(NetworkPolicyPtrOutput) } +// Manner in which the OS on your nodes is updated. The default is NodeImage. +type NodeOSUpgradeChannel string + +const ( + // No attempt to update your machines OS will be made either by OS or by rolling VHDs. This means you are responsible for your security updates + NodeOSUpgradeChannelNone = NodeOSUpgradeChannel("None") + // OS updates will be applied automatically through the OS built-in patching infrastructure. Newly scaled in machines will be unpatched initially and will be patched at some point by the OS's infrastructure. Behavior of this option depends on the OS in question. Ubuntu and Mariner apply security patches through unattended upgrade roughly once a day around 06:00 UTC. Windows does not apply security patches automatically and so for them this option is equivalent to None till further notice + NodeOSUpgradeChannelUnmanaged = NodeOSUpgradeChannel("Unmanaged") + // AKS will update the nodes with a newly patched VHD containing security fixes and bugfixes on a weekly cadence. With the VHD update machines will be rolling reimaged to that VHD following maintenance windows and surge settings. No extra VHD cost is incurred when choosing this option as AKS hosts the images. + NodeOSUpgradeChannelNodeImage = NodeOSUpgradeChannel("NodeImage") + // AKS downloads and updates the nodes with tested security updates. These updates honor the maintenance window settings and produce a new VHD that is used on new nodes. On some occasions it's not possible to apply the updates in place, in such cases the existing nodes will also be re-imaged to the newly produced VHD in order to apply the changes. This option incurs an extra cost of hosting the new Security Patch VHDs in your resource group for just in time consumption. + NodeOSUpgradeChannelSecurityPatch = NodeOSUpgradeChannel("SecurityPatch") +) + +func (NodeOSUpgradeChannel) ElementType() reflect.Type { + return reflect.TypeOf((*NodeOSUpgradeChannel)(nil)).Elem() +} + +func (e NodeOSUpgradeChannel) ToNodeOSUpgradeChannelOutput() NodeOSUpgradeChannelOutput { + return pulumi.ToOutput(e).(NodeOSUpgradeChannelOutput) +} + +func (e NodeOSUpgradeChannel) ToNodeOSUpgradeChannelOutputWithContext(ctx context.Context) NodeOSUpgradeChannelOutput { + return pulumi.ToOutputWithContext(ctx, e).(NodeOSUpgradeChannelOutput) +} + +func (e NodeOSUpgradeChannel) ToNodeOSUpgradeChannelPtrOutput() NodeOSUpgradeChannelPtrOutput { + return e.ToNodeOSUpgradeChannelPtrOutputWithContext(context.Background()) +} + +func (e NodeOSUpgradeChannel) ToNodeOSUpgradeChannelPtrOutputWithContext(ctx context.Context) NodeOSUpgradeChannelPtrOutput { + return NodeOSUpgradeChannel(e).ToNodeOSUpgradeChannelOutputWithContext(ctx).ToNodeOSUpgradeChannelPtrOutputWithContext(ctx) +} + +func (e NodeOSUpgradeChannel) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e NodeOSUpgradeChannel) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e NodeOSUpgradeChannel) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e NodeOSUpgradeChannel) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type NodeOSUpgradeChannelOutput struct{ *pulumi.OutputState } + +func (NodeOSUpgradeChannelOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NodeOSUpgradeChannel)(nil)).Elem() +} + +func (o NodeOSUpgradeChannelOutput) ToNodeOSUpgradeChannelOutput() NodeOSUpgradeChannelOutput { + return o +} + +func (o NodeOSUpgradeChannelOutput) ToNodeOSUpgradeChannelOutputWithContext(ctx context.Context) NodeOSUpgradeChannelOutput { + return o +} + +func (o NodeOSUpgradeChannelOutput) ToNodeOSUpgradeChannelPtrOutput() NodeOSUpgradeChannelPtrOutput { + return o.ToNodeOSUpgradeChannelPtrOutputWithContext(context.Background()) +} + +func (o NodeOSUpgradeChannelOutput) ToNodeOSUpgradeChannelPtrOutputWithContext(ctx context.Context) NodeOSUpgradeChannelPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NodeOSUpgradeChannel) *NodeOSUpgradeChannel { + return &v + }).(NodeOSUpgradeChannelPtrOutput) +} + +func (o NodeOSUpgradeChannelOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o NodeOSUpgradeChannelOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NodeOSUpgradeChannel) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o NodeOSUpgradeChannelOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o NodeOSUpgradeChannelOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NodeOSUpgradeChannel) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type NodeOSUpgradeChannelPtrOutput struct{ *pulumi.OutputState } + +func (NodeOSUpgradeChannelPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NodeOSUpgradeChannel)(nil)).Elem() +} + +func (o NodeOSUpgradeChannelPtrOutput) ToNodeOSUpgradeChannelPtrOutput() NodeOSUpgradeChannelPtrOutput { + return o +} + +func (o NodeOSUpgradeChannelPtrOutput) ToNodeOSUpgradeChannelPtrOutputWithContext(ctx context.Context) NodeOSUpgradeChannelPtrOutput { + return o +} + +func (o NodeOSUpgradeChannelPtrOutput) Elem() NodeOSUpgradeChannelOutput { + return o.ApplyT(func(v *NodeOSUpgradeChannel) NodeOSUpgradeChannel { + if v != nil { + return *v + } + var ret NodeOSUpgradeChannel + return ret + }).(NodeOSUpgradeChannelOutput) +} + +func (o NodeOSUpgradeChannelPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o NodeOSUpgradeChannelPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *NodeOSUpgradeChannel) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// NodeOSUpgradeChannelInput is an input type that accepts values of the NodeOSUpgradeChannel enum +// A concrete instance of `NodeOSUpgradeChannelInput` can be one of the following: +// +// NodeOSUpgradeChannelNone +// NodeOSUpgradeChannelUnmanaged +// NodeOSUpgradeChannelNodeImage +// NodeOSUpgradeChannelSecurityPatch +type NodeOSUpgradeChannelInput interface { + pulumi.Input + + ToNodeOSUpgradeChannelOutput() NodeOSUpgradeChannelOutput + ToNodeOSUpgradeChannelOutputWithContext(context.Context) NodeOSUpgradeChannelOutput +} + +var nodeOSUpgradeChannelPtrType = reflect.TypeOf((**NodeOSUpgradeChannel)(nil)).Elem() + +type NodeOSUpgradeChannelPtrInput interface { + pulumi.Input + + ToNodeOSUpgradeChannelPtrOutput() NodeOSUpgradeChannelPtrOutput + ToNodeOSUpgradeChannelPtrOutputWithContext(context.Context) NodeOSUpgradeChannelPtrOutput +} + +type nodeOSUpgradeChannelPtr string + +func NodeOSUpgradeChannelPtr(v string) NodeOSUpgradeChannelPtrInput { + return (*nodeOSUpgradeChannelPtr)(&v) +} + +func (*nodeOSUpgradeChannelPtr) ElementType() reflect.Type { + return nodeOSUpgradeChannelPtrType +} + +func (in *nodeOSUpgradeChannelPtr) ToNodeOSUpgradeChannelPtrOutput() NodeOSUpgradeChannelPtrOutput { + return pulumi.ToOutput(in).(NodeOSUpgradeChannelPtrOutput) +} + +func (in *nodeOSUpgradeChannelPtr) ToNodeOSUpgradeChannelPtrOutputWithContext(ctx context.Context) NodeOSUpgradeChannelPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(NodeOSUpgradeChannelPtrOutput) +} + // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). type OSDiskType string @@ -3890,11 +4235,13 @@ func (in *osskuPtr) ToOSSKUPtrOutputWithContext(ctx context.Context) OSSKUPtrOut return pulumi.ToOutputWithContext(ctx, in).(OSSKUPtrOutput) } -// OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. +// The operating system type. The default is Linux. type OSType string const ( - OSTypeLinux = OSType("Linux") + // Use Linux. + OSTypeLinux = OSType("Linux") + // Use Windows. OSTypeWindows = OSType("Windows") ) @@ -4056,525 +4403,131 @@ func (in *ostypePtr) ToOSTypePtrOutputWithContext(ctx context.Context) OSTypePtr return pulumi.ToOutputWithContext(ctx, in).(OSTypePtrOutput) } -// Define the role of the AgentPoolProfile. -type OpenShiftAgentPoolProfileRole string - -const ( - OpenShiftAgentPoolProfileRoleCompute = OpenShiftAgentPoolProfileRole("compute") - OpenShiftAgentPoolProfileRoleInfra = OpenShiftAgentPoolProfileRole("infra") -) - -func (OpenShiftAgentPoolProfileRole) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftAgentPoolProfileRole)(nil)).Elem() -} - -func (e OpenShiftAgentPoolProfileRole) ToOpenShiftAgentPoolProfileRoleOutput() OpenShiftAgentPoolProfileRoleOutput { - return pulumi.ToOutput(e).(OpenShiftAgentPoolProfileRoleOutput) -} - -func (e OpenShiftAgentPoolProfileRole) ToOpenShiftAgentPoolProfileRoleOutputWithContext(ctx context.Context) OpenShiftAgentPoolProfileRoleOutput { - return pulumi.ToOutputWithContext(ctx, e).(OpenShiftAgentPoolProfileRoleOutput) -} - -func (e OpenShiftAgentPoolProfileRole) ToOpenShiftAgentPoolProfileRolePtrOutput() OpenShiftAgentPoolProfileRolePtrOutput { - return e.ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(context.Background()) -} - -func (e OpenShiftAgentPoolProfileRole) ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(ctx context.Context) OpenShiftAgentPoolProfileRolePtrOutput { - return OpenShiftAgentPoolProfileRole(e).ToOpenShiftAgentPoolProfileRoleOutputWithContext(ctx).ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(ctx) -} - -func (e OpenShiftAgentPoolProfileRole) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e OpenShiftAgentPoolProfileRole) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e OpenShiftAgentPoolProfileRole) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e OpenShiftAgentPoolProfileRole) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type OpenShiftAgentPoolProfileRoleOutput struct{ *pulumi.OutputState } - -func (OpenShiftAgentPoolProfileRoleOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftAgentPoolProfileRole)(nil)).Elem() -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToOpenShiftAgentPoolProfileRoleOutput() OpenShiftAgentPoolProfileRoleOutput { - return o -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToOpenShiftAgentPoolProfileRoleOutputWithContext(ctx context.Context) OpenShiftAgentPoolProfileRoleOutput { - return o -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToOpenShiftAgentPoolProfileRolePtrOutput() OpenShiftAgentPoolProfileRolePtrOutput { - return o.ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(context.Background()) -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(ctx context.Context) OpenShiftAgentPoolProfileRolePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftAgentPoolProfileRole) *OpenShiftAgentPoolProfileRole { - return &v - }).(OpenShiftAgentPoolProfileRolePtrOutput) -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e OpenShiftAgentPoolProfileRole) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o OpenShiftAgentPoolProfileRoleOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e OpenShiftAgentPoolProfileRole) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type OpenShiftAgentPoolProfileRolePtrOutput struct{ *pulumi.OutputState } - -func (OpenShiftAgentPoolProfileRolePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftAgentPoolProfileRole)(nil)).Elem() -} - -func (o OpenShiftAgentPoolProfileRolePtrOutput) ToOpenShiftAgentPoolProfileRolePtrOutput() OpenShiftAgentPoolProfileRolePtrOutput { - return o -} - -func (o OpenShiftAgentPoolProfileRolePtrOutput) ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(ctx context.Context) OpenShiftAgentPoolProfileRolePtrOutput { - return o -} - -func (o OpenShiftAgentPoolProfileRolePtrOutput) Elem() OpenShiftAgentPoolProfileRoleOutput { - return o.ApplyT(func(v *OpenShiftAgentPoolProfileRole) OpenShiftAgentPoolProfileRole { - if v != nil { - return *v - } - var ret OpenShiftAgentPoolProfileRole - return ret - }).(OpenShiftAgentPoolProfileRoleOutput) -} - -func (o OpenShiftAgentPoolProfileRolePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o OpenShiftAgentPoolProfileRolePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *OpenShiftAgentPoolProfileRole) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// OpenShiftAgentPoolProfileRoleInput is an input type that accepts values of the OpenShiftAgentPoolProfileRole enum -// A concrete instance of `OpenShiftAgentPoolProfileRoleInput` can be one of the following: -// -// OpenShiftAgentPoolProfileRoleCompute -// OpenShiftAgentPoolProfileRoleInfra -type OpenShiftAgentPoolProfileRoleInput interface { - pulumi.Input - - ToOpenShiftAgentPoolProfileRoleOutput() OpenShiftAgentPoolProfileRoleOutput - ToOpenShiftAgentPoolProfileRoleOutputWithContext(context.Context) OpenShiftAgentPoolProfileRoleOutput -} - -var openShiftAgentPoolProfileRolePtrType = reflect.TypeOf((**OpenShiftAgentPoolProfileRole)(nil)).Elem() - -type OpenShiftAgentPoolProfileRolePtrInput interface { - pulumi.Input - - ToOpenShiftAgentPoolProfileRolePtrOutput() OpenShiftAgentPoolProfileRolePtrOutput - ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(context.Context) OpenShiftAgentPoolProfileRolePtrOutput -} - -type openShiftAgentPoolProfileRolePtr string - -func OpenShiftAgentPoolProfileRolePtr(v string) OpenShiftAgentPoolProfileRolePtrInput { - return (*openShiftAgentPoolProfileRolePtr)(&v) -} - -func (*openShiftAgentPoolProfileRolePtr) ElementType() reflect.Type { - return openShiftAgentPoolProfileRolePtrType -} - -func (in *openShiftAgentPoolProfileRolePtr) ToOpenShiftAgentPoolProfileRolePtrOutput() OpenShiftAgentPoolProfileRolePtrOutput { - return pulumi.ToOutput(in).(OpenShiftAgentPoolProfileRolePtrOutput) -} - -func (in *openShiftAgentPoolProfileRolePtr) ToOpenShiftAgentPoolProfileRolePtrOutputWithContext(ctx context.Context) OpenShiftAgentPoolProfileRolePtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(OpenShiftAgentPoolProfileRolePtrOutput) -} - -// Size of agent VMs. -type OpenShiftContainerServiceVMSize string - -const ( - OpenShiftContainerServiceVMSize_Standard_D2s_v3 = OpenShiftContainerServiceVMSize("Standard_D2s_v3") - OpenShiftContainerServiceVMSize_Standard_D4s_v3 = OpenShiftContainerServiceVMSize("Standard_D4s_v3") - OpenShiftContainerServiceVMSize_Standard_D8s_v3 = OpenShiftContainerServiceVMSize("Standard_D8s_v3") - OpenShiftContainerServiceVMSize_Standard_D16s_v3 = OpenShiftContainerServiceVMSize("Standard_D16s_v3") - OpenShiftContainerServiceVMSize_Standard_D32s_v3 = OpenShiftContainerServiceVMSize("Standard_D32s_v3") - OpenShiftContainerServiceVMSize_Standard_D64s_v3 = OpenShiftContainerServiceVMSize("Standard_D64s_v3") - OpenShiftContainerServiceVMSize_Standard_DS4_v2 = OpenShiftContainerServiceVMSize("Standard_DS4_v2") - OpenShiftContainerServiceVMSize_Standard_DS5_v2 = OpenShiftContainerServiceVMSize("Standard_DS5_v2") - OpenShiftContainerServiceVMSize_Standard_F8s_v2 = OpenShiftContainerServiceVMSize("Standard_F8s_v2") - OpenShiftContainerServiceVMSize_Standard_F16s_v2 = OpenShiftContainerServiceVMSize("Standard_F16s_v2") - OpenShiftContainerServiceVMSize_Standard_F32s_v2 = OpenShiftContainerServiceVMSize("Standard_F32s_v2") - OpenShiftContainerServiceVMSize_Standard_F64s_v2 = OpenShiftContainerServiceVMSize("Standard_F64s_v2") - OpenShiftContainerServiceVMSize_Standard_F72s_v2 = OpenShiftContainerServiceVMSize("Standard_F72s_v2") - OpenShiftContainerServiceVMSize_Standard_F8s = OpenShiftContainerServiceVMSize("Standard_F8s") - OpenShiftContainerServiceVMSize_Standard_F16s = OpenShiftContainerServiceVMSize("Standard_F16s") - OpenShiftContainerServiceVMSize_Standard_E4s_v3 = OpenShiftContainerServiceVMSize("Standard_E4s_v3") - OpenShiftContainerServiceVMSize_Standard_E8s_v3 = OpenShiftContainerServiceVMSize("Standard_E8s_v3") - OpenShiftContainerServiceVMSize_Standard_E16s_v3 = OpenShiftContainerServiceVMSize("Standard_E16s_v3") - OpenShiftContainerServiceVMSize_Standard_E20s_v3 = OpenShiftContainerServiceVMSize("Standard_E20s_v3") - OpenShiftContainerServiceVMSize_Standard_E32s_v3 = OpenShiftContainerServiceVMSize("Standard_E32s_v3") - OpenShiftContainerServiceVMSize_Standard_E64s_v3 = OpenShiftContainerServiceVMSize("Standard_E64s_v3") - OpenShiftContainerServiceVMSize_Standard_GS2 = OpenShiftContainerServiceVMSize("Standard_GS2") - OpenShiftContainerServiceVMSize_Standard_GS3 = OpenShiftContainerServiceVMSize("Standard_GS3") - OpenShiftContainerServiceVMSize_Standard_GS4 = OpenShiftContainerServiceVMSize("Standard_GS4") - OpenShiftContainerServiceVMSize_Standard_GS5 = OpenShiftContainerServiceVMSize("Standard_GS5") - OpenShiftContainerServiceVMSize_Standard_DS12_v2 = OpenShiftContainerServiceVMSize("Standard_DS12_v2") - OpenShiftContainerServiceVMSize_Standard_DS13_v2 = OpenShiftContainerServiceVMSize("Standard_DS13_v2") - OpenShiftContainerServiceVMSize_Standard_DS14_v2 = OpenShiftContainerServiceVMSize("Standard_DS14_v2") - OpenShiftContainerServiceVMSize_Standard_DS15_v2 = OpenShiftContainerServiceVMSize("Standard_DS15_v2") - OpenShiftContainerServiceVMSize_Standard_L4s = OpenShiftContainerServiceVMSize("Standard_L4s") - OpenShiftContainerServiceVMSize_Standard_L8s = OpenShiftContainerServiceVMSize("Standard_L8s") - OpenShiftContainerServiceVMSize_Standard_L16s = OpenShiftContainerServiceVMSize("Standard_L16s") - OpenShiftContainerServiceVMSize_Standard_L32s = OpenShiftContainerServiceVMSize("Standard_L32s") -) - -func (OpenShiftContainerServiceVMSize) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftContainerServiceVMSize)(nil)).Elem() -} - -func (e OpenShiftContainerServiceVMSize) ToOpenShiftContainerServiceVMSizeOutput() OpenShiftContainerServiceVMSizeOutput { - return pulumi.ToOutput(e).(OpenShiftContainerServiceVMSizeOutput) -} - -func (e OpenShiftContainerServiceVMSize) ToOpenShiftContainerServiceVMSizeOutputWithContext(ctx context.Context) OpenShiftContainerServiceVMSizeOutput { - return pulumi.ToOutputWithContext(ctx, e).(OpenShiftContainerServiceVMSizeOutput) -} - -func (e OpenShiftContainerServiceVMSize) ToOpenShiftContainerServiceVMSizePtrOutput() OpenShiftContainerServiceVMSizePtrOutput { - return e.ToOpenShiftContainerServiceVMSizePtrOutputWithContext(context.Background()) -} - -func (e OpenShiftContainerServiceVMSize) ToOpenShiftContainerServiceVMSizePtrOutputWithContext(ctx context.Context) OpenShiftContainerServiceVMSizePtrOutput { - return OpenShiftContainerServiceVMSize(e).ToOpenShiftContainerServiceVMSizeOutputWithContext(ctx).ToOpenShiftContainerServiceVMSizePtrOutputWithContext(ctx) -} - -func (e OpenShiftContainerServiceVMSize) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e OpenShiftContainerServiceVMSize) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e OpenShiftContainerServiceVMSize) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e OpenShiftContainerServiceVMSize) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type OpenShiftContainerServiceVMSizeOutput struct{ *pulumi.OutputState } - -func (OpenShiftContainerServiceVMSizeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftContainerServiceVMSize)(nil)).Elem() -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToOpenShiftContainerServiceVMSizeOutput() OpenShiftContainerServiceVMSizeOutput { - return o -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToOpenShiftContainerServiceVMSizeOutputWithContext(ctx context.Context) OpenShiftContainerServiceVMSizeOutput { - return o -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToOpenShiftContainerServiceVMSizePtrOutput() OpenShiftContainerServiceVMSizePtrOutput { - return o.ToOpenShiftContainerServiceVMSizePtrOutputWithContext(context.Background()) -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToOpenShiftContainerServiceVMSizePtrOutputWithContext(ctx context.Context) OpenShiftContainerServiceVMSizePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftContainerServiceVMSize) *OpenShiftContainerServiceVMSize { - return &v - }).(OpenShiftContainerServiceVMSizePtrOutput) -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e OpenShiftContainerServiceVMSize) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o OpenShiftContainerServiceVMSizeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e OpenShiftContainerServiceVMSize) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type OpenShiftContainerServiceVMSizePtrOutput struct{ *pulumi.OutputState } - -func (OpenShiftContainerServiceVMSizePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftContainerServiceVMSize)(nil)).Elem() -} - -func (o OpenShiftContainerServiceVMSizePtrOutput) ToOpenShiftContainerServiceVMSizePtrOutput() OpenShiftContainerServiceVMSizePtrOutput { - return o -} - -func (o OpenShiftContainerServiceVMSizePtrOutput) ToOpenShiftContainerServiceVMSizePtrOutputWithContext(ctx context.Context) OpenShiftContainerServiceVMSizePtrOutput { - return o -} - -func (o OpenShiftContainerServiceVMSizePtrOutput) Elem() OpenShiftContainerServiceVMSizeOutput { - return o.ApplyT(func(v *OpenShiftContainerServiceVMSize) OpenShiftContainerServiceVMSize { - if v != nil { - return *v - } - var ret OpenShiftContainerServiceVMSize - return ret - }).(OpenShiftContainerServiceVMSizeOutput) -} - -func (o OpenShiftContainerServiceVMSizePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o OpenShiftContainerServiceVMSizePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *OpenShiftContainerServiceVMSize) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// OpenShiftContainerServiceVMSizeInput is an input type that accepts values of the OpenShiftContainerServiceVMSize enum -// A concrete instance of `OpenShiftContainerServiceVMSizeInput` can be one of the following: -// -// OpenShiftContainerServiceVMSize_Standard_D2s_v3 -// OpenShiftContainerServiceVMSize_Standard_D4s_v3 -// OpenShiftContainerServiceVMSize_Standard_D8s_v3 -// OpenShiftContainerServiceVMSize_Standard_D16s_v3 -// OpenShiftContainerServiceVMSize_Standard_D32s_v3 -// OpenShiftContainerServiceVMSize_Standard_D64s_v3 -// OpenShiftContainerServiceVMSize_Standard_DS4_v2 -// OpenShiftContainerServiceVMSize_Standard_DS5_v2 -// OpenShiftContainerServiceVMSize_Standard_F8s_v2 -// OpenShiftContainerServiceVMSize_Standard_F16s_v2 -// OpenShiftContainerServiceVMSize_Standard_F32s_v2 -// OpenShiftContainerServiceVMSize_Standard_F64s_v2 -// OpenShiftContainerServiceVMSize_Standard_F72s_v2 -// OpenShiftContainerServiceVMSize_Standard_F8s -// OpenShiftContainerServiceVMSize_Standard_F16s -// OpenShiftContainerServiceVMSize_Standard_E4s_v3 -// OpenShiftContainerServiceVMSize_Standard_E8s_v3 -// OpenShiftContainerServiceVMSize_Standard_E16s_v3 -// OpenShiftContainerServiceVMSize_Standard_E20s_v3 -// OpenShiftContainerServiceVMSize_Standard_E32s_v3 -// OpenShiftContainerServiceVMSize_Standard_E64s_v3 -// OpenShiftContainerServiceVMSize_Standard_GS2 -// OpenShiftContainerServiceVMSize_Standard_GS3 -// OpenShiftContainerServiceVMSize_Standard_GS4 -// OpenShiftContainerServiceVMSize_Standard_GS5 -// OpenShiftContainerServiceVMSize_Standard_DS12_v2 -// OpenShiftContainerServiceVMSize_Standard_DS13_v2 -// OpenShiftContainerServiceVMSize_Standard_DS14_v2 -// OpenShiftContainerServiceVMSize_Standard_DS15_v2 -// OpenShiftContainerServiceVMSize_Standard_L4s -// OpenShiftContainerServiceVMSize_Standard_L8s -// OpenShiftContainerServiceVMSize_Standard_L16s -// OpenShiftContainerServiceVMSize_Standard_L32s -type OpenShiftContainerServiceVMSizeInput interface { - pulumi.Input - - ToOpenShiftContainerServiceVMSizeOutput() OpenShiftContainerServiceVMSizeOutput - ToOpenShiftContainerServiceVMSizeOutputWithContext(context.Context) OpenShiftContainerServiceVMSizeOutput -} - -var openShiftContainerServiceVMSizePtrType = reflect.TypeOf((**OpenShiftContainerServiceVMSize)(nil)).Elem() - -type OpenShiftContainerServiceVMSizePtrInput interface { - pulumi.Input - - ToOpenShiftContainerServiceVMSizePtrOutput() OpenShiftContainerServiceVMSizePtrOutput - ToOpenShiftContainerServiceVMSizePtrOutputWithContext(context.Context) OpenShiftContainerServiceVMSizePtrOutput -} - -type openShiftContainerServiceVMSizePtr string - -func OpenShiftContainerServiceVMSizePtr(v string) OpenShiftContainerServiceVMSizePtrInput { - return (*openShiftContainerServiceVMSizePtr)(&v) -} - -func (*openShiftContainerServiceVMSizePtr) ElementType() reflect.Type { - return openShiftContainerServiceVMSizePtrType -} - -func (in *openShiftContainerServiceVMSizePtr) ToOpenShiftContainerServiceVMSizePtrOutput() OpenShiftContainerServiceVMSizePtrOutput { - return pulumi.ToOutput(in).(OpenShiftContainerServiceVMSizePtrOutput) -} - -func (in *openShiftContainerServiceVMSizePtr) ToOpenShiftContainerServiceVMSizePtrOutputWithContext(ctx context.Context) OpenShiftContainerServiceVMSizePtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(OpenShiftContainerServiceVMSizePtrOutput) -} - -// operator represents a key's relationship to a set of values. Valid operators are In and NotIn -type Operator string +// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). +type OutboundType string const ( - // The value of the key should be in the given list. - OperatorIn = Operator("In") - // The value of the key should not be in the given list. - OperatorNotIn = Operator("NotIn") - // The value of the key should exist. - OperatorExists = Operator("Exists") - // The value of the key should not exist. - OperatorDoesNotExist = Operator("DoesNotExist") + // The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type 'loadBalancer'. For more information see [outbound type loadbalancer](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-loadbalancer). + OutboundTypeLoadBalancer = OutboundType("loadBalancer") + // Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see [outbound type userDefinedRouting](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-userdefinedrouting). + OutboundTypeUserDefinedRouting = OutboundType("userDefinedRouting") + // The AKS-managed NAT gateway is used for egress. + OutboundTypeManagedNATGateway = OutboundType("managedNATGateway") + // The user-assigned NAT gateway associated to the cluster subnet is used for egress. This is an advanced scenario and requires proper network configuration. + OutboundTypeUserAssignedNATGateway = OutboundType("userAssignedNATGateway") ) -func (Operator) ElementType() reflect.Type { - return reflect.TypeOf((*Operator)(nil)).Elem() +func (OutboundType) ElementType() reflect.Type { + return reflect.TypeOf((*OutboundType)(nil)).Elem() } -func (e Operator) ToOperatorOutput() OperatorOutput { - return pulumi.ToOutput(e).(OperatorOutput) +func (e OutboundType) ToOutboundTypeOutput() OutboundTypeOutput { + return pulumi.ToOutput(e).(OutboundTypeOutput) } -func (e Operator) ToOperatorOutputWithContext(ctx context.Context) OperatorOutput { - return pulumi.ToOutputWithContext(ctx, e).(OperatorOutput) +func (e OutboundType) ToOutboundTypeOutputWithContext(ctx context.Context) OutboundTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(OutboundTypeOutput) } -func (e Operator) ToOperatorPtrOutput() OperatorPtrOutput { - return e.ToOperatorPtrOutputWithContext(context.Background()) +func (e OutboundType) ToOutboundTypePtrOutput() OutboundTypePtrOutput { + return e.ToOutboundTypePtrOutputWithContext(context.Background()) } -func (e Operator) ToOperatorPtrOutputWithContext(ctx context.Context) OperatorPtrOutput { - return Operator(e).ToOperatorOutputWithContext(ctx).ToOperatorPtrOutputWithContext(ctx) +func (e OutboundType) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { + return OutboundType(e).ToOutboundTypeOutputWithContext(ctx).ToOutboundTypePtrOutputWithContext(ctx) } -func (e Operator) ToStringOutput() pulumi.StringOutput { +func (e OutboundType) ToStringOutput() pulumi.StringOutput { return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) } -func (e Operator) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { +func (e OutboundType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) } -func (e Operator) ToStringPtrOutput() pulumi.StringPtrOutput { +func (e OutboundType) ToStringPtrOutput() pulumi.StringPtrOutput { return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) } -func (e Operator) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { +func (e OutboundType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) } -type OperatorOutput struct{ *pulumi.OutputState } +type OutboundTypeOutput struct{ *pulumi.OutputState } -func (OperatorOutput) ElementType() reflect.Type { - return reflect.TypeOf((*Operator)(nil)).Elem() +func (OutboundTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*OutboundType)(nil)).Elem() } -func (o OperatorOutput) ToOperatorOutput() OperatorOutput { +func (o OutboundTypeOutput) ToOutboundTypeOutput() OutboundTypeOutput { return o } -func (o OperatorOutput) ToOperatorOutputWithContext(ctx context.Context) OperatorOutput { +func (o OutboundTypeOutput) ToOutboundTypeOutputWithContext(ctx context.Context) OutboundTypeOutput { return o } -func (o OperatorOutput) ToOperatorPtrOutput() OperatorPtrOutput { - return o.ToOperatorPtrOutputWithContext(context.Background()) +func (o OutboundTypeOutput) ToOutboundTypePtrOutput() OutboundTypePtrOutput { + return o.ToOutboundTypePtrOutputWithContext(context.Background()) } -func (o OperatorOutput) ToOperatorPtrOutputWithContext(ctx context.Context) OperatorPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v Operator) *Operator { +func (o OutboundTypeOutput) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v OutboundType) *OutboundType { return &v - }).(OperatorPtrOutput) + }).(OutboundTypePtrOutput) } -func (o OperatorOutput) ToStringOutput() pulumi.StringOutput { +func (o OutboundTypeOutput) ToStringOutput() pulumi.StringOutput { return o.ToStringOutputWithContext(context.Background()) } -func (o OperatorOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e Operator) string { +func (o OutboundTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e OutboundType) string { return string(e) }).(pulumi.StringOutput) } -func (o OperatorOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o OutboundTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o OperatorOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e Operator) *string { +func (o OutboundTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e OutboundType) *string { v := string(e) return &v }).(pulumi.StringPtrOutput) } -type OperatorPtrOutput struct{ *pulumi.OutputState } +type OutboundTypePtrOutput struct{ *pulumi.OutputState } -func (OperatorPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**Operator)(nil)).Elem() +func (OutboundTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**OutboundType)(nil)).Elem() } -func (o OperatorPtrOutput) ToOperatorPtrOutput() OperatorPtrOutput { +func (o OutboundTypePtrOutput) ToOutboundTypePtrOutput() OutboundTypePtrOutput { return o } -func (o OperatorPtrOutput) ToOperatorPtrOutputWithContext(ctx context.Context) OperatorPtrOutput { +func (o OutboundTypePtrOutput) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { return o } -func (o OperatorPtrOutput) Elem() OperatorOutput { - return o.ApplyT(func(v *Operator) Operator { +func (o OutboundTypePtrOutput) Elem() OutboundTypeOutput { + return o.ApplyT(func(v *OutboundType) OutboundType { if v != nil { return *v } - var ret Operator + var ret OutboundType return ret - }).(OperatorOutput) + }).(OutboundTypeOutput) } -func (o OperatorPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o OutboundTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o OperatorPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *Operator) *string { +func (o OutboundTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *OutboundType) *string { if e == nil { return nil } @@ -4583,172 +4536,168 @@ func (o OperatorPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pul }).(pulumi.StringPtrOutput) } -// OperatorInput is an input type that accepts values of the Operator enum -// A concrete instance of `OperatorInput` can be one of the following: +// OutboundTypeInput is an input type that accepts values of the OutboundType enum +// A concrete instance of `OutboundTypeInput` can be one of the following: // -// OperatorIn -// OperatorNotIn -// OperatorExists -// OperatorDoesNotExist -type OperatorInput interface { +// OutboundTypeLoadBalancer +// OutboundTypeUserDefinedRouting +// OutboundTypeManagedNATGateway +// OutboundTypeUserAssignedNATGateway +type OutboundTypeInput interface { pulumi.Input - ToOperatorOutput() OperatorOutput - ToOperatorOutputWithContext(context.Context) OperatorOutput + ToOutboundTypeOutput() OutboundTypeOutput + ToOutboundTypeOutputWithContext(context.Context) OutboundTypeOutput } -var operatorPtrType = reflect.TypeOf((**Operator)(nil)).Elem() +var outboundTypePtrType = reflect.TypeOf((**OutboundType)(nil)).Elem() -type OperatorPtrInput interface { +type OutboundTypePtrInput interface { pulumi.Input - ToOperatorPtrOutput() OperatorPtrOutput - ToOperatorPtrOutputWithContext(context.Context) OperatorPtrOutput + ToOutboundTypePtrOutput() OutboundTypePtrOutput + ToOutboundTypePtrOutputWithContext(context.Context) OutboundTypePtrOutput } -type operatorPtr string +type outboundTypePtr string -func OperatorPtr(v string) OperatorPtrInput { - return (*operatorPtr)(&v) +func OutboundTypePtr(v string) OutboundTypePtrInput { + return (*outboundTypePtr)(&v) } -func (*operatorPtr) ElementType() reflect.Type { - return operatorPtrType +func (*outboundTypePtr) ElementType() reflect.Type { + return outboundTypePtrType } -func (in *operatorPtr) ToOperatorPtrOutput() OperatorPtrOutput { - return pulumi.ToOutput(in).(OperatorPtrOutput) +func (in *outboundTypePtr) ToOutboundTypePtrOutput() OutboundTypePtrOutput { + return pulumi.ToOutput(in).(OutboundTypePtrOutput) } -func (in *operatorPtr) ToOperatorPtrOutputWithContext(ctx context.Context) OperatorPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(OperatorPtrOutput) +func (in *outboundTypePtr) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(OutboundTypePtrOutput) } -// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). -type OutboundType string +// The network protocol of the port. +type Protocol string const ( - // The load balancer is used for egress through an AKS assigned public IP. This supports Kubernetes services of type 'loadBalancer'. For more information see [outbound type loadbalancer](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-loadbalancer). - OutboundTypeLoadBalancer = OutboundType("loadBalancer") - // Egress paths must be defined by the user. This is an advanced scenario and requires proper network configuration. For more information see [outbound type userDefinedRouting](https://docs.microsoft.com/azure/aks/egress-outboundtype#outbound-type-of-userdefinedrouting). - OutboundTypeUserDefinedRouting = OutboundType("userDefinedRouting") - // The AKS-managed NAT gateway is used for egress. - OutboundTypeManagedNATGateway = OutboundType("managedNATGateway") - // The user-assigned NAT gateway associated to the cluster subnet is used for egress. This is an advanced scenario and requires proper network configuration. - OutboundTypeUserAssignedNATGateway = OutboundType("userAssignedNATGateway") + // TCP protocol. + ProtocolTCP = Protocol("TCP") + // UDP protocol. + ProtocolUDP = Protocol("UDP") ) -func (OutboundType) ElementType() reflect.Type { - return reflect.TypeOf((*OutboundType)(nil)).Elem() +func (Protocol) ElementType() reflect.Type { + return reflect.TypeOf((*Protocol)(nil)).Elem() } -func (e OutboundType) ToOutboundTypeOutput() OutboundTypeOutput { - return pulumi.ToOutput(e).(OutboundTypeOutput) +func (e Protocol) ToProtocolOutput() ProtocolOutput { + return pulumi.ToOutput(e).(ProtocolOutput) } -func (e OutboundType) ToOutboundTypeOutputWithContext(ctx context.Context) OutboundTypeOutput { - return pulumi.ToOutputWithContext(ctx, e).(OutboundTypeOutput) +func (e Protocol) ToProtocolOutputWithContext(ctx context.Context) ProtocolOutput { + return pulumi.ToOutputWithContext(ctx, e).(ProtocolOutput) } -func (e OutboundType) ToOutboundTypePtrOutput() OutboundTypePtrOutput { - return e.ToOutboundTypePtrOutputWithContext(context.Background()) +func (e Protocol) ToProtocolPtrOutput() ProtocolPtrOutput { + return e.ToProtocolPtrOutputWithContext(context.Background()) } -func (e OutboundType) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { - return OutboundType(e).ToOutboundTypeOutputWithContext(ctx).ToOutboundTypePtrOutputWithContext(ctx) +func (e Protocol) ToProtocolPtrOutputWithContext(ctx context.Context) ProtocolPtrOutput { + return Protocol(e).ToProtocolOutputWithContext(ctx).ToProtocolPtrOutputWithContext(ctx) } -func (e OutboundType) ToStringOutput() pulumi.StringOutput { +func (e Protocol) ToStringOutput() pulumi.StringOutput { return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) } -func (e OutboundType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { +func (e Protocol) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) } -func (e OutboundType) ToStringPtrOutput() pulumi.StringPtrOutput { +func (e Protocol) ToStringPtrOutput() pulumi.StringPtrOutput { return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) } -func (e OutboundType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { +func (e Protocol) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) } -type OutboundTypeOutput struct{ *pulumi.OutputState } +type ProtocolOutput struct{ *pulumi.OutputState } -func (OutboundTypeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OutboundType)(nil)).Elem() +func (ProtocolOutput) ElementType() reflect.Type { + return reflect.TypeOf((*Protocol)(nil)).Elem() } -func (o OutboundTypeOutput) ToOutboundTypeOutput() OutboundTypeOutput { +func (o ProtocolOutput) ToProtocolOutput() ProtocolOutput { return o } -func (o OutboundTypeOutput) ToOutboundTypeOutputWithContext(ctx context.Context) OutboundTypeOutput { +func (o ProtocolOutput) ToProtocolOutputWithContext(ctx context.Context) ProtocolOutput { return o } -func (o OutboundTypeOutput) ToOutboundTypePtrOutput() OutboundTypePtrOutput { - return o.ToOutboundTypePtrOutputWithContext(context.Background()) +func (o ProtocolOutput) ToProtocolPtrOutput() ProtocolPtrOutput { + return o.ToProtocolPtrOutputWithContext(context.Background()) } -func (o OutboundTypeOutput) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OutboundType) *OutboundType { +func (o ProtocolOutput) ToProtocolPtrOutputWithContext(ctx context.Context) ProtocolPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v Protocol) *Protocol { return &v - }).(OutboundTypePtrOutput) + }).(ProtocolPtrOutput) } -func (o OutboundTypeOutput) ToStringOutput() pulumi.StringOutput { +func (o ProtocolOutput) ToStringOutput() pulumi.StringOutput { return o.ToStringOutputWithContext(context.Background()) } -func (o OutboundTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e OutboundType) string { +func (o ProtocolOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e Protocol) string { return string(e) }).(pulumi.StringOutput) } -func (o OutboundTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o ProtocolOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o OutboundTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e OutboundType) *string { +func (o ProtocolOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e Protocol) *string { v := string(e) return &v }).(pulumi.StringPtrOutput) } -type OutboundTypePtrOutput struct{ *pulumi.OutputState } +type ProtocolPtrOutput struct{ *pulumi.OutputState } -func (OutboundTypePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OutboundType)(nil)).Elem() +func (ProtocolPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Protocol)(nil)).Elem() } -func (o OutboundTypePtrOutput) ToOutboundTypePtrOutput() OutboundTypePtrOutput { +func (o ProtocolPtrOutput) ToProtocolPtrOutput() ProtocolPtrOutput { return o } -func (o OutboundTypePtrOutput) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { +func (o ProtocolPtrOutput) ToProtocolPtrOutputWithContext(ctx context.Context) ProtocolPtrOutput { return o } -func (o OutboundTypePtrOutput) Elem() OutboundTypeOutput { - return o.ApplyT(func(v *OutboundType) OutboundType { +func (o ProtocolPtrOutput) Elem() ProtocolOutput { + return o.ApplyT(func(v *Protocol) Protocol { if v != nil { return *v } - var ret OutboundType + var ret Protocol return ret - }).(OutboundTypeOutput) + }).(ProtocolOutput) } -func (o OutboundTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o ProtocolPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o OutboundTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *OutboundType) *string { +func (o ProtocolPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *Protocol) *string { if e == nil { return nil } @@ -4757,45 +4706,43 @@ func (o OutboundTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) }).(pulumi.StringPtrOutput) } -// OutboundTypeInput is an input type that accepts values of the OutboundType enum -// A concrete instance of `OutboundTypeInput` can be one of the following: +// ProtocolInput is an input type that accepts values of the Protocol enum +// A concrete instance of `ProtocolInput` can be one of the following: // -// OutboundTypeLoadBalancer -// OutboundTypeUserDefinedRouting -// OutboundTypeManagedNATGateway -// OutboundTypeUserAssignedNATGateway -type OutboundTypeInput interface { +// ProtocolTCP +// ProtocolUDP +type ProtocolInput interface { pulumi.Input - ToOutboundTypeOutput() OutboundTypeOutput - ToOutboundTypeOutputWithContext(context.Context) OutboundTypeOutput + ToProtocolOutput() ProtocolOutput + ToProtocolOutputWithContext(context.Context) ProtocolOutput } -var outboundTypePtrType = reflect.TypeOf((**OutboundType)(nil)).Elem() +var protocolPtrType = reflect.TypeOf((**Protocol)(nil)).Elem() -type OutboundTypePtrInput interface { +type ProtocolPtrInput interface { pulumi.Input - ToOutboundTypePtrOutput() OutboundTypePtrOutput - ToOutboundTypePtrOutputWithContext(context.Context) OutboundTypePtrOutput + ToProtocolPtrOutput() ProtocolPtrOutput + ToProtocolPtrOutputWithContext(context.Context) ProtocolPtrOutput } -type outboundTypePtr string +type protocolPtr string -func OutboundTypePtr(v string) OutboundTypePtrInput { - return (*outboundTypePtr)(&v) +func ProtocolPtr(v string) ProtocolPtrInput { + return (*protocolPtr)(&v) } -func (*outboundTypePtr) ElementType() reflect.Type { - return outboundTypePtrType +func (*protocolPtr) ElementType() reflect.Type { + return protocolPtrType } -func (in *outboundTypePtr) ToOutboundTypePtrOutput() OutboundTypePtrOutput { - return pulumi.ToOutput(in).(OutboundTypePtrOutput) +func (in *protocolPtr) ToProtocolPtrOutput() ProtocolPtrOutput { + return pulumi.ToOutput(in).(ProtocolPtrOutput) } -func (in *outboundTypePtr) ToOutboundTypePtrOutputWithContext(ctx context.Context) OutboundTypePtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(OutboundTypePtrOutput) +func (in *protocolPtr) ToProtocolPtrOutputWithContext(ctx context.Context) ProtocolPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ProtocolPtrOutput) } // Allow or deny public network access for AKS @@ -5639,6 +5586,174 @@ func (in *scaleSetPriorityPtr) ToScaleSetPriorityPtrOutputWithContext(ctx contex return pulumi.ToOutputWithContext(ctx, in).(ScaleSetPriorityPtrOutput) } +// Mode of the service mesh. +type ServiceMeshMode string + +const ( + // Istio deployed as an AKS addon. + ServiceMeshModeIstio = ServiceMeshMode("Istio") + // Mesh is disabled. + ServiceMeshModeDisabled = ServiceMeshMode("Disabled") +) + +func (ServiceMeshMode) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceMeshMode)(nil)).Elem() +} + +func (e ServiceMeshMode) ToServiceMeshModeOutput() ServiceMeshModeOutput { + return pulumi.ToOutput(e).(ServiceMeshModeOutput) +} + +func (e ServiceMeshMode) ToServiceMeshModeOutputWithContext(ctx context.Context) ServiceMeshModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(ServiceMeshModeOutput) +} + +func (e ServiceMeshMode) ToServiceMeshModePtrOutput() ServiceMeshModePtrOutput { + return e.ToServiceMeshModePtrOutputWithContext(context.Background()) +} + +func (e ServiceMeshMode) ToServiceMeshModePtrOutputWithContext(ctx context.Context) ServiceMeshModePtrOutput { + return ServiceMeshMode(e).ToServiceMeshModeOutputWithContext(ctx).ToServiceMeshModePtrOutputWithContext(ctx) +} + +func (e ServiceMeshMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ServiceMeshMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ServiceMeshMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ServiceMeshMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ServiceMeshModeOutput struct{ *pulumi.OutputState } + +func (ServiceMeshModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceMeshMode)(nil)).Elem() +} + +func (o ServiceMeshModeOutput) ToServiceMeshModeOutput() ServiceMeshModeOutput { + return o +} + +func (o ServiceMeshModeOutput) ToServiceMeshModeOutputWithContext(ctx context.Context) ServiceMeshModeOutput { + return o +} + +func (o ServiceMeshModeOutput) ToServiceMeshModePtrOutput() ServiceMeshModePtrOutput { + return o.ToServiceMeshModePtrOutputWithContext(context.Background()) +} + +func (o ServiceMeshModeOutput) ToServiceMeshModePtrOutputWithContext(ctx context.Context) ServiceMeshModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ServiceMeshMode) *ServiceMeshMode { + return &v + }).(ServiceMeshModePtrOutput) +} + +func (o ServiceMeshModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ServiceMeshModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ServiceMeshMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ServiceMeshModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ServiceMeshModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ServiceMeshMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ServiceMeshModePtrOutput struct{ *pulumi.OutputState } + +func (ServiceMeshModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceMeshMode)(nil)).Elem() +} + +func (o ServiceMeshModePtrOutput) ToServiceMeshModePtrOutput() ServiceMeshModePtrOutput { + return o +} + +func (o ServiceMeshModePtrOutput) ToServiceMeshModePtrOutputWithContext(ctx context.Context) ServiceMeshModePtrOutput { + return o +} + +func (o ServiceMeshModePtrOutput) Elem() ServiceMeshModeOutput { + return o.ApplyT(func(v *ServiceMeshMode) ServiceMeshMode { + if v != nil { + return *v + } + var ret ServiceMeshMode + return ret + }).(ServiceMeshModeOutput) +} + +func (o ServiceMeshModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ServiceMeshModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ServiceMeshMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ServiceMeshModeInput is an input type that accepts values of the ServiceMeshMode enum +// A concrete instance of `ServiceMeshModeInput` can be one of the following: +// +// ServiceMeshModeIstio +// ServiceMeshModeDisabled +type ServiceMeshModeInput interface { + pulumi.Input + + ToServiceMeshModeOutput() ServiceMeshModeOutput + ToServiceMeshModeOutputWithContext(context.Context) ServiceMeshModeOutput +} + +var serviceMeshModePtrType = reflect.TypeOf((**ServiceMeshMode)(nil)).Elem() + +type ServiceMeshModePtrInput interface { + pulumi.Input + + ToServiceMeshModePtrOutput() ServiceMeshModePtrOutput + ToServiceMeshModePtrOutputWithContext(context.Context) ServiceMeshModePtrOutput +} + +type serviceMeshModePtr string + +func ServiceMeshModePtr(v string) ServiceMeshModePtrInput { + return (*serviceMeshModePtr)(&v) +} + +func (*serviceMeshModePtr) ElementType() reflect.Type { + return serviceMeshModePtrType +} + +func (in *serviceMeshModePtr) ToServiceMeshModePtrOutput() ServiceMeshModePtrOutput { + return pulumi.ToOutput(in).(ServiceMeshModePtrOutput) +} + +func (in *serviceMeshModePtr) ToServiceMeshModePtrOutputWithContext(ctx context.Context) ServiceMeshModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ServiceMeshModePtrOutput) +} + // The type of a snapshot. The default is NodePool. type SnapshotType string @@ -5804,6 +5919,183 @@ func (in *snapshotTypePtr) ToSnapshotTypePtrOutputWithContext(ctx context.Contex return pulumi.ToOutputWithContext(ctx, in).(SnapshotTypePtrOutput) } +// Specifies on which week of the month the dayOfWeek applies. +type Type string + +const ( + // First week of the month. + TypeFirst = Type("First") + // Second week of the month. + TypeSecond = Type("Second") + // Third week of the month. + TypeThird = Type("Third") + // Fourth week of the month. + TypeFourth = Type("Fourth") + // Last week of the month. + TypeLast = Type("Last") +) + +func (Type) ElementType() reflect.Type { + return reflect.TypeOf((*Type)(nil)).Elem() +} + +func (e Type) ToTypeOutput() TypeOutput { + return pulumi.ToOutput(e).(TypeOutput) +} + +func (e Type) ToTypeOutputWithContext(ctx context.Context) TypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(TypeOutput) +} + +func (e Type) ToTypePtrOutput() TypePtrOutput { + return e.ToTypePtrOutputWithContext(context.Background()) +} + +func (e Type) ToTypePtrOutputWithContext(ctx context.Context) TypePtrOutput { + return Type(e).ToTypeOutputWithContext(ctx).ToTypePtrOutputWithContext(ctx) +} + +func (e Type) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e Type) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e Type) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e Type) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TypeOutput struct{ *pulumi.OutputState } + +func (TypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*Type)(nil)).Elem() +} + +func (o TypeOutput) ToTypeOutput() TypeOutput { + return o +} + +func (o TypeOutput) ToTypeOutputWithContext(ctx context.Context) TypeOutput { + return o +} + +func (o TypeOutput) ToTypePtrOutput() TypePtrOutput { + return o.ToTypePtrOutputWithContext(context.Background()) +} + +func (o TypeOutput) ToTypePtrOutputWithContext(ctx context.Context) TypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v Type) *Type { + return &v + }).(TypePtrOutput) +} + +func (o TypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e Type) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e Type) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TypePtrOutput struct{ *pulumi.OutputState } + +func (TypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Type)(nil)).Elem() +} + +func (o TypePtrOutput) ToTypePtrOutput() TypePtrOutput { + return o +} + +func (o TypePtrOutput) ToTypePtrOutputWithContext(ctx context.Context) TypePtrOutput { + return o +} + +func (o TypePtrOutput) Elem() TypeOutput { + return o.ApplyT(func(v *Type) Type { + if v != nil { + return *v + } + var ret Type + return ret + }).(TypeOutput) +} + +func (o TypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *Type) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TypeInput is an input type that accepts values of the Type enum +// A concrete instance of `TypeInput` can be one of the following: +// +// TypeFirst +// TypeSecond +// TypeThird +// TypeFourth +// TypeLast +type TypeInput interface { + pulumi.Input + + ToTypeOutput() TypeOutput + ToTypeOutputWithContext(context.Context) TypeOutput +} + +var typePtrType = reflect.TypeOf((**Type)(nil)).Elem() + +type TypePtrInput interface { + pulumi.Input + + ToTypePtrOutput() TypePtrOutput + ToTypePtrOutputWithContext(context.Context) TypePtrOutput +} + +type typePtr string + +func TypePtr(v string) TypePtrInput { + return (*typePtr)(&v) +} + +func (*typePtr) ElementType() reflect.Type { + return typePtrType +} + +func (in *typePtr) ToTypePtrOutput() TypePtrOutput { + return pulumi.ToOutput(in).(TypePtrOutput) +} + +func (in *typePtr) ToTypePtrOutputWithContext(ctx context.Context) TypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TypePtrOutput) +} + // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). type UpgradeChannel string @@ -5814,7 +6106,7 @@ const ( UpgradeChannelStable = UpgradeChannel("stable") // Automatically upgrade the cluster to the latest supported patch version when it becomes available while keeping the minor version the same. For example, if a cluster is running version 1.17.7 and versions 1.17.9, 1.18.4, 1.18.6, and 1.19.1 are available, your cluster is upgraded to 1.17.9. UpgradeChannelPatch = UpgradeChannel("patch") - // Automatically upgrade the node image to the latest version available. Microsoft provides patches and new images for image nodes frequently (usually weekly), but your running nodes won't get the new images unless you do a node image upgrade. Turning on the node-image channel will automatically update your node images whenever a new version is available. + // Automatically upgrade the node image to the latest version available. Consider using nodeOSUpgradeChannel instead as that allows you to configure node OS patching separate from Kubernetes version patching UpgradeChannel_Node_Image = UpgradeChannel("node-image") // Disables auto-upgrades and keeps the cluster at its current version of Kubernetes. UpgradeChannelNone = UpgradeChannel("none") @@ -6330,6 +6622,8 @@ func init() { pulumi.RegisterOutputType(AgentPoolModePtrOutput{}) pulumi.RegisterOutputType(AgentPoolTypeOutput{}) pulumi.RegisterOutputType(AgentPoolTypePtrOutput{}) + pulumi.RegisterOutputType(BackendPoolTypeOutput{}) + pulumi.RegisterOutputType(BackendPoolTypePtrOutput{}) pulumi.RegisterOutputType(CodeOutput{}) pulumi.RegisterOutputType(CodePtrOutput{}) pulumi.RegisterOutputType(ConnectionStatusOutput{}) @@ -6342,6 +6636,8 @@ func init() { pulumi.RegisterOutputType(GPUInstanceProfilePtrOutput{}) pulumi.RegisterOutputType(IpFamilyOutput{}) pulumi.RegisterOutputType(IpFamilyPtrOutput{}) + pulumi.RegisterOutputType(IstioIngressGatewayModeOutput{}) + pulumi.RegisterOutputType(IstioIngressGatewayModePtrOutput{}) pulumi.RegisterOutputType(KeyVaultNetworkAccessTypesOutput{}) pulumi.RegisterOutputType(KeyVaultNetworkAccessTypesPtrOutput{}) pulumi.RegisterOutputType(KubeletDiskTypeOutput{}) @@ -6356,8 +6652,6 @@ func init() { pulumi.RegisterOutputType(ManagedClusterSKUNamePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterSKUTierOutput{}) pulumi.RegisterOutputType(ManagedClusterSKUTierPtrOutput{}) - pulumi.RegisterOutputType(ManagedClusterUpgradeTypeOutput{}) - pulumi.RegisterOutputType(ManagedClusterUpgradeTypePtrOutput{}) pulumi.RegisterOutputType(NetworkDataplaneOutput{}) pulumi.RegisterOutputType(NetworkDataplanePtrOutput{}) pulumi.RegisterOutputType(NetworkModeOutput{}) @@ -6368,20 +6662,18 @@ func init() { pulumi.RegisterOutputType(NetworkPluginModePtrOutput{}) pulumi.RegisterOutputType(NetworkPolicyOutput{}) pulumi.RegisterOutputType(NetworkPolicyPtrOutput{}) + pulumi.RegisterOutputType(NodeOSUpgradeChannelOutput{}) + pulumi.RegisterOutputType(NodeOSUpgradeChannelPtrOutput{}) pulumi.RegisterOutputType(OSDiskTypeOutput{}) pulumi.RegisterOutputType(OSDiskTypePtrOutput{}) pulumi.RegisterOutputType(OSSKUOutput{}) pulumi.RegisterOutputType(OSSKUPtrOutput{}) pulumi.RegisterOutputType(OSTypeOutput{}) pulumi.RegisterOutputType(OSTypePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftAgentPoolProfileRoleOutput{}) - pulumi.RegisterOutputType(OpenShiftAgentPoolProfileRolePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftContainerServiceVMSizeOutput{}) - pulumi.RegisterOutputType(OpenShiftContainerServiceVMSizePtrOutput{}) - pulumi.RegisterOutputType(OperatorOutput{}) - pulumi.RegisterOutputType(OperatorPtrOutput{}) pulumi.RegisterOutputType(OutboundTypeOutput{}) pulumi.RegisterOutputType(OutboundTypePtrOutput{}) + pulumi.RegisterOutputType(ProtocolOutput{}) + pulumi.RegisterOutputType(ProtocolPtrOutput{}) pulumi.RegisterOutputType(PublicNetworkAccessOutput{}) pulumi.RegisterOutputType(PublicNetworkAccessPtrOutput{}) pulumi.RegisterOutputType(ResourceIdentityTypeOutput{}) @@ -6392,8 +6684,12 @@ func init() { pulumi.RegisterOutputType(ScaleSetEvictionPolicyPtrOutput{}) pulumi.RegisterOutputType(ScaleSetPriorityOutput{}) pulumi.RegisterOutputType(ScaleSetPriorityPtrOutput{}) + pulumi.RegisterOutputType(ServiceMeshModeOutput{}) + pulumi.RegisterOutputType(ServiceMeshModePtrOutput{}) pulumi.RegisterOutputType(SnapshotTypeOutput{}) pulumi.RegisterOutputType(SnapshotTypePtrOutput{}) + pulumi.RegisterOutputType(TypeOutput{}) + pulumi.RegisterOutputType(TypePtrOutput{}) pulumi.RegisterOutputType(UpgradeChannelOutput{}) pulumi.RegisterOutputType(UpgradeChannelPtrOutput{}) pulumi.RegisterOutputType(WeekDayOutput{}) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumiTypes.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/pulumiTypes.go similarity index 74% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumiTypes.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/pulumiTypes.go index dd21090fc..467161ea2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/pulumiTypes.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/pulumiTypes.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,17143 +13,19125 @@ import ( var _ = utilities.GetEnvOrDefault -// Settings for upgrading an agentpool -type AgentPoolUpgradeSettings struct { - // This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade - MaxSurge *string `pulumi:"maxSurge"` +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +type AbsoluteMonthlySchedule struct { + // The date of the month. + DayOfMonth int `pulumi:"dayOfMonth"` + // Specifies the number of months between each set of occurrences. + IntervalMonths int `pulumi:"intervalMonths"` } -// AgentPoolUpgradeSettingsInput is an input type that accepts AgentPoolUpgradeSettingsArgs and AgentPoolUpgradeSettingsOutput values. -// You can construct a concrete instance of `AgentPoolUpgradeSettingsInput` via: +// AbsoluteMonthlyScheduleInput is an input type that accepts AbsoluteMonthlyScheduleArgs and AbsoluteMonthlyScheduleOutput values. +// You can construct a concrete instance of `AbsoluteMonthlyScheduleInput` via: // -// AgentPoolUpgradeSettingsArgs{...} -type AgentPoolUpgradeSettingsInput interface { +// AbsoluteMonthlyScheduleArgs{...} +type AbsoluteMonthlyScheduleInput interface { pulumi.Input - ToAgentPoolUpgradeSettingsOutput() AgentPoolUpgradeSettingsOutput - ToAgentPoolUpgradeSettingsOutputWithContext(context.Context) AgentPoolUpgradeSettingsOutput + ToAbsoluteMonthlyScheduleOutput() AbsoluteMonthlyScheduleOutput + ToAbsoluteMonthlyScheduleOutputWithContext(context.Context) AbsoluteMonthlyScheduleOutput } -// Settings for upgrading an agentpool -type AgentPoolUpgradeSettingsArgs struct { - // This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade - MaxSurge pulumi.StringPtrInput `pulumi:"maxSurge"` +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +type AbsoluteMonthlyScheduleArgs struct { + // The date of the month. + DayOfMonth pulumi.IntInput `pulumi:"dayOfMonth"` + // Specifies the number of months between each set of occurrences. + IntervalMonths pulumi.IntInput `pulumi:"intervalMonths"` } -func (AgentPoolUpgradeSettingsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPoolUpgradeSettings)(nil)).Elem() +func (AbsoluteMonthlyScheduleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AbsoluteMonthlySchedule)(nil)).Elem() } -func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsOutput() AgentPoolUpgradeSettingsOutput { - return i.ToAgentPoolUpgradeSettingsOutputWithContext(context.Background()) +func (i AbsoluteMonthlyScheduleArgs) ToAbsoluteMonthlyScheduleOutput() AbsoluteMonthlyScheduleOutput { + return i.ToAbsoluteMonthlyScheduleOutputWithContext(context.Background()) } -func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPoolUpgradeSettingsOutput) +func (i AbsoluteMonthlyScheduleArgs) ToAbsoluteMonthlyScheduleOutputWithContext(ctx context.Context) AbsoluteMonthlyScheduleOutput { + return pulumi.ToOutputWithContext(ctx, i).(AbsoluteMonthlyScheduleOutput) } -func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { - return i.ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Background()) +func (i AbsoluteMonthlyScheduleArgs) ToAbsoluteMonthlySchedulePtrOutput() AbsoluteMonthlySchedulePtrOutput { + return i.ToAbsoluteMonthlySchedulePtrOutputWithContext(context.Background()) } -func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPoolUpgradeSettingsOutput).ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx) +func (i AbsoluteMonthlyScheduleArgs) ToAbsoluteMonthlySchedulePtrOutputWithContext(ctx context.Context) AbsoluteMonthlySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AbsoluteMonthlyScheduleOutput).ToAbsoluteMonthlySchedulePtrOutputWithContext(ctx) } -// AgentPoolUpgradeSettingsPtrInput is an input type that accepts AgentPoolUpgradeSettingsArgs, AgentPoolUpgradeSettingsPtr and AgentPoolUpgradeSettingsPtrOutput values. -// You can construct a concrete instance of `AgentPoolUpgradeSettingsPtrInput` via: +// AbsoluteMonthlySchedulePtrInput is an input type that accepts AbsoluteMonthlyScheduleArgs, AbsoluteMonthlySchedulePtr and AbsoluteMonthlySchedulePtrOutput values. +// You can construct a concrete instance of `AbsoluteMonthlySchedulePtrInput` via: // -// AgentPoolUpgradeSettingsArgs{...} +// AbsoluteMonthlyScheduleArgs{...} // // or: // // nil -type AgentPoolUpgradeSettingsPtrInput interface { +type AbsoluteMonthlySchedulePtrInput interface { pulumi.Input - ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput - ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Context) AgentPoolUpgradeSettingsPtrOutput + ToAbsoluteMonthlySchedulePtrOutput() AbsoluteMonthlySchedulePtrOutput + ToAbsoluteMonthlySchedulePtrOutputWithContext(context.Context) AbsoluteMonthlySchedulePtrOutput } -type agentPoolUpgradeSettingsPtrType AgentPoolUpgradeSettingsArgs +type absoluteMonthlySchedulePtrType AbsoluteMonthlyScheduleArgs -func AgentPoolUpgradeSettingsPtr(v *AgentPoolUpgradeSettingsArgs) AgentPoolUpgradeSettingsPtrInput { - return (*agentPoolUpgradeSettingsPtrType)(v) +func AbsoluteMonthlySchedulePtr(v *AbsoluteMonthlyScheduleArgs) AbsoluteMonthlySchedulePtrInput { + return (*absoluteMonthlySchedulePtrType)(v) } -func (*agentPoolUpgradeSettingsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPoolUpgradeSettings)(nil)).Elem() +func (*absoluteMonthlySchedulePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AbsoluteMonthlySchedule)(nil)).Elem() } -func (i *agentPoolUpgradeSettingsPtrType) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { - return i.ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Background()) +func (i *absoluteMonthlySchedulePtrType) ToAbsoluteMonthlySchedulePtrOutput() AbsoluteMonthlySchedulePtrOutput { + return i.ToAbsoluteMonthlySchedulePtrOutputWithContext(context.Background()) } -func (i *agentPoolUpgradeSettingsPtrType) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AgentPoolUpgradeSettingsPtrOutput) +func (i *absoluteMonthlySchedulePtrType) ToAbsoluteMonthlySchedulePtrOutputWithContext(ctx context.Context) AbsoluteMonthlySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AbsoluteMonthlySchedulePtrOutput) } -// Settings for upgrading an agentpool -type AgentPoolUpgradeSettingsOutput struct{ *pulumi.OutputState } +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +type AbsoluteMonthlyScheduleOutput struct{ *pulumi.OutputState } -func (AgentPoolUpgradeSettingsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPoolUpgradeSettings)(nil)).Elem() +func (AbsoluteMonthlyScheduleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AbsoluteMonthlySchedule)(nil)).Elem() } -func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsOutput() AgentPoolUpgradeSettingsOutput { +func (o AbsoluteMonthlyScheduleOutput) ToAbsoluteMonthlyScheduleOutput() AbsoluteMonthlyScheduleOutput { return o } -func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsOutput { +func (o AbsoluteMonthlyScheduleOutput) ToAbsoluteMonthlyScheduleOutputWithContext(ctx context.Context) AbsoluteMonthlyScheduleOutput { return o } -func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { - return o.ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Background()) +func (o AbsoluteMonthlyScheduleOutput) ToAbsoluteMonthlySchedulePtrOutput() AbsoluteMonthlySchedulePtrOutput { + return o.ToAbsoluteMonthlySchedulePtrOutputWithContext(context.Background()) } -func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPoolUpgradeSettings) *AgentPoolUpgradeSettings { +func (o AbsoluteMonthlyScheduleOutput) ToAbsoluteMonthlySchedulePtrOutputWithContext(ctx context.Context) AbsoluteMonthlySchedulePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AbsoluteMonthlySchedule) *AbsoluteMonthlySchedule { return &v - }).(AgentPoolUpgradeSettingsPtrOutput) + }).(AbsoluteMonthlySchedulePtrOutput) } -// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade -func (o AgentPoolUpgradeSettingsOutput) MaxSurge() pulumi.StringPtrOutput { - return o.ApplyT(func(v AgentPoolUpgradeSettings) *string { return v.MaxSurge }).(pulumi.StringPtrOutput) +// The date of the month. +func (o AbsoluteMonthlyScheduleOutput) DayOfMonth() pulumi.IntOutput { + return o.ApplyT(func(v AbsoluteMonthlySchedule) int { return v.DayOfMonth }).(pulumi.IntOutput) } -type AgentPoolUpgradeSettingsPtrOutput struct{ *pulumi.OutputState } +// Specifies the number of months between each set of occurrences. +func (o AbsoluteMonthlyScheduleOutput) IntervalMonths() pulumi.IntOutput { + return o.ApplyT(func(v AbsoluteMonthlySchedule) int { return v.IntervalMonths }).(pulumi.IntOutput) +} -func (AgentPoolUpgradeSettingsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPoolUpgradeSettings)(nil)).Elem() +type AbsoluteMonthlySchedulePtrOutput struct{ *pulumi.OutputState } + +func (AbsoluteMonthlySchedulePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AbsoluteMonthlySchedule)(nil)).Elem() } -func (o AgentPoolUpgradeSettingsPtrOutput) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { +func (o AbsoluteMonthlySchedulePtrOutput) ToAbsoluteMonthlySchedulePtrOutput() AbsoluteMonthlySchedulePtrOutput { return o } -func (o AgentPoolUpgradeSettingsPtrOutput) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { +func (o AbsoluteMonthlySchedulePtrOutput) ToAbsoluteMonthlySchedulePtrOutputWithContext(ctx context.Context) AbsoluteMonthlySchedulePtrOutput { return o } -func (o AgentPoolUpgradeSettingsPtrOutput) Elem() AgentPoolUpgradeSettingsOutput { - return o.ApplyT(func(v *AgentPoolUpgradeSettings) AgentPoolUpgradeSettings { +func (o AbsoluteMonthlySchedulePtrOutput) Elem() AbsoluteMonthlyScheduleOutput { + return o.ApplyT(func(v *AbsoluteMonthlySchedule) AbsoluteMonthlySchedule { if v != nil { return *v } - var ret AgentPoolUpgradeSettings + var ret AbsoluteMonthlySchedule return ret - }).(AgentPoolUpgradeSettingsOutput) + }).(AbsoluteMonthlyScheduleOutput) } -// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade -func (o AgentPoolUpgradeSettingsPtrOutput) MaxSurge() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentPoolUpgradeSettings) *string { +// The date of the month. +func (o AbsoluteMonthlySchedulePtrOutput) DayOfMonth() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AbsoluteMonthlySchedule) *int { if v == nil { return nil } - return v.MaxSurge - }).(pulumi.StringPtrOutput) + return &v.DayOfMonth + }).(pulumi.IntPtrOutput) } -// Settings for upgrading an agentpool -type AgentPoolUpgradeSettingsResponse struct { - // This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade - MaxSurge *string `pulumi:"maxSurge"` +// Specifies the number of months between each set of occurrences. +func (o AbsoluteMonthlySchedulePtrOutput) IntervalMonths() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AbsoluteMonthlySchedule) *int { + if v == nil { + return nil + } + return &v.IntervalMonths + }).(pulumi.IntPtrOutput) } -// Settings for upgrading an agentpool -type AgentPoolUpgradeSettingsResponseOutput struct{ *pulumi.OutputState } +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +type AbsoluteMonthlyScheduleResponse struct { + // The date of the month. + DayOfMonth int `pulumi:"dayOfMonth"` + // Specifies the number of months between each set of occurrences. + IntervalMonths int `pulumi:"intervalMonths"` +} -func (AgentPoolUpgradeSettingsResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AgentPoolUpgradeSettingsResponse)(nil)).Elem() +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +type AbsoluteMonthlyScheduleResponseOutput struct{ *pulumi.OutputState } + +func (AbsoluteMonthlyScheduleResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AbsoluteMonthlyScheduleResponse)(nil)).Elem() } -func (o AgentPoolUpgradeSettingsResponseOutput) ToAgentPoolUpgradeSettingsResponseOutput() AgentPoolUpgradeSettingsResponseOutput { +func (o AbsoluteMonthlyScheduleResponseOutput) ToAbsoluteMonthlyScheduleResponseOutput() AbsoluteMonthlyScheduleResponseOutput { return o } -func (o AgentPoolUpgradeSettingsResponseOutput) ToAgentPoolUpgradeSettingsResponseOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsResponseOutput { +func (o AbsoluteMonthlyScheduleResponseOutput) ToAbsoluteMonthlyScheduleResponseOutputWithContext(ctx context.Context) AbsoluteMonthlyScheduleResponseOutput { return o } -// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade -func (o AgentPoolUpgradeSettingsResponseOutput) MaxSurge() pulumi.StringPtrOutput { - return o.ApplyT(func(v AgentPoolUpgradeSettingsResponse) *string { return v.MaxSurge }).(pulumi.StringPtrOutput) +// The date of the month. +func (o AbsoluteMonthlyScheduleResponseOutput) DayOfMonth() pulumi.IntOutput { + return o.ApplyT(func(v AbsoluteMonthlyScheduleResponse) int { return v.DayOfMonth }).(pulumi.IntOutput) } -type AgentPoolUpgradeSettingsResponsePtrOutput struct{ *pulumi.OutputState } +// Specifies the number of months between each set of occurrences. +func (o AbsoluteMonthlyScheduleResponseOutput) IntervalMonths() pulumi.IntOutput { + return o.ApplyT(func(v AbsoluteMonthlyScheduleResponse) int { return v.IntervalMonths }).(pulumi.IntOutput) +} -func (AgentPoolUpgradeSettingsResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AgentPoolUpgradeSettingsResponse)(nil)).Elem() +type AbsoluteMonthlyScheduleResponsePtrOutput struct{ *pulumi.OutputState } + +func (AbsoluteMonthlyScheduleResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AbsoluteMonthlyScheduleResponse)(nil)).Elem() } -func (o AgentPoolUpgradeSettingsResponsePtrOutput) ToAgentPoolUpgradeSettingsResponsePtrOutput() AgentPoolUpgradeSettingsResponsePtrOutput { +func (o AbsoluteMonthlyScheduleResponsePtrOutput) ToAbsoluteMonthlyScheduleResponsePtrOutput() AbsoluteMonthlyScheduleResponsePtrOutput { return o } -func (o AgentPoolUpgradeSettingsResponsePtrOutput) ToAgentPoolUpgradeSettingsResponsePtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsResponsePtrOutput { +func (o AbsoluteMonthlyScheduleResponsePtrOutput) ToAbsoluteMonthlyScheduleResponsePtrOutputWithContext(ctx context.Context) AbsoluteMonthlyScheduleResponsePtrOutput { return o } -func (o AgentPoolUpgradeSettingsResponsePtrOutput) Elem() AgentPoolUpgradeSettingsResponseOutput { - return o.ApplyT(func(v *AgentPoolUpgradeSettingsResponse) AgentPoolUpgradeSettingsResponse { +func (o AbsoluteMonthlyScheduleResponsePtrOutput) Elem() AbsoluteMonthlyScheduleResponseOutput { + return o.ApplyT(func(v *AbsoluteMonthlyScheduleResponse) AbsoluteMonthlyScheduleResponse { if v != nil { return *v } - var ret AgentPoolUpgradeSettingsResponse + var ret AbsoluteMonthlyScheduleResponse return ret - }).(AgentPoolUpgradeSettingsResponseOutput) + }).(AbsoluteMonthlyScheduleResponseOutput) } -// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade -func (o AgentPoolUpgradeSettingsResponsePtrOutput) MaxSurge() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AgentPoolUpgradeSettingsResponse) *string { +// The date of the month. +func (o AbsoluteMonthlyScheduleResponsePtrOutput) DayOfMonth() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AbsoluteMonthlyScheduleResponse) *int { if v == nil { return nil } - return v.MaxSurge - }).(pulumi.StringPtrOutput) + return &v.DayOfMonth + }).(pulumi.IntPtrOutput) } -// Azure Key Vault key management service settings for the security profile. -type AzureKeyVaultKms struct { - // Whether to enable Azure Key Vault key management service. The default is false. - Enabled *bool `pulumi:"enabled"` - // Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. - KeyId *string `pulumi:"keyId"` - // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. - KeyVaultNetworkAccess *string `pulumi:"keyVaultNetworkAccess"` - // Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. - KeyVaultResourceId *string `pulumi:"keyVaultResourceId"` +// Specifies the number of months between each set of occurrences. +func (o AbsoluteMonthlyScheduleResponsePtrOutput) IntervalMonths() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AbsoluteMonthlyScheduleResponse) *int { + if v == nil { + return nil + } + return &v.IntervalMonths + }).(pulumi.IntPtrOutput) } -// Defaults sets the appropriate defaults for AzureKeyVaultKms -func (val *AzureKeyVaultKms) Defaults() *AzureKeyVaultKms { - if val == nil { - return nil - } - tmp := *val - if tmp.KeyVaultNetworkAccess == nil { - keyVaultNetworkAccess_ := "Public" - tmp.KeyVaultNetworkAccess = &keyVaultNetworkAccess_ - } - return &tmp +// Network settings of an agent pool. +type AgentPoolNetworkProfile struct { + // The port ranges that are allowed to access. The specified ranges are allowed to overlap. + AllowedHostPorts []PortRange `pulumi:"allowedHostPorts"` + // The IDs of the application security groups which agent pool will associate when created. + ApplicationSecurityGroups []string `pulumi:"applicationSecurityGroups"` + // IPTags of instance-level public IPs. + NodePublicIPTags []IPTag `pulumi:"nodePublicIPTags"` } -// AzureKeyVaultKmsInput is an input type that accepts AzureKeyVaultKmsArgs and AzureKeyVaultKmsOutput values. -// You can construct a concrete instance of `AzureKeyVaultKmsInput` via: +// AgentPoolNetworkProfileInput is an input type that accepts AgentPoolNetworkProfileArgs and AgentPoolNetworkProfileOutput values. +// You can construct a concrete instance of `AgentPoolNetworkProfileInput` via: // -// AzureKeyVaultKmsArgs{...} -type AzureKeyVaultKmsInput interface { +// AgentPoolNetworkProfileArgs{...} +type AgentPoolNetworkProfileInput interface { pulumi.Input - ToAzureKeyVaultKmsOutput() AzureKeyVaultKmsOutput - ToAzureKeyVaultKmsOutputWithContext(context.Context) AzureKeyVaultKmsOutput + ToAgentPoolNetworkProfileOutput() AgentPoolNetworkProfileOutput + ToAgentPoolNetworkProfileOutputWithContext(context.Context) AgentPoolNetworkProfileOutput } -// Azure Key Vault key management service settings for the security profile. -type AzureKeyVaultKmsArgs struct { - // Whether to enable Azure Key Vault key management service. The default is false. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. - KeyId pulumi.StringPtrInput `pulumi:"keyId"` - // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. - KeyVaultNetworkAccess pulumi.StringPtrInput `pulumi:"keyVaultNetworkAccess"` - // Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. - KeyVaultResourceId pulumi.StringPtrInput `pulumi:"keyVaultResourceId"` +// Network settings of an agent pool. +type AgentPoolNetworkProfileArgs struct { + // The port ranges that are allowed to access. The specified ranges are allowed to overlap. + AllowedHostPorts PortRangeArrayInput `pulumi:"allowedHostPorts"` + // The IDs of the application security groups which agent pool will associate when created. + ApplicationSecurityGroups pulumi.StringArrayInput `pulumi:"applicationSecurityGroups"` + // IPTags of instance-level public IPs. + NodePublicIPTags IPTagArrayInput `pulumi:"nodePublicIPTags"` } -// Defaults sets the appropriate defaults for AzureKeyVaultKmsArgs -func (val *AzureKeyVaultKmsArgs) Defaults() *AzureKeyVaultKmsArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.KeyVaultNetworkAccess == nil { - tmp.KeyVaultNetworkAccess = pulumi.StringPtr("Public") - } - return &tmp -} -func (AzureKeyVaultKmsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*AzureKeyVaultKms)(nil)).Elem() +func (AgentPoolNetworkProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolNetworkProfile)(nil)).Elem() } -func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsOutput() AzureKeyVaultKmsOutput { - return i.ToAzureKeyVaultKmsOutputWithContext(context.Background()) +func (i AgentPoolNetworkProfileArgs) ToAgentPoolNetworkProfileOutput() AgentPoolNetworkProfileOutput { + return i.ToAgentPoolNetworkProfileOutputWithContext(context.Background()) } -func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsOutputWithContext(ctx context.Context) AzureKeyVaultKmsOutput { - return pulumi.ToOutputWithContext(ctx, i).(AzureKeyVaultKmsOutput) +func (i AgentPoolNetworkProfileArgs) ToAgentPoolNetworkProfileOutputWithContext(ctx context.Context) AgentPoolNetworkProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolNetworkProfileOutput) } -func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { - return i.ToAzureKeyVaultKmsPtrOutputWithContext(context.Background()) +func (i AgentPoolNetworkProfileArgs) ToAgentPoolNetworkProfilePtrOutput() AgentPoolNetworkProfilePtrOutput { + return i.ToAgentPoolNetworkProfilePtrOutputWithContext(context.Background()) } -func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AzureKeyVaultKmsOutput).ToAzureKeyVaultKmsPtrOutputWithContext(ctx) +func (i AgentPoolNetworkProfileArgs) ToAgentPoolNetworkProfilePtrOutputWithContext(ctx context.Context) AgentPoolNetworkProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolNetworkProfileOutput).ToAgentPoolNetworkProfilePtrOutputWithContext(ctx) } -// AzureKeyVaultKmsPtrInput is an input type that accepts AzureKeyVaultKmsArgs, AzureKeyVaultKmsPtr and AzureKeyVaultKmsPtrOutput values. -// You can construct a concrete instance of `AzureKeyVaultKmsPtrInput` via: +// AgentPoolNetworkProfilePtrInput is an input type that accepts AgentPoolNetworkProfileArgs, AgentPoolNetworkProfilePtr and AgentPoolNetworkProfilePtrOutput values. +// You can construct a concrete instance of `AgentPoolNetworkProfilePtrInput` via: // -// AzureKeyVaultKmsArgs{...} +// AgentPoolNetworkProfileArgs{...} // // or: // // nil -type AzureKeyVaultKmsPtrInput interface { +type AgentPoolNetworkProfilePtrInput interface { pulumi.Input - ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput - ToAzureKeyVaultKmsPtrOutputWithContext(context.Context) AzureKeyVaultKmsPtrOutput + ToAgentPoolNetworkProfilePtrOutput() AgentPoolNetworkProfilePtrOutput + ToAgentPoolNetworkProfilePtrOutputWithContext(context.Context) AgentPoolNetworkProfilePtrOutput } -type azureKeyVaultKmsPtrType AzureKeyVaultKmsArgs +type agentPoolNetworkProfilePtrType AgentPoolNetworkProfileArgs -func AzureKeyVaultKmsPtr(v *AzureKeyVaultKmsArgs) AzureKeyVaultKmsPtrInput { - return (*azureKeyVaultKmsPtrType)(v) +func AgentPoolNetworkProfilePtr(v *AgentPoolNetworkProfileArgs) AgentPoolNetworkProfilePtrInput { + return (*agentPoolNetworkProfilePtrType)(v) } -func (*azureKeyVaultKmsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**AzureKeyVaultKms)(nil)).Elem() +func (*agentPoolNetworkProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolNetworkProfile)(nil)).Elem() } -func (i *azureKeyVaultKmsPtrType) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { - return i.ToAzureKeyVaultKmsPtrOutputWithContext(context.Background()) +func (i *agentPoolNetworkProfilePtrType) ToAgentPoolNetworkProfilePtrOutput() AgentPoolNetworkProfilePtrOutput { + return i.ToAgentPoolNetworkProfilePtrOutputWithContext(context.Background()) } -func (i *azureKeyVaultKmsPtrType) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(AzureKeyVaultKmsPtrOutput) +func (i *agentPoolNetworkProfilePtrType) ToAgentPoolNetworkProfilePtrOutputWithContext(ctx context.Context) AgentPoolNetworkProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolNetworkProfilePtrOutput) } -// Azure Key Vault key management service settings for the security profile. -type AzureKeyVaultKmsOutput struct{ *pulumi.OutputState } +// Network settings of an agent pool. +type AgentPoolNetworkProfileOutput struct{ *pulumi.OutputState } -func (AzureKeyVaultKmsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AzureKeyVaultKms)(nil)).Elem() +func (AgentPoolNetworkProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolNetworkProfile)(nil)).Elem() } -func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsOutput() AzureKeyVaultKmsOutput { +func (o AgentPoolNetworkProfileOutput) ToAgentPoolNetworkProfileOutput() AgentPoolNetworkProfileOutput { return o } -func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsOutputWithContext(ctx context.Context) AzureKeyVaultKmsOutput { +func (o AgentPoolNetworkProfileOutput) ToAgentPoolNetworkProfileOutputWithContext(ctx context.Context) AgentPoolNetworkProfileOutput { return o } -func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { - return o.ToAzureKeyVaultKmsPtrOutputWithContext(context.Background()) +func (o AgentPoolNetworkProfileOutput) ToAgentPoolNetworkProfilePtrOutput() AgentPoolNetworkProfilePtrOutput { + return o.ToAgentPoolNetworkProfilePtrOutputWithContext(context.Background()) } -func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v AzureKeyVaultKms) *AzureKeyVaultKms { +func (o AgentPoolNetworkProfileOutput) ToAgentPoolNetworkProfilePtrOutputWithContext(ctx context.Context) AgentPoolNetworkProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPoolNetworkProfile) *AgentPoolNetworkProfile { return &v - }).(AzureKeyVaultKmsPtrOutput) -} - -// Whether to enable Azure Key Vault key management service. The default is false. -func (o AzureKeyVaultKmsOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKms) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) + }).(AgentPoolNetworkProfilePtrOutput) } -// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. -func (o AzureKeyVaultKmsOutput) KeyId() pulumi.StringPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKms) *string { return v.KeyId }).(pulumi.StringPtrOutput) +// The port ranges that are allowed to access. The specified ranges are allowed to overlap. +func (o AgentPoolNetworkProfileOutput) AllowedHostPorts() PortRangeArrayOutput { + return o.ApplyT(func(v AgentPoolNetworkProfile) []PortRange { return v.AllowedHostPorts }).(PortRangeArrayOutput) } -// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. -func (o AzureKeyVaultKmsOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKms) *string { return v.KeyVaultNetworkAccess }).(pulumi.StringPtrOutput) +// The IDs of the application security groups which agent pool will associate when created. +func (o AgentPoolNetworkProfileOutput) ApplicationSecurityGroups() pulumi.StringArrayOutput { + return o.ApplyT(func(v AgentPoolNetworkProfile) []string { return v.ApplicationSecurityGroups }).(pulumi.StringArrayOutput) } -// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. -func (o AzureKeyVaultKmsOutput) KeyVaultResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKms) *string { return v.KeyVaultResourceId }).(pulumi.StringPtrOutput) +// IPTags of instance-level public IPs. +func (o AgentPoolNetworkProfileOutput) NodePublicIPTags() IPTagArrayOutput { + return o.ApplyT(func(v AgentPoolNetworkProfile) []IPTag { return v.NodePublicIPTags }).(IPTagArrayOutput) } -type AzureKeyVaultKmsPtrOutput struct{ *pulumi.OutputState } +type AgentPoolNetworkProfilePtrOutput struct{ *pulumi.OutputState } -func (AzureKeyVaultKmsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AzureKeyVaultKms)(nil)).Elem() +func (AgentPoolNetworkProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolNetworkProfile)(nil)).Elem() } -func (o AzureKeyVaultKmsPtrOutput) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { +func (o AgentPoolNetworkProfilePtrOutput) ToAgentPoolNetworkProfilePtrOutput() AgentPoolNetworkProfilePtrOutput { return o } -func (o AzureKeyVaultKmsPtrOutput) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { +func (o AgentPoolNetworkProfilePtrOutput) ToAgentPoolNetworkProfilePtrOutputWithContext(ctx context.Context) AgentPoolNetworkProfilePtrOutput { return o } -func (o AzureKeyVaultKmsPtrOutput) Elem() AzureKeyVaultKmsOutput { - return o.ApplyT(func(v *AzureKeyVaultKms) AzureKeyVaultKms { +func (o AgentPoolNetworkProfilePtrOutput) Elem() AgentPoolNetworkProfileOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfile) AgentPoolNetworkProfile { if v != nil { return *v } - var ret AzureKeyVaultKms + var ret AgentPoolNetworkProfile return ret - }).(AzureKeyVaultKmsOutput) + }).(AgentPoolNetworkProfileOutput) } -// Whether to enable Azure Key Vault key management service. The default is false. -func (o AzureKeyVaultKmsPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKms) *bool { +// The port ranges that are allowed to access. The specified ranges are allowed to overlap. +func (o AgentPoolNetworkProfilePtrOutput) AllowedHostPorts() PortRangeArrayOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfile) []PortRange { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.AllowedHostPorts + }).(PortRangeArrayOutput) } -// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. -func (o AzureKeyVaultKmsPtrOutput) KeyId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKms) *string { +// The IDs of the application security groups which agent pool will associate when created. +func (o AgentPoolNetworkProfilePtrOutput) ApplicationSecurityGroups() pulumi.StringArrayOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfile) []string { if v == nil { return nil } - return v.KeyId - }).(pulumi.StringPtrOutput) + return v.ApplicationSecurityGroups + }).(pulumi.StringArrayOutput) } -// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. -func (o AzureKeyVaultKmsPtrOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKms) *string { +// IPTags of instance-level public IPs. +func (o AgentPoolNetworkProfilePtrOutput) NodePublicIPTags() IPTagArrayOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfile) []IPTag { if v == nil { return nil } - return v.KeyVaultNetworkAccess - }).(pulumi.StringPtrOutput) + return v.NodePublicIPTags + }).(IPTagArrayOutput) } -// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. -func (o AzureKeyVaultKmsPtrOutput) KeyVaultResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKms) *string { - if v == nil { - return nil - } - return v.KeyVaultResourceId - }).(pulumi.StringPtrOutput) +// Network settings of an agent pool. +type AgentPoolNetworkProfileResponse struct { + // The port ranges that are allowed to access. The specified ranges are allowed to overlap. + AllowedHostPorts []PortRangeResponse `pulumi:"allowedHostPorts"` + // The IDs of the application security groups which agent pool will associate when created. + ApplicationSecurityGroups []string `pulumi:"applicationSecurityGroups"` + // IPTags of instance-level public IPs. + NodePublicIPTags []IPTagResponse `pulumi:"nodePublicIPTags"` } -// Azure Key Vault key management service settings for the security profile. -type AzureKeyVaultKmsResponse struct { - // Whether to enable Azure Key Vault key management service. The default is false. - Enabled *bool `pulumi:"enabled"` - // Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. - KeyId *string `pulumi:"keyId"` - // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. - KeyVaultNetworkAccess *string `pulumi:"keyVaultNetworkAccess"` - // Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. - KeyVaultResourceId *string `pulumi:"keyVaultResourceId"` +// Network settings of an agent pool. +type AgentPoolNetworkProfileResponseOutput struct{ *pulumi.OutputState } + +func (AgentPoolNetworkProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolNetworkProfileResponse)(nil)).Elem() } -// Defaults sets the appropriate defaults for AzureKeyVaultKmsResponse -func (val *AzureKeyVaultKmsResponse) Defaults() *AzureKeyVaultKmsResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.KeyVaultNetworkAccess == nil { - keyVaultNetworkAccess_ := "Public" - tmp.KeyVaultNetworkAccess = &keyVaultNetworkAccess_ - } - return &tmp -} - -// Azure Key Vault key management service settings for the security profile. -type AzureKeyVaultKmsResponseOutput struct{ *pulumi.OutputState } - -func (AzureKeyVaultKmsResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*AzureKeyVaultKmsResponse)(nil)).Elem() -} - -func (o AzureKeyVaultKmsResponseOutput) ToAzureKeyVaultKmsResponseOutput() AzureKeyVaultKmsResponseOutput { +func (o AgentPoolNetworkProfileResponseOutput) ToAgentPoolNetworkProfileResponseOutput() AgentPoolNetworkProfileResponseOutput { return o } -func (o AzureKeyVaultKmsResponseOutput) ToAzureKeyVaultKmsResponseOutputWithContext(ctx context.Context) AzureKeyVaultKmsResponseOutput { +func (o AgentPoolNetworkProfileResponseOutput) ToAgentPoolNetworkProfileResponseOutputWithContext(ctx context.Context) AgentPoolNetworkProfileResponseOutput { return o } -// Whether to enable Azure Key Vault key management service. The default is false. -func (o AzureKeyVaultKmsResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKmsResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. -func (o AzureKeyVaultKmsResponseOutput) KeyId() pulumi.StringPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKmsResponse) *string { return v.KeyId }).(pulumi.StringPtrOutput) +// The port ranges that are allowed to access. The specified ranges are allowed to overlap. +func (o AgentPoolNetworkProfileResponseOutput) AllowedHostPorts() PortRangeResponseArrayOutput { + return o.ApplyT(func(v AgentPoolNetworkProfileResponse) []PortRangeResponse { return v.AllowedHostPorts }).(PortRangeResponseArrayOutput) } -// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. -func (o AzureKeyVaultKmsResponseOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKmsResponse) *string { return v.KeyVaultNetworkAccess }).(pulumi.StringPtrOutput) +// The IDs of the application security groups which agent pool will associate when created. +func (o AgentPoolNetworkProfileResponseOutput) ApplicationSecurityGroups() pulumi.StringArrayOutput { + return o.ApplyT(func(v AgentPoolNetworkProfileResponse) []string { return v.ApplicationSecurityGroups }).(pulumi.StringArrayOutput) } -// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. -func (o AzureKeyVaultKmsResponseOutput) KeyVaultResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v AzureKeyVaultKmsResponse) *string { return v.KeyVaultResourceId }).(pulumi.StringPtrOutput) +// IPTags of instance-level public IPs. +func (o AgentPoolNetworkProfileResponseOutput) NodePublicIPTags() IPTagResponseArrayOutput { + return o.ApplyT(func(v AgentPoolNetworkProfileResponse) []IPTagResponse { return v.NodePublicIPTags }).(IPTagResponseArrayOutput) } -type AzureKeyVaultKmsResponsePtrOutput struct{ *pulumi.OutputState } +type AgentPoolNetworkProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (AzureKeyVaultKmsResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**AzureKeyVaultKmsResponse)(nil)).Elem() +func (AgentPoolNetworkProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolNetworkProfileResponse)(nil)).Elem() } -func (o AzureKeyVaultKmsResponsePtrOutput) ToAzureKeyVaultKmsResponsePtrOutput() AzureKeyVaultKmsResponsePtrOutput { +func (o AgentPoolNetworkProfileResponsePtrOutput) ToAgentPoolNetworkProfileResponsePtrOutput() AgentPoolNetworkProfileResponsePtrOutput { return o } -func (o AzureKeyVaultKmsResponsePtrOutput) ToAzureKeyVaultKmsResponsePtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsResponsePtrOutput { +func (o AgentPoolNetworkProfileResponsePtrOutput) ToAgentPoolNetworkProfileResponsePtrOutputWithContext(ctx context.Context) AgentPoolNetworkProfileResponsePtrOutput { return o } -func (o AzureKeyVaultKmsResponsePtrOutput) Elem() AzureKeyVaultKmsResponseOutput { - return o.ApplyT(func(v *AzureKeyVaultKmsResponse) AzureKeyVaultKmsResponse { +func (o AgentPoolNetworkProfileResponsePtrOutput) Elem() AgentPoolNetworkProfileResponseOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfileResponse) AgentPoolNetworkProfileResponse { if v != nil { return *v } - var ret AzureKeyVaultKmsResponse + var ret AgentPoolNetworkProfileResponse return ret - }).(AzureKeyVaultKmsResponseOutput) -} - -// Whether to enable Azure Key Vault key management service. The default is false. -func (o AzureKeyVaultKmsResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) + }).(AgentPoolNetworkProfileResponseOutput) } -// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. -func (o AzureKeyVaultKmsResponsePtrOutput) KeyId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *string { +// The port ranges that are allowed to access. The specified ranges are allowed to overlap. +func (o AgentPoolNetworkProfileResponsePtrOutput) AllowedHostPorts() PortRangeResponseArrayOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfileResponse) []PortRangeResponse { if v == nil { return nil } - return v.KeyId - }).(pulumi.StringPtrOutput) + return v.AllowedHostPorts + }).(PortRangeResponseArrayOutput) } -// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. -func (o AzureKeyVaultKmsResponsePtrOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *string { +// The IDs of the application security groups which agent pool will associate when created. +func (o AgentPoolNetworkProfileResponsePtrOutput) ApplicationSecurityGroups() pulumi.StringArrayOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfileResponse) []string { if v == nil { return nil } - return v.KeyVaultNetworkAccess - }).(pulumi.StringPtrOutput) + return v.ApplicationSecurityGroups + }).(pulumi.StringArrayOutput) } -// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. -func (o AzureKeyVaultKmsResponsePtrOutput) KeyVaultResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *string { +// IPTags of instance-level public IPs. +func (o AgentPoolNetworkProfileResponsePtrOutput) NodePublicIPTags() IPTagResponseArrayOutput { + return o.ApplyT(func(v *AgentPoolNetworkProfileResponse) []IPTagResponse { if v == nil { return nil } - return v.KeyVaultResourceId - }).(pulumi.StringPtrOutput) + return v.NodePublicIPTags + }).(IPTagResponseArrayOutput) } -// Profile for Linux VMs in the container service cluster. -type ContainerServiceLinuxProfile struct { - // The administrator username to use for Linux VMs. - AdminUsername string `pulumi:"adminUsername"` - // The SSH configuration for Linux-based VMs running on Azure. - Ssh ContainerServiceSshConfiguration `pulumi:"ssh"` +// The security settings of an agent pool. +type AgentPoolSecurityProfile struct { + // Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. + EnableSecureBoot *bool `pulumi:"enableSecureBoot"` + // vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. + EnableVTPM *bool `pulumi:"enableVTPM"` } -// ContainerServiceLinuxProfileInput is an input type that accepts ContainerServiceLinuxProfileArgs and ContainerServiceLinuxProfileOutput values. -// You can construct a concrete instance of `ContainerServiceLinuxProfileInput` via: +// AgentPoolSecurityProfileInput is an input type that accepts AgentPoolSecurityProfileArgs and AgentPoolSecurityProfileOutput values. +// You can construct a concrete instance of `AgentPoolSecurityProfileInput` via: // -// ContainerServiceLinuxProfileArgs{...} -type ContainerServiceLinuxProfileInput interface { +// AgentPoolSecurityProfileArgs{...} +type AgentPoolSecurityProfileInput interface { pulumi.Input - ToContainerServiceLinuxProfileOutput() ContainerServiceLinuxProfileOutput - ToContainerServiceLinuxProfileOutputWithContext(context.Context) ContainerServiceLinuxProfileOutput + ToAgentPoolSecurityProfileOutput() AgentPoolSecurityProfileOutput + ToAgentPoolSecurityProfileOutputWithContext(context.Context) AgentPoolSecurityProfileOutput } -// Profile for Linux VMs in the container service cluster. -type ContainerServiceLinuxProfileArgs struct { - // The administrator username to use for Linux VMs. - AdminUsername pulumi.StringInput `pulumi:"adminUsername"` - // The SSH configuration for Linux-based VMs running on Azure. - Ssh ContainerServiceSshConfigurationInput `pulumi:"ssh"` +// The security settings of an agent pool. +type AgentPoolSecurityProfileArgs struct { + // Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. + EnableSecureBoot pulumi.BoolPtrInput `pulumi:"enableSecureBoot"` + // vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. + EnableVTPM pulumi.BoolPtrInput `pulumi:"enableVTPM"` } -func (ContainerServiceLinuxProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceLinuxProfile)(nil)).Elem() +func (AgentPoolSecurityProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolSecurityProfile)(nil)).Elem() } -func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfileOutput() ContainerServiceLinuxProfileOutput { - return i.ToContainerServiceLinuxProfileOutputWithContext(context.Background()) +func (i AgentPoolSecurityProfileArgs) ToAgentPoolSecurityProfileOutput() AgentPoolSecurityProfileOutput { + return i.ToAgentPoolSecurityProfileOutputWithContext(context.Background()) } -func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfileOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceLinuxProfileOutput) +func (i AgentPoolSecurityProfileArgs) ToAgentPoolSecurityProfileOutputWithContext(ctx context.Context) AgentPoolSecurityProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolSecurityProfileOutput) } -func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { - return i.ToContainerServiceLinuxProfilePtrOutputWithContext(context.Background()) +func (i AgentPoolSecurityProfileArgs) ToAgentPoolSecurityProfilePtrOutput() AgentPoolSecurityProfilePtrOutput { + return i.ToAgentPoolSecurityProfilePtrOutputWithContext(context.Background()) } -func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceLinuxProfileOutput).ToContainerServiceLinuxProfilePtrOutputWithContext(ctx) +func (i AgentPoolSecurityProfileArgs) ToAgentPoolSecurityProfilePtrOutputWithContext(ctx context.Context) AgentPoolSecurityProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolSecurityProfileOutput).ToAgentPoolSecurityProfilePtrOutputWithContext(ctx) } -// ContainerServiceLinuxProfilePtrInput is an input type that accepts ContainerServiceLinuxProfileArgs, ContainerServiceLinuxProfilePtr and ContainerServiceLinuxProfilePtrOutput values. -// You can construct a concrete instance of `ContainerServiceLinuxProfilePtrInput` via: +// AgentPoolSecurityProfilePtrInput is an input type that accepts AgentPoolSecurityProfileArgs, AgentPoolSecurityProfilePtr and AgentPoolSecurityProfilePtrOutput values. +// You can construct a concrete instance of `AgentPoolSecurityProfilePtrInput` via: // -// ContainerServiceLinuxProfileArgs{...} +// AgentPoolSecurityProfileArgs{...} // // or: // // nil -type ContainerServiceLinuxProfilePtrInput interface { +type AgentPoolSecurityProfilePtrInput interface { pulumi.Input - ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput - ToContainerServiceLinuxProfilePtrOutputWithContext(context.Context) ContainerServiceLinuxProfilePtrOutput + ToAgentPoolSecurityProfilePtrOutput() AgentPoolSecurityProfilePtrOutput + ToAgentPoolSecurityProfilePtrOutputWithContext(context.Context) AgentPoolSecurityProfilePtrOutput } -type containerServiceLinuxProfilePtrType ContainerServiceLinuxProfileArgs +type agentPoolSecurityProfilePtrType AgentPoolSecurityProfileArgs -func ContainerServiceLinuxProfilePtr(v *ContainerServiceLinuxProfileArgs) ContainerServiceLinuxProfilePtrInput { - return (*containerServiceLinuxProfilePtrType)(v) +func AgentPoolSecurityProfilePtr(v *AgentPoolSecurityProfileArgs) AgentPoolSecurityProfilePtrInput { + return (*agentPoolSecurityProfilePtrType)(v) } -func (*containerServiceLinuxProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceLinuxProfile)(nil)).Elem() +func (*agentPoolSecurityProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolSecurityProfile)(nil)).Elem() } -func (i *containerServiceLinuxProfilePtrType) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { - return i.ToContainerServiceLinuxProfilePtrOutputWithContext(context.Background()) +func (i *agentPoolSecurityProfilePtrType) ToAgentPoolSecurityProfilePtrOutput() AgentPoolSecurityProfilePtrOutput { + return i.ToAgentPoolSecurityProfilePtrOutputWithContext(context.Background()) } -func (i *containerServiceLinuxProfilePtrType) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceLinuxProfilePtrOutput) +func (i *agentPoolSecurityProfilePtrType) ToAgentPoolSecurityProfilePtrOutputWithContext(ctx context.Context) AgentPoolSecurityProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolSecurityProfilePtrOutput) } -// Profile for Linux VMs in the container service cluster. -type ContainerServiceLinuxProfileOutput struct{ *pulumi.OutputState } +// The security settings of an agent pool. +type AgentPoolSecurityProfileOutput struct{ *pulumi.OutputState } -func (ContainerServiceLinuxProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceLinuxProfile)(nil)).Elem() +func (AgentPoolSecurityProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolSecurityProfile)(nil)).Elem() } -func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfileOutput() ContainerServiceLinuxProfileOutput { +func (o AgentPoolSecurityProfileOutput) ToAgentPoolSecurityProfileOutput() AgentPoolSecurityProfileOutput { return o } -func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfileOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileOutput { +func (o AgentPoolSecurityProfileOutput) ToAgentPoolSecurityProfileOutputWithContext(ctx context.Context) AgentPoolSecurityProfileOutput { return o } -func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { - return o.ToContainerServiceLinuxProfilePtrOutputWithContext(context.Background()) +func (o AgentPoolSecurityProfileOutput) ToAgentPoolSecurityProfilePtrOutput() AgentPoolSecurityProfilePtrOutput { + return o.ToAgentPoolSecurityProfilePtrOutputWithContext(context.Background()) } -func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerServiceLinuxProfile) *ContainerServiceLinuxProfile { +func (o AgentPoolSecurityProfileOutput) ToAgentPoolSecurityProfilePtrOutputWithContext(ctx context.Context) AgentPoolSecurityProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPoolSecurityProfile) *AgentPoolSecurityProfile { return &v - }).(ContainerServiceLinuxProfilePtrOutput) + }).(AgentPoolSecurityProfilePtrOutput) } -// The administrator username to use for Linux VMs. -func (o ContainerServiceLinuxProfileOutput) AdminUsername() pulumi.StringOutput { - return o.ApplyT(func(v ContainerServiceLinuxProfile) string { return v.AdminUsername }).(pulumi.StringOutput) +// Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfileOutput) EnableSecureBoot() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AgentPoolSecurityProfile) *bool { return v.EnableSecureBoot }).(pulumi.BoolPtrOutput) } -// The SSH configuration for Linux-based VMs running on Azure. -func (o ContainerServiceLinuxProfileOutput) Ssh() ContainerServiceSshConfigurationOutput { - return o.ApplyT(func(v ContainerServiceLinuxProfile) ContainerServiceSshConfiguration { return v.Ssh }).(ContainerServiceSshConfigurationOutput) +// vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfileOutput) EnableVTPM() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AgentPoolSecurityProfile) *bool { return v.EnableVTPM }).(pulumi.BoolPtrOutput) } -type ContainerServiceLinuxProfilePtrOutput struct{ *pulumi.OutputState } +type AgentPoolSecurityProfilePtrOutput struct{ *pulumi.OutputState } -func (ContainerServiceLinuxProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceLinuxProfile)(nil)).Elem() +func (AgentPoolSecurityProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolSecurityProfile)(nil)).Elem() } -func (o ContainerServiceLinuxProfilePtrOutput) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { +func (o AgentPoolSecurityProfilePtrOutput) ToAgentPoolSecurityProfilePtrOutput() AgentPoolSecurityProfilePtrOutput { return o } -func (o ContainerServiceLinuxProfilePtrOutput) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { +func (o AgentPoolSecurityProfilePtrOutput) ToAgentPoolSecurityProfilePtrOutputWithContext(ctx context.Context) AgentPoolSecurityProfilePtrOutput { return o } -func (o ContainerServiceLinuxProfilePtrOutput) Elem() ContainerServiceLinuxProfileOutput { - return o.ApplyT(func(v *ContainerServiceLinuxProfile) ContainerServiceLinuxProfile { +func (o AgentPoolSecurityProfilePtrOutput) Elem() AgentPoolSecurityProfileOutput { + return o.ApplyT(func(v *AgentPoolSecurityProfile) AgentPoolSecurityProfile { if v != nil { return *v } - var ret ContainerServiceLinuxProfile + var ret AgentPoolSecurityProfile return ret - }).(ContainerServiceLinuxProfileOutput) + }).(AgentPoolSecurityProfileOutput) } -// The administrator username to use for Linux VMs. -func (o ContainerServiceLinuxProfilePtrOutput) AdminUsername() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceLinuxProfile) *string { +// Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfilePtrOutput) EnableSecureBoot() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AgentPoolSecurityProfile) *bool { if v == nil { return nil } - return &v.AdminUsername - }).(pulumi.StringPtrOutput) + return v.EnableSecureBoot + }).(pulumi.BoolPtrOutput) } -// The SSH configuration for Linux-based VMs running on Azure. -func (o ContainerServiceLinuxProfilePtrOutput) Ssh() ContainerServiceSshConfigurationPtrOutput { - return o.ApplyT(func(v *ContainerServiceLinuxProfile) *ContainerServiceSshConfiguration { +// vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfilePtrOutput) EnableVTPM() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AgentPoolSecurityProfile) *bool { if v == nil { return nil } - return &v.Ssh - }).(ContainerServiceSshConfigurationPtrOutput) + return v.EnableVTPM + }).(pulumi.BoolPtrOutput) } -// Profile for Linux VMs in the container service cluster. -type ContainerServiceLinuxProfileResponse struct { - // The administrator username to use for Linux VMs. - AdminUsername string `pulumi:"adminUsername"` - // The SSH configuration for Linux-based VMs running on Azure. - Ssh ContainerServiceSshConfigurationResponse `pulumi:"ssh"` +// The security settings of an agent pool. +type AgentPoolSecurityProfileResponse struct { + // Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. + EnableSecureBoot *bool `pulumi:"enableSecureBoot"` + // vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. + EnableVTPM *bool `pulumi:"enableVTPM"` } -// Profile for Linux VMs in the container service cluster. -type ContainerServiceLinuxProfileResponseOutput struct{ *pulumi.OutputState } +// The security settings of an agent pool. +type AgentPoolSecurityProfileResponseOutput struct{ *pulumi.OutputState } -func (ContainerServiceLinuxProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceLinuxProfileResponse)(nil)).Elem() +func (AgentPoolSecurityProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolSecurityProfileResponse)(nil)).Elem() } -func (o ContainerServiceLinuxProfileResponseOutput) ToContainerServiceLinuxProfileResponseOutput() ContainerServiceLinuxProfileResponseOutput { +func (o AgentPoolSecurityProfileResponseOutput) ToAgentPoolSecurityProfileResponseOutput() AgentPoolSecurityProfileResponseOutput { return o } -func (o ContainerServiceLinuxProfileResponseOutput) ToContainerServiceLinuxProfileResponseOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileResponseOutput { +func (o AgentPoolSecurityProfileResponseOutput) ToAgentPoolSecurityProfileResponseOutputWithContext(ctx context.Context) AgentPoolSecurityProfileResponseOutput { return o } -// The administrator username to use for Linux VMs. -func (o ContainerServiceLinuxProfileResponseOutput) AdminUsername() pulumi.StringOutput { - return o.ApplyT(func(v ContainerServiceLinuxProfileResponse) string { return v.AdminUsername }).(pulumi.StringOutput) +// Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfileResponseOutput) EnableSecureBoot() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AgentPoolSecurityProfileResponse) *bool { return v.EnableSecureBoot }).(pulumi.BoolPtrOutput) } -// The SSH configuration for Linux-based VMs running on Azure. -func (o ContainerServiceLinuxProfileResponseOutput) Ssh() ContainerServiceSshConfigurationResponseOutput { - return o.ApplyT(func(v ContainerServiceLinuxProfileResponse) ContainerServiceSshConfigurationResponse { return v.Ssh }).(ContainerServiceSshConfigurationResponseOutput) +// vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfileResponseOutput) EnableVTPM() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AgentPoolSecurityProfileResponse) *bool { return v.EnableVTPM }).(pulumi.BoolPtrOutput) } -type ContainerServiceLinuxProfileResponsePtrOutput struct{ *pulumi.OutputState } +type AgentPoolSecurityProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ContainerServiceLinuxProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceLinuxProfileResponse)(nil)).Elem() +func (AgentPoolSecurityProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolSecurityProfileResponse)(nil)).Elem() } -func (o ContainerServiceLinuxProfileResponsePtrOutput) ToContainerServiceLinuxProfileResponsePtrOutput() ContainerServiceLinuxProfileResponsePtrOutput { +func (o AgentPoolSecurityProfileResponsePtrOutput) ToAgentPoolSecurityProfileResponsePtrOutput() AgentPoolSecurityProfileResponsePtrOutput { return o } -func (o ContainerServiceLinuxProfileResponsePtrOutput) ToContainerServiceLinuxProfileResponsePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileResponsePtrOutput { +func (o AgentPoolSecurityProfileResponsePtrOutput) ToAgentPoolSecurityProfileResponsePtrOutputWithContext(ctx context.Context) AgentPoolSecurityProfileResponsePtrOutput { return o } -func (o ContainerServiceLinuxProfileResponsePtrOutput) Elem() ContainerServiceLinuxProfileResponseOutput { - return o.ApplyT(func(v *ContainerServiceLinuxProfileResponse) ContainerServiceLinuxProfileResponse { +func (o AgentPoolSecurityProfileResponsePtrOutput) Elem() AgentPoolSecurityProfileResponseOutput { + return o.ApplyT(func(v *AgentPoolSecurityProfileResponse) AgentPoolSecurityProfileResponse { if v != nil { return *v } - var ret ContainerServiceLinuxProfileResponse + var ret AgentPoolSecurityProfileResponse return ret - }).(ContainerServiceLinuxProfileResponseOutput) + }).(AgentPoolSecurityProfileResponseOutput) } -// The administrator username to use for Linux VMs. -func (o ContainerServiceLinuxProfileResponsePtrOutput) AdminUsername() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceLinuxProfileResponse) *string { +// Secure Boot is a feature of Trusted Launch which ensures that only signed operating systems and drivers can boot. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfileResponsePtrOutput) EnableSecureBoot() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AgentPoolSecurityProfileResponse) *bool { if v == nil { return nil } - return &v.AdminUsername - }).(pulumi.StringPtrOutput) + return v.EnableSecureBoot + }).(pulumi.BoolPtrOutput) } -// The SSH configuration for Linux-based VMs running on Azure. -func (o ContainerServiceLinuxProfileResponsePtrOutput) Ssh() ContainerServiceSshConfigurationResponsePtrOutput { - return o.ApplyT(func(v *ContainerServiceLinuxProfileResponse) *ContainerServiceSshConfigurationResponse { +// vTPM is a Trusted Launch feature for configuring a dedicated secure vault for keys and measurements held locally on the node. For more details, see aka.ms/aks/trustedlaunch. If not specified, the default is false. +func (o AgentPoolSecurityProfileResponsePtrOutput) EnableVTPM() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AgentPoolSecurityProfileResponse) *bool { if v == nil { return nil } - return &v.Ssh - }).(ContainerServiceSshConfigurationResponsePtrOutput) + return v.EnableVTPM + }).(pulumi.BoolPtrOutput) } -// Profile of network configuration. -type ContainerServiceNetworkProfile struct { - // An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. - DnsServiceIP *string `pulumi:"dnsServiceIP"` - // IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. - IpFamilies []string `pulumi:"ipFamilies"` - // Profile of the cluster load balancer. - LoadBalancerProfile *ManagedClusterLoadBalancerProfile `pulumi:"loadBalancerProfile"` - // The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. - LoadBalancerSku *string `pulumi:"loadBalancerSku"` - // Profile of the cluster NAT gateway. - NatGatewayProfile *ManagedClusterNATGatewayProfile `pulumi:"natGatewayProfile"` - // Network dataplane used in the Kubernetes cluster. - NetworkDataplane *string `pulumi:"networkDataplane"` - // This cannot be specified if networkPlugin is anything other than 'azure'. - NetworkMode *string `pulumi:"networkMode"` - // Network plugin used for building the Kubernetes network. - NetworkPlugin *string `pulumi:"networkPlugin"` - // The mode the network plugin should use. - NetworkPluginMode *string `pulumi:"networkPluginMode"` - // Network policy used for building the Kubernetes network. - NetworkPolicy *string `pulumi:"networkPolicy"` - // This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). - OutboundType *string `pulumi:"outboundType"` - // A CIDR notation IP range from which to assign pod IPs when kubenet is used. - PodCidr *string `pulumi:"podCidr"` - // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. - PodCidrs []string `pulumi:"podCidrs"` - // A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. - ServiceCidr *string `pulumi:"serviceCidr"` - // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. - ServiceCidrs []string `pulumi:"serviceCidrs"` +// Settings for upgrading an agentpool +type AgentPoolUpgradeSettings struct { + // The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. + DrainTimeoutInMinutes *int `pulumi:"drainTimeoutInMinutes"` + // This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade + MaxSurge *string `pulumi:"maxSurge"` + // The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. + NodeSoakDurationInMinutes *int `pulumi:"nodeSoakDurationInMinutes"` } -// Defaults sets the appropriate defaults for ContainerServiceNetworkProfile -func (val *ContainerServiceNetworkProfile) Defaults() *ContainerServiceNetworkProfile { - if val == nil { - return nil - } - tmp := *val - if tmp.DnsServiceIP == nil { - dnsServiceIP_ := "10.0.0.10" - tmp.DnsServiceIP = &dnsServiceIP_ - } - tmp.LoadBalancerProfile = tmp.LoadBalancerProfile.Defaults() +// AgentPoolUpgradeSettingsInput is an input type that accepts AgentPoolUpgradeSettingsArgs and AgentPoolUpgradeSettingsOutput values. +// You can construct a concrete instance of `AgentPoolUpgradeSettingsInput` via: +// +// AgentPoolUpgradeSettingsArgs{...} +type AgentPoolUpgradeSettingsInput interface { + pulumi.Input - tmp.NatGatewayProfile = tmp.NatGatewayProfile.Defaults() + ToAgentPoolUpgradeSettingsOutput() AgentPoolUpgradeSettingsOutput + ToAgentPoolUpgradeSettingsOutputWithContext(context.Context) AgentPoolUpgradeSettingsOutput +} - if tmp.NetworkPlugin == nil { - networkPlugin_ := "kubenet" - tmp.NetworkPlugin = &networkPlugin_ - } - if tmp.OutboundType == nil { - outboundType_ := "loadBalancer" - tmp.OutboundType = &outboundType_ - } - if tmp.PodCidr == nil { - podCidr_ := "10.244.0.0/16" - tmp.PodCidr = &podCidr_ - } - if tmp.ServiceCidr == nil { - serviceCidr_ := "10.0.0.0/16" - tmp.ServiceCidr = &serviceCidr_ - } - return &tmp -} - -// ContainerServiceNetworkProfileInput is an input type that accepts ContainerServiceNetworkProfileArgs and ContainerServiceNetworkProfileOutput values. -// You can construct a concrete instance of `ContainerServiceNetworkProfileInput` via: -// -// ContainerServiceNetworkProfileArgs{...} -type ContainerServiceNetworkProfileInput interface { - pulumi.Input - - ToContainerServiceNetworkProfileOutput() ContainerServiceNetworkProfileOutput - ToContainerServiceNetworkProfileOutputWithContext(context.Context) ContainerServiceNetworkProfileOutput -} - -// Profile of network configuration. -type ContainerServiceNetworkProfileArgs struct { - // An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. - DnsServiceIP pulumi.StringPtrInput `pulumi:"dnsServiceIP"` - // IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. - IpFamilies pulumi.StringArrayInput `pulumi:"ipFamilies"` - // Profile of the cluster load balancer. - LoadBalancerProfile ManagedClusterLoadBalancerProfilePtrInput `pulumi:"loadBalancerProfile"` - // The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. - LoadBalancerSku pulumi.StringPtrInput `pulumi:"loadBalancerSku"` - // Profile of the cluster NAT gateway. - NatGatewayProfile ManagedClusterNATGatewayProfilePtrInput `pulumi:"natGatewayProfile"` - // Network dataplane used in the Kubernetes cluster. - NetworkDataplane pulumi.StringPtrInput `pulumi:"networkDataplane"` - // This cannot be specified if networkPlugin is anything other than 'azure'. - NetworkMode pulumi.StringPtrInput `pulumi:"networkMode"` - // Network plugin used for building the Kubernetes network. - NetworkPlugin pulumi.StringPtrInput `pulumi:"networkPlugin"` - // The mode the network plugin should use. - NetworkPluginMode pulumi.StringPtrInput `pulumi:"networkPluginMode"` - // Network policy used for building the Kubernetes network. - NetworkPolicy pulumi.StringPtrInput `pulumi:"networkPolicy"` - // This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). - OutboundType pulumi.StringPtrInput `pulumi:"outboundType"` - // A CIDR notation IP range from which to assign pod IPs when kubenet is used. - PodCidr pulumi.StringPtrInput `pulumi:"podCidr"` - // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. - PodCidrs pulumi.StringArrayInput `pulumi:"podCidrs"` - // A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. - ServiceCidr pulumi.StringPtrInput `pulumi:"serviceCidr"` - // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. - ServiceCidrs pulumi.StringArrayInput `pulumi:"serviceCidrs"` +// Settings for upgrading an agentpool +type AgentPoolUpgradeSettingsArgs struct { + // The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. + DrainTimeoutInMinutes pulumi.IntPtrInput `pulumi:"drainTimeoutInMinutes"` + // This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade + MaxSurge pulumi.StringPtrInput `pulumi:"maxSurge"` + // The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. + NodeSoakDurationInMinutes pulumi.IntPtrInput `pulumi:"nodeSoakDurationInMinutes"` } -// Defaults sets the appropriate defaults for ContainerServiceNetworkProfileArgs -func (val *ContainerServiceNetworkProfileArgs) Defaults() *ContainerServiceNetworkProfileArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.DnsServiceIP == nil { - tmp.DnsServiceIP = pulumi.StringPtr("10.0.0.10") - } - - if tmp.NetworkPlugin == nil { - tmp.NetworkPlugin = pulumi.StringPtr("kubenet") - } - if tmp.OutboundType == nil { - tmp.OutboundType = pulumi.StringPtr("loadBalancer") - } - if tmp.PodCidr == nil { - tmp.PodCidr = pulumi.StringPtr("10.244.0.0/16") - } - if tmp.ServiceCidr == nil { - tmp.ServiceCidr = pulumi.StringPtr("10.0.0.0/16") - } - return &tmp -} -func (ContainerServiceNetworkProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceNetworkProfile)(nil)).Elem() +func (AgentPoolUpgradeSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolUpgradeSettings)(nil)).Elem() } -func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfileOutput() ContainerServiceNetworkProfileOutput { - return i.ToContainerServiceNetworkProfileOutputWithContext(context.Background()) +func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsOutput() AgentPoolUpgradeSettingsOutput { + return i.ToAgentPoolUpgradeSettingsOutputWithContext(context.Background()) } -func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfileOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceNetworkProfileOutput) +func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolUpgradeSettingsOutput) } -func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { - return i.ToContainerServiceNetworkProfilePtrOutputWithContext(context.Background()) +func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { + return i.ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Background()) } -func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceNetworkProfileOutput).ToContainerServiceNetworkProfilePtrOutputWithContext(ctx) +func (i AgentPoolUpgradeSettingsArgs) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolUpgradeSettingsOutput).ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx) } -// ContainerServiceNetworkProfilePtrInput is an input type that accepts ContainerServiceNetworkProfileArgs, ContainerServiceNetworkProfilePtr and ContainerServiceNetworkProfilePtrOutput values. -// You can construct a concrete instance of `ContainerServiceNetworkProfilePtrInput` via: +// AgentPoolUpgradeSettingsPtrInput is an input type that accepts AgentPoolUpgradeSettingsArgs, AgentPoolUpgradeSettingsPtr and AgentPoolUpgradeSettingsPtrOutput values. +// You can construct a concrete instance of `AgentPoolUpgradeSettingsPtrInput` via: // -// ContainerServiceNetworkProfileArgs{...} +// AgentPoolUpgradeSettingsArgs{...} // // or: // // nil -type ContainerServiceNetworkProfilePtrInput interface { +type AgentPoolUpgradeSettingsPtrInput interface { pulumi.Input - ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput - ToContainerServiceNetworkProfilePtrOutputWithContext(context.Context) ContainerServiceNetworkProfilePtrOutput + ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput + ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Context) AgentPoolUpgradeSettingsPtrOutput } -type containerServiceNetworkProfilePtrType ContainerServiceNetworkProfileArgs +type agentPoolUpgradeSettingsPtrType AgentPoolUpgradeSettingsArgs -func ContainerServiceNetworkProfilePtr(v *ContainerServiceNetworkProfileArgs) ContainerServiceNetworkProfilePtrInput { - return (*containerServiceNetworkProfilePtrType)(v) +func AgentPoolUpgradeSettingsPtr(v *AgentPoolUpgradeSettingsArgs) AgentPoolUpgradeSettingsPtrInput { + return (*agentPoolUpgradeSettingsPtrType)(v) } -func (*containerServiceNetworkProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceNetworkProfile)(nil)).Elem() +func (*agentPoolUpgradeSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolUpgradeSettings)(nil)).Elem() } -func (i *containerServiceNetworkProfilePtrType) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { - return i.ToContainerServiceNetworkProfilePtrOutputWithContext(context.Background()) +func (i *agentPoolUpgradeSettingsPtrType) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { + return i.ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Background()) } -func (i *containerServiceNetworkProfilePtrType) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceNetworkProfilePtrOutput) +func (i *agentPoolUpgradeSettingsPtrType) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolUpgradeSettingsPtrOutput) } -// Profile of network configuration. -type ContainerServiceNetworkProfileOutput struct{ *pulumi.OutputState } +// Settings for upgrading an agentpool +type AgentPoolUpgradeSettingsOutput struct{ *pulumi.OutputState } -func (ContainerServiceNetworkProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceNetworkProfile)(nil)).Elem() +func (AgentPoolUpgradeSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolUpgradeSettings)(nil)).Elem() } -func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfileOutput() ContainerServiceNetworkProfileOutput { +func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsOutput() AgentPoolUpgradeSettingsOutput { return o } -func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfileOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileOutput { +func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsOutput { return o } -func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { - return o.ToContainerServiceNetworkProfilePtrOutputWithContext(context.Background()) +func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { + return o.ToAgentPoolUpgradeSettingsPtrOutputWithContext(context.Background()) } -func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerServiceNetworkProfile) *ContainerServiceNetworkProfile { +func (o AgentPoolUpgradeSettingsOutput) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPoolUpgradeSettings) *AgentPoolUpgradeSettings { return &v - }).(ContainerServiceNetworkProfilePtrOutput) + }).(AgentPoolUpgradeSettingsPtrOutput) } -// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. -func (o ContainerServiceNetworkProfileOutput) DnsServiceIP() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.DnsServiceIP }).(pulumi.StringPtrOutput) +// The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. +func (o AgentPoolUpgradeSettingsOutput) DrainTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v AgentPoolUpgradeSettings) *int { return v.DrainTimeoutInMinutes }).(pulumi.IntPtrOutput) } -// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. -func (o ContainerServiceNetworkProfileOutput) IpFamilies() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) []string { return v.IpFamilies }).(pulumi.StringArrayOutput) +// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade +func (o AgentPoolUpgradeSettingsOutput) MaxSurge() pulumi.StringPtrOutput { + return o.ApplyT(func(v AgentPoolUpgradeSettings) *string { return v.MaxSurge }).(pulumi.StringPtrOutput) } -// Profile of the cluster load balancer. -func (o ContainerServiceNetworkProfileOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfilePtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *ManagedClusterLoadBalancerProfile { - return v.LoadBalancerProfile - }).(ManagedClusterLoadBalancerProfilePtrOutput) +// The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. +func (o AgentPoolUpgradeSettingsOutput) NodeSoakDurationInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v AgentPoolUpgradeSettings) *int { return v.NodeSoakDurationInMinutes }).(pulumi.IntPtrOutput) } -// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. -func (o ContainerServiceNetworkProfileOutput) LoadBalancerSku() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.LoadBalancerSku }).(pulumi.StringPtrOutput) -} +type AgentPoolUpgradeSettingsPtrOutput struct{ *pulumi.OutputState } -// Profile of the cluster NAT gateway. -func (o ContainerServiceNetworkProfileOutput) NatGatewayProfile() ManagedClusterNATGatewayProfilePtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *ManagedClusterNATGatewayProfile { return v.NatGatewayProfile }).(ManagedClusterNATGatewayProfilePtrOutput) +func (AgentPoolUpgradeSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolUpgradeSettings)(nil)).Elem() } -// Network dataplane used in the Kubernetes cluster. -func (o ContainerServiceNetworkProfileOutput) NetworkDataplane() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkDataplane }).(pulumi.StringPtrOutput) +func (o AgentPoolUpgradeSettingsPtrOutput) ToAgentPoolUpgradeSettingsPtrOutput() AgentPoolUpgradeSettingsPtrOutput { + return o } -// This cannot be specified if networkPlugin is anything other than 'azure'. -func (o ContainerServiceNetworkProfileOutput) NetworkMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkMode }).(pulumi.StringPtrOutput) +func (o AgentPoolUpgradeSettingsPtrOutput) ToAgentPoolUpgradeSettingsPtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsPtrOutput { + return o } -// Network plugin used for building the Kubernetes network. -func (o ContainerServiceNetworkProfileOutput) NetworkPlugin() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkPlugin }).(pulumi.StringPtrOutput) +func (o AgentPoolUpgradeSettingsPtrOutput) Elem() AgentPoolUpgradeSettingsOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettings) AgentPoolUpgradeSettings { + if v != nil { + return *v + } + var ret AgentPoolUpgradeSettings + return ret + }).(AgentPoolUpgradeSettingsOutput) } -// The mode the network plugin should use. -func (o ContainerServiceNetworkProfileOutput) NetworkPluginMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkPluginMode }).(pulumi.StringPtrOutput) +// The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. +func (o AgentPoolUpgradeSettingsPtrOutput) DrainTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettings) *int { + if v == nil { + return nil + } + return v.DrainTimeoutInMinutes + }).(pulumi.IntPtrOutput) } -// Network policy used for building the Kubernetes network. -func (o ContainerServiceNetworkProfileOutput) NetworkPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkPolicy }).(pulumi.StringPtrOutput) +// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade +func (o AgentPoolUpgradeSettingsPtrOutput) MaxSurge() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettings) *string { + if v == nil { + return nil + } + return v.MaxSurge + }).(pulumi.StringPtrOutput) } -// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). -func (o ContainerServiceNetworkProfileOutput) OutboundType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.OutboundType }).(pulumi.StringPtrOutput) +// The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. +func (o AgentPoolUpgradeSettingsPtrOutput) NodeSoakDurationInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettings) *int { + if v == nil { + return nil + } + return v.NodeSoakDurationInMinutes + }).(pulumi.IntPtrOutput) } -// A CIDR notation IP range from which to assign pod IPs when kubenet is used. -func (o ContainerServiceNetworkProfileOutput) PodCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.PodCidr }).(pulumi.StringPtrOutput) +// Settings for upgrading an agentpool +type AgentPoolUpgradeSettingsResponse struct { + // The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. + DrainTimeoutInMinutes *int `pulumi:"drainTimeoutInMinutes"` + // This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade + MaxSurge *string `pulumi:"maxSurge"` + // The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. + NodeSoakDurationInMinutes *int `pulumi:"nodeSoakDurationInMinutes"` } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. -func (o ContainerServiceNetworkProfileOutput) PodCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) []string { return v.PodCidrs }).(pulumi.StringArrayOutput) -} +// Settings for upgrading an agentpool +type AgentPoolUpgradeSettingsResponseOutput struct{ *pulumi.OutputState } -// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfileOutput) ServiceCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.ServiceCidr }).(pulumi.StringPtrOutput) +func (AgentPoolUpgradeSettingsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolUpgradeSettingsResponse)(nil)).Elem() } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfileOutput) ServiceCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfile) []string { return v.ServiceCidrs }).(pulumi.StringArrayOutput) +func (o AgentPoolUpgradeSettingsResponseOutput) ToAgentPoolUpgradeSettingsResponseOutput() AgentPoolUpgradeSettingsResponseOutput { + return o } -type ContainerServiceNetworkProfilePtrOutput struct{ *pulumi.OutputState } +func (o AgentPoolUpgradeSettingsResponseOutput) ToAgentPoolUpgradeSettingsResponseOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsResponseOutput { + return o +} -func (ContainerServiceNetworkProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceNetworkProfile)(nil)).Elem() +// The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. +func (o AgentPoolUpgradeSettingsResponseOutput) DrainTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v AgentPoolUpgradeSettingsResponse) *int { return v.DrainTimeoutInMinutes }).(pulumi.IntPtrOutput) } -func (o ContainerServiceNetworkProfilePtrOutput) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { - return o +// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade +func (o AgentPoolUpgradeSettingsResponseOutput) MaxSurge() pulumi.StringPtrOutput { + return o.ApplyT(func(v AgentPoolUpgradeSettingsResponse) *string { return v.MaxSurge }).(pulumi.StringPtrOutput) } -func (o ContainerServiceNetworkProfilePtrOutput) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { - return o +// The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. +func (o AgentPoolUpgradeSettingsResponseOutput) NodeSoakDurationInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v AgentPoolUpgradeSettingsResponse) *int { return v.NodeSoakDurationInMinutes }).(pulumi.IntPtrOutput) } -func (o ContainerServiceNetworkProfilePtrOutput) Elem() ContainerServiceNetworkProfileOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) ContainerServiceNetworkProfile { - if v != nil { - return *v - } - var ret ContainerServiceNetworkProfile - return ret - }).(ContainerServiceNetworkProfileOutput) -} +type AgentPoolUpgradeSettingsResponsePtrOutput struct{ *pulumi.OutputState } -// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. -func (o ContainerServiceNetworkProfilePtrOutput) DnsServiceIP() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.DnsServiceIP - }).(pulumi.StringPtrOutput) +func (AgentPoolUpgradeSettingsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolUpgradeSettingsResponse)(nil)).Elem() } -// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. -func (o ContainerServiceNetworkProfilePtrOutput) IpFamilies() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) []string { - if v == nil { - return nil - } - return v.IpFamilies - }).(pulumi.StringArrayOutput) +func (o AgentPoolUpgradeSettingsResponsePtrOutput) ToAgentPoolUpgradeSettingsResponsePtrOutput() AgentPoolUpgradeSettingsResponsePtrOutput { + return o } -// Profile of the cluster load balancer. -func (o ContainerServiceNetworkProfilePtrOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfilePtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *ManagedClusterLoadBalancerProfile { - if v == nil { - return nil - } - return v.LoadBalancerProfile - }).(ManagedClusterLoadBalancerProfilePtrOutput) +func (o AgentPoolUpgradeSettingsResponsePtrOutput) ToAgentPoolUpgradeSettingsResponsePtrOutputWithContext(ctx context.Context) AgentPoolUpgradeSettingsResponsePtrOutput { + return o } -// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. -func (o ContainerServiceNetworkProfilePtrOutput) LoadBalancerSku() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil +func (o AgentPoolUpgradeSettingsResponsePtrOutput) Elem() AgentPoolUpgradeSettingsResponseOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettingsResponse) AgentPoolUpgradeSettingsResponse { + if v != nil { + return *v } - return v.LoadBalancerSku - }).(pulumi.StringPtrOutput) + var ret AgentPoolUpgradeSettingsResponse + return ret + }).(AgentPoolUpgradeSettingsResponseOutput) } -// Profile of the cluster NAT gateway. -func (o ContainerServiceNetworkProfilePtrOutput) NatGatewayProfile() ManagedClusterNATGatewayProfilePtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *ManagedClusterNATGatewayProfile { +// The amount of time (in minutes) to wait on eviction of pods and graceful termination per node. This eviction wait time honors waiting on pod disruption budgets. If this time is exceeded, the upgrade fails. If not specified, the default is 30 minutes. +func (o AgentPoolUpgradeSettingsResponsePtrOutput) DrainTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettingsResponse) *int { if v == nil { return nil } - return v.NatGatewayProfile - }).(ManagedClusterNATGatewayProfilePtrOutput) + return v.DrainTimeoutInMinutes + }).(pulumi.IntPtrOutput) } -// Network dataplane used in the Kubernetes cluster. -func (o ContainerServiceNetworkProfilePtrOutput) NetworkDataplane() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { +// This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade +func (o AgentPoolUpgradeSettingsResponsePtrOutput) MaxSurge() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettingsResponse) *string { if v == nil { return nil } - return v.NetworkDataplane + return v.MaxSurge }).(pulumi.StringPtrOutput) } -// This cannot be specified if networkPlugin is anything other than 'azure'. -func (o ContainerServiceNetworkProfilePtrOutput) NetworkMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { +// The amount of time (in minutes) to wait after draining a node and before reimaging it and moving on to next node. If not specified, the default is 0 minutes. +func (o AgentPoolUpgradeSettingsResponsePtrOutput) NodeSoakDurationInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *AgentPoolUpgradeSettingsResponse) *int { if v == nil { return nil } - return v.NetworkMode - }).(pulumi.StringPtrOutput) + return v.NodeSoakDurationInMinutes + }).(pulumi.IntPtrOutput) } -// Network plugin used for building the Kubernetes network. -func (o ContainerServiceNetworkProfilePtrOutput) NetworkPlugin() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.NetworkPlugin - }).(pulumi.StringPtrOutput) +// The Windows agent pool's specific profile. +type AgentPoolWindowsProfile struct { + // The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. + DisableOutboundNat *bool `pulumi:"disableOutboundNat"` } -// The mode the network plugin should use. -func (o ContainerServiceNetworkProfilePtrOutput) NetworkPluginMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.NetworkPluginMode - }).(pulumi.StringPtrOutput) +// AgentPoolWindowsProfileInput is an input type that accepts AgentPoolWindowsProfileArgs and AgentPoolWindowsProfileOutput values. +// You can construct a concrete instance of `AgentPoolWindowsProfileInput` via: +// +// AgentPoolWindowsProfileArgs{...} +type AgentPoolWindowsProfileInput interface { + pulumi.Input + + ToAgentPoolWindowsProfileOutput() AgentPoolWindowsProfileOutput + ToAgentPoolWindowsProfileOutputWithContext(context.Context) AgentPoolWindowsProfileOutput } -// Network policy used for building the Kubernetes network. -func (o ContainerServiceNetworkProfilePtrOutput) NetworkPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.NetworkPolicy - }).(pulumi.StringPtrOutput) +// The Windows agent pool's specific profile. +type AgentPoolWindowsProfileArgs struct { + // The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. + DisableOutboundNat pulumi.BoolPtrInput `pulumi:"disableOutboundNat"` } -// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). -func (o ContainerServiceNetworkProfilePtrOutput) OutboundType() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.OutboundType - }).(pulumi.StringPtrOutput) +func (AgentPoolWindowsProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolWindowsProfile)(nil)).Elem() } -// A CIDR notation IP range from which to assign pod IPs when kubenet is used. -func (o ContainerServiceNetworkProfilePtrOutput) PodCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.PodCidr - }).(pulumi.StringPtrOutput) +func (i AgentPoolWindowsProfileArgs) ToAgentPoolWindowsProfileOutput() AgentPoolWindowsProfileOutput { + return i.ToAgentPoolWindowsProfileOutputWithContext(context.Background()) } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. -func (o ContainerServiceNetworkProfilePtrOutput) PodCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) []string { - if v == nil { - return nil - } - return v.PodCidrs - }).(pulumi.StringArrayOutput) +func (i AgentPoolWindowsProfileArgs) ToAgentPoolWindowsProfileOutputWithContext(ctx context.Context) AgentPoolWindowsProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolWindowsProfileOutput) } -// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfilePtrOutput) ServiceCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { - if v == nil { - return nil - } - return v.ServiceCidr - }).(pulumi.StringPtrOutput) +func (i AgentPoolWindowsProfileArgs) ToAgentPoolWindowsProfilePtrOutput() AgentPoolWindowsProfilePtrOutput { + return i.ToAgentPoolWindowsProfilePtrOutputWithContext(context.Background()) } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfilePtrOutput) ServiceCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfile) []string { - if v == nil { - return nil - } - return v.ServiceCidrs - }).(pulumi.StringArrayOutput) +func (i AgentPoolWindowsProfileArgs) ToAgentPoolWindowsProfilePtrOutputWithContext(ctx context.Context) AgentPoolWindowsProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolWindowsProfileOutput).ToAgentPoolWindowsProfilePtrOutputWithContext(ctx) } -// Profile of network configuration. -type ContainerServiceNetworkProfileResponse struct { - // An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. - DnsServiceIP *string `pulumi:"dnsServiceIP"` - // IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. - IpFamilies []string `pulumi:"ipFamilies"` - // Profile of the cluster load balancer. - LoadBalancerProfile *ManagedClusterLoadBalancerProfileResponse `pulumi:"loadBalancerProfile"` - // The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. - LoadBalancerSku *string `pulumi:"loadBalancerSku"` - // Profile of the cluster NAT gateway. - NatGatewayProfile *ManagedClusterNATGatewayProfileResponse `pulumi:"natGatewayProfile"` - // Network dataplane used in the Kubernetes cluster. - NetworkDataplane *string `pulumi:"networkDataplane"` - // This cannot be specified if networkPlugin is anything other than 'azure'. - NetworkMode *string `pulumi:"networkMode"` - // Network plugin used for building the Kubernetes network. - NetworkPlugin *string `pulumi:"networkPlugin"` - // The mode the network plugin should use. - NetworkPluginMode *string `pulumi:"networkPluginMode"` - // Network policy used for building the Kubernetes network. - NetworkPolicy *string `pulumi:"networkPolicy"` - // This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). - OutboundType *string `pulumi:"outboundType"` - // A CIDR notation IP range from which to assign pod IPs when kubenet is used. - PodCidr *string `pulumi:"podCidr"` - // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. - PodCidrs []string `pulumi:"podCidrs"` - // A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. - ServiceCidr *string `pulumi:"serviceCidr"` - // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. - ServiceCidrs []string `pulumi:"serviceCidrs"` +// AgentPoolWindowsProfilePtrInput is an input type that accepts AgentPoolWindowsProfileArgs, AgentPoolWindowsProfilePtr and AgentPoolWindowsProfilePtrOutput values. +// You can construct a concrete instance of `AgentPoolWindowsProfilePtrInput` via: +// +// AgentPoolWindowsProfileArgs{...} +// +// or: +// +// nil +type AgentPoolWindowsProfilePtrInput interface { + pulumi.Input + + ToAgentPoolWindowsProfilePtrOutput() AgentPoolWindowsProfilePtrOutput + ToAgentPoolWindowsProfilePtrOutputWithContext(context.Context) AgentPoolWindowsProfilePtrOutput } -// Defaults sets the appropriate defaults for ContainerServiceNetworkProfileResponse -func (val *ContainerServiceNetworkProfileResponse) Defaults() *ContainerServiceNetworkProfileResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.DnsServiceIP == nil { - dnsServiceIP_ := "10.0.0.10" - tmp.DnsServiceIP = &dnsServiceIP_ - } - tmp.LoadBalancerProfile = tmp.LoadBalancerProfile.Defaults() +type agentPoolWindowsProfilePtrType AgentPoolWindowsProfileArgs - tmp.NatGatewayProfile = tmp.NatGatewayProfile.Defaults() +func AgentPoolWindowsProfilePtr(v *AgentPoolWindowsProfileArgs) AgentPoolWindowsProfilePtrInput { + return (*agentPoolWindowsProfilePtrType)(v) +} - if tmp.NetworkPlugin == nil { - networkPlugin_ := "kubenet" - tmp.NetworkPlugin = &networkPlugin_ - } - if tmp.OutboundType == nil { - outboundType_ := "loadBalancer" - tmp.OutboundType = &outboundType_ - } - if tmp.PodCidr == nil { - podCidr_ := "10.244.0.0/16" - tmp.PodCidr = &podCidr_ - } - if tmp.ServiceCidr == nil { - serviceCidr_ := "10.0.0.0/16" - tmp.ServiceCidr = &serviceCidr_ - } - return &tmp +func (*agentPoolWindowsProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolWindowsProfile)(nil)).Elem() } -// Profile of network configuration. -type ContainerServiceNetworkProfileResponseOutput struct{ *pulumi.OutputState } +func (i *agentPoolWindowsProfilePtrType) ToAgentPoolWindowsProfilePtrOutput() AgentPoolWindowsProfilePtrOutput { + return i.ToAgentPoolWindowsProfilePtrOutputWithContext(context.Background()) +} -func (ContainerServiceNetworkProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceNetworkProfileResponse)(nil)).Elem() +func (i *agentPoolWindowsProfilePtrType) ToAgentPoolWindowsProfilePtrOutputWithContext(ctx context.Context) AgentPoolWindowsProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AgentPoolWindowsProfilePtrOutput) } -func (o ContainerServiceNetworkProfileResponseOutput) ToContainerServiceNetworkProfileResponseOutput() ContainerServiceNetworkProfileResponseOutput { - return o +// The Windows agent pool's specific profile. +type AgentPoolWindowsProfileOutput struct{ *pulumi.OutputState } + +func (AgentPoolWindowsProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolWindowsProfile)(nil)).Elem() } -func (o ContainerServiceNetworkProfileResponseOutput) ToContainerServiceNetworkProfileResponseOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileResponseOutput { +func (o AgentPoolWindowsProfileOutput) ToAgentPoolWindowsProfileOutput() AgentPoolWindowsProfileOutput { return o } -// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. -func (o ContainerServiceNetworkProfileResponseOutput) DnsServiceIP() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.DnsServiceIP }).(pulumi.StringPtrOutput) +func (o AgentPoolWindowsProfileOutput) ToAgentPoolWindowsProfileOutputWithContext(ctx context.Context) AgentPoolWindowsProfileOutput { + return o } -// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. -func (o ContainerServiceNetworkProfileResponseOutput) IpFamilies() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) []string { return v.IpFamilies }).(pulumi.StringArrayOutput) +func (o AgentPoolWindowsProfileOutput) ToAgentPoolWindowsProfilePtrOutput() AgentPoolWindowsProfilePtrOutput { + return o.ToAgentPoolWindowsProfilePtrOutputWithContext(context.Background()) } -// Profile of the cluster load balancer. -func (o ContainerServiceNetworkProfileResponseOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfileResponsePtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *ManagedClusterLoadBalancerProfileResponse { - return v.LoadBalancerProfile - }).(ManagedClusterLoadBalancerProfileResponsePtrOutput) +func (o AgentPoolWindowsProfileOutput) ToAgentPoolWindowsProfilePtrOutputWithContext(ctx context.Context) AgentPoolWindowsProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AgentPoolWindowsProfile) *AgentPoolWindowsProfile { + return &v + }).(AgentPoolWindowsProfilePtrOutput) } -// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. -func (o ContainerServiceNetworkProfileResponseOutput) LoadBalancerSku() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.LoadBalancerSku }).(pulumi.StringPtrOutput) +// The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. +func (o AgentPoolWindowsProfileOutput) DisableOutboundNat() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AgentPoolWindowsProfile) *bool { return v.DisableOutboundNat }).(pulumi.BoolPtrOutput) } -// Profile of the cluster NAT gateway. -func (o ContainerServiceNetworkProfileResponseOutput) NatGatewayProfile() ManagedClusterNATGatewayProfileResponsePtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *ManagedClusterNATGatewayProfileResponse { - return v.NatGatewayProfile - }).(ManagedClusterNATGatewayProfileResponsePtrOutput) +type AgentPoolWindowsProfilePtrOutput struct{ *pulumi.OutputState } + +func (AgentPoolWindowsProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolWindowsProfile)(nil)).Elem() } -// Network dataplane used in the Kubernetes cluster. -func (o ContainerServiceNetworkProfileResponseOutput) NetworkDataplane() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkDataplane }).(pulumi.StringPtrOutput) +func (o AgentPoolWindowsProfilePtrOutput) ToAgentPoolWindowsProfilePtrOutput() AgentPoolWindowsProfilePtrOutput { + return o } -// This cannot be specified if networkPlugin is anything other than 'azure'. -func (o ContainerServiceNetworkProfileResponseOutput) NetworkMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkMode }).(pulumi.StringPtrOutput) +func (o AgentPoolWindowsProfilePtrOutput) ToAgentPoolWindowsProfilePtrOutputWithContext(ctx context.Context) AgentPoolWindowsProfilePtrOutput { + return o } -// Network plugin used for building the Kubernetes network. -func (o ContainerServiceNetworkProfileResponseOutput) NetworkPlugin() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkPlugin }).(pulumi.StringPtrOutput) +func (o AgentPoolWindowsProfilePtrOutput) Elem() AgentPoolWindowsProfileOutput { + return o.ApplyT(func(v *AgentPoolWindowsProfile) AgentPoolWindowsProfile { + if v != nil { + return *v + } + var ret AgentPoolWindowsProfile + return ret + }).(AgentPoolWindowsProfileOutput) } -// The mode the network plugin should use. -func (o ContainerServiceNetworkProfileResponseOutput) NetworkPluginMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkPluginMode }).(pulumi.StringPtrOutput) +// The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. +func (o AgentPoolWindowsProfilePtrOutput) DisableOutboundNat() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AgentPoolWindowsProfile) *bool { + if v == nil { + return nil + } + return v.DisableOutboundNat + }).(pulumi.BoolPtrOutput) } -// Network policy used for building the Kubernetes network. -func (o ContainerServiceNetworkProfileResponseOutput) NetworkPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkPolicy }).(pulumi.StringPtrOutput) +// The Windows agent pool's specific profile. +type AgentPoolWindowsProfileResponse struct { + // The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. + DisableOutboundNat *bool `pulumi:"disableOutboundNat"` } -// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). -func (o ContainerServiceNetworkProfileResponseOutput) OutboundType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.OutboundType }).(pulumi.StringPtrOutput) -} +// The Windows agent pool's specific profile. +type AgentPoolWindowsProfileResponseOutput struct{ *pulumi.OutputState } -// A CIDR notation IP range from which to assign pod IPs when kubenet is used. -func (o ContainerServiceNetworkProfileResponseOutput) PodCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.PodCidr }).(pulumi.StringPtrOutput) +func (AgentPoolWindowsProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AgentPoolWindowsProfileResponse)(nil)).Elem() } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. -func (o ContainerServiceNetworkProfileResponseOutput) PodCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) []string { return v.PodCidrs }).(pulumi.StringArrayOutput) +func (o AgentPoolWindowsProfileResponseOutput) ToAgentPoolWindowsProfileResponseOutput() AgentPoolWindowsProfileResponseOutput { + return o } -// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfileResponseOutput) ServiceCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.ServiceCidr }).(pulumi.StringPtrOutput) +func (o AgentPoolWindowsProfileResponseOutput) ToAgentPoolWindowsProfileResponseOutputWithContext(ctx context.Context) AgentPoolWindowsProfileResponseOutput { + return o } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfileResponseOutput) ServiceCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) []string { return v.ServiceCidrs }).(pulumi.StringArrayOutput) +// The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. +func (o AgentPoolWindowsProfileResponseOutput) DisableOutboundNat() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AgentPoolWindowsProfileResponse) *bool { return v.DisableOutboundNat }).(pulumi.BoolPtrOutput) } -type ContainerServiceNetworkProfileResponsePtrOutput struct{ *pulumi.OutputState } +type AgentPoolWindowsProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ContainerServiceNetworkProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceNetworkProfileResponse)(nil)).Elem() +func (AgentPoolWindowsProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AgentPoolWindowsProfileResponse)(nil)).Elem() } -func (o ContainerServiceNetworkProfileResponsePtrOutput) ToContainerServiceNetworkProfileResponsePtrOutput() ContainerServiceNetworkProfileResponsePtrOutput { +func (o AgentPoolWindowsProfileResponsePtrOutput) ToAgentPoolWindowsProfileResponsePtrOutput() AgentPoolWindowsProfileResponsePtrOutput { return o } -func (o ContainerServiceNetworkProfileResponsePtrOutput) ToContainerServiceNetworkProfileResponsePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileResponsePtrOutput { +func (o AgentPoolWindowsProfileResponsePtrOutput) ToAgentPoolWindowsProfileResponsePtrOutputWithContext(ctx context.Context) AgentPoolWindowsProfileResponsePtrOutput { return o } -func (o ContainerServiceNetworkProfileResponsePtrOutput) Elem() ContainerServiceNetworkProfileResponseOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) ContainerServiceNetworkProfileResponse { +func (o AgentPoolWindowsProfileResponsePtrOutput) Elem() AgentPoolWindowsProfileResponseOutput { + return o.ApplyT(func(v *AgentPoolWindowsProfileResponse) AgentPoolWindowsProfileResponse { if v != nil { return *v } - var ret ContainerServiceNetworkProfileResponse + var ret AgentPoolWindowsProfileResponse return ret - }).(ContainerServiceNetworkProfileResponseOutput) + }).(AgentPoolWindowsProfileResponseOutput) } -// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. -func (o ContainerServiceNetworkProfileResponsePtrOutput) DnsServiceIP() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { +// The default value is false. Outbound NAT can only be disabled if the cluster outboundType is NAT Gateway and the Windows agent pool does not have node public IP enabled. +func (o AgentPoolWindowsProfileResponsePtrOutput) DisableOutboundNat() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AgentPoolWindowsProfileResponse) *bool { if v == nil { return nil } - return v.DnsServiceIP - }).(pulumi.StringPtrOutput) + return v.DisableOutboundNat + }).(pulumi.BoolPtrOutput) } -// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. -func (o ContainerServiceNetworkProfileResponsePtrOutput) IpFamilies() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) []string { - if v == nil { - return nil - } - return v.IpFamilies - }).(pulumi.StringArrayOutput) +// Azure Key Vault key management service settings for the security profile. +type AzureKeyVaultKms struct { + // Whether to enable Azure Key Vault key management service. The default is false. + Enabled *bool `pulumi:"enabled"` + // Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. + KeyId *string `pulumi:"keyId"` + // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. + KeyVaultNetworkAccess *string `pulumi:"keyVaultNetworkAccess"` + // Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. + KeyVaultResourceId *string `pulumi:"keyVaultResourceId"` } -// Profile of the cluster load balancer. -func (o ContainerServiceNetworkProfileResponsePtrOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfileResponsePtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *ManagedClusterLoadBalancerProfileResponse { - if v == nil { - return nil - } - return v.LoadBalancerProfile - }).(ManagedClusterLoadBalancerProfileResponsePtrOutput) +// Defaults sets the appropriate defaults for AzureKeyVaultKms +func (val *AzureKeyVaultKms) Defaults() *AzureKeyVaultKms { + if val == nil { + return nil + } + tmp := *val + if tmp.KeyVaultNetworkAccess == nil { + keyVaultNetworkAccess_ := "Public" + tmp.KeyVaultNetworkAccess = &keyVaultNetworkAccess_ + } + return &tmp } -// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. -func (o ContainerServiceNetworkProfileResponsePtrOutput) LoadBalancerSku() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.LoadBalancerSku - }).(pulumi.StringPtrOutput) -} +// AzureKeyVaultKmsInput is an input type that accepts AzureKeyVaultKmsArgs and AzureKeyVaultKmsOutput values. +// You can construct a concrete instance of `AzureKeyVaultKmsInput` via: +// +// AzureKeyVaultKmsArgs{...} +type AzureKeyVaultKmsInput interface { + pulumi.Input -// Profile of the cluster NAT gateway. -func (o ContainerServiceNetworkProfileResponsePtrOutput) NatGatewayProfile() ManagedClusterNATGatewayProfileResponsePtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *ManagedClusterNATGatewayProfileResponse { - if v == nil { - return nil - } - return v.NatGatewayProfile - }).(ManagedClusterNATGatewayProfileResponsePtrOutput) + ToAzureKeyVaultKmsOutput() AzureKeyVaultKmsOutput + ToAzureKeyVaultKmsOutputWithContext(context.Context) AzureKeyVaultKmsOutput } -// Network dataplane used in the Kubernetes cluster. -func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkDataplane() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.NetworkDataplane - }).(pulumi.StringPtrOutput) +// Azure Key Vault key management service settings for the security profile. +type AzureKeyVaultKmsArgs struct { + // Whether to enable Azure Key Vault key management service. The default is false. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. + KeyId pulumi.StringPtrInput `pulumi:"keyId"` + // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. + KeyVaultNetworkAccess pulumi.StringPtrInput `pulumi:"keyVaultNetworkAccess"` + // Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. + KeyVaultResourceId pulumi.StringPtrInput `pulumi:"keyVaultResourceId"` } -// This cannot be specified if networkPlugin is anything other than 'azure'. -func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.NetworkMode - }).(pulumi.StringPtrOutput) +// Defaults sets the appropriate defaults for AzureKeyVaultKmsArgs +func (val *AzureKeyVaultKmsArgs) Defaults() *AzureKeyVaultKmsArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.KeyVaultNetworkAccess == nil { + tmp.KeyVaultNetworkAccess = pulumi.StringPtr("Public") + } + return &tmp +} +func (AzureKeyVaultKmsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*AzureKeyVaultKms)(nil)).Elem() } -// Network plugin used for building the Kubernetes network. -func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkPlugin() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.NetworkPlugin - }).(pulumi.StringPtrOutput) +func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsOutput() AzureKeyVaultKmsOutput { + return i.ToAzureKeyVaultKmsOutputWithContext(context.Background()) } -// The mode the network plugin should use. -func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkPluginMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.NetworkPluginMode - }).(pulumi.StringPtrOutput) +func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsOutputWithContext(ctx context.Context) AzureKeyVaultKmsOutput { + return pulumi.ToOutputWithContext(ctx, i).(AzureKeyVaultKmsOutput) } -// Network policy used for building the Kubernetes network. -func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.NetworkPolicy - }).(pulumi.StringPtrOutput) +func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { + return i.ToAzureKeyVaultKmsPtrOutputWithContext(context.Background()) } -// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). -func (o ContainerServiceNetworkProfileResponsePtrOutput) OutboundType() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.OutboundType - }).(pulumi.StringPtrOutput) +func (i AzureKeyVaultKmsArgs) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AzureKeyVaultKmsOutput).ToAzureKeyVaultKmsPtrOutputWithContext(ctx) } -// A CIDR notation IP range from which to assign pod IPs when kubenet is used. -func (o ContainerServiceNetworkProfileResponsePtrOutput) PodCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.PodCidr - }).(pulumi.StringPtrOutput) +// AzureKeyVaultKmsPtrInput is an input type that accepts AzureKeyVaultKmsArgs, AzureKeyVaultKmsPtr and AzureKeyVaultKmsPtrOutput values. +// You can construct a concrete instance of `AzureKeyVaultKmsPtrInput` via: +// +// AzureKeyVaultKmsArgs{...} +// +// or: +// +// nil +type AzureKeyVaultKmsPtrInput interface { + pulumi.Input + + ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput + ToAzureKeyVaultKmsPtrOutputWithContext(context.Context) AzureKeyVaultKmsPtrOutput } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. -func (o ContainerServiceNetworkProfileResponsePtrOutput) PodCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) []string { - if v == nil { - return nil - } - return v.PodCidrs - }).(pulumi.StringArrayOutput) +type azureKeyVaultKmsPtrType AzureKeyVaultKmsArgs + +func AzureKeyVaultKmsPtr(v *AzureKeyVaultKmsArgs) AzureKeyVaultKmsPtrInput { + return (*azureKeyVaultKmsPtrType)(v) } -// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfileResponsePtrOutput) ServiceCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { - if v == nil { - return nil - } - return v.ServiceCidr - }).(pulumi.StringPtrOutput) +func (*azureKeyVaultKmsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**AzureKeyVaultKms)(nil)).Elem() } -// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. -func (o ContainerServiceNetworkProfileResponsePtrOutput) ServiceCidrs() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) []string { - if v == nil { - return nil - } - return v.ServiceCidrs - }).(pulumi.StringArrayOutput) +func (i *azureKeyVaultKmsPtrType) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { + return i.ToAzureKeyVaultKmsPtrOutputWithContext(context.Background()) } -// SSH configuration for Linux-based VMs running on Azure. -type ContainerServiceSshConfiguration struct { - // The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. - PublicKeys []ContainerServiceSshPublicKey `pulumi:"publicKeys"` +func (i *azureKeyVaultKmsPtrType) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(AzureKeyVaultKmsPtrOutput) } -// ContainerServiceSshConfigurationInput is an input type that accepts ContainerServiceSshConfigurationArgs and ContainerServiceSshConfigurationOutput values. -// You can construct a concrete instance of `ContainerServiceSshConfigurationInput` via: -// -// ContainerServiceSshConfigurationArgs{...} -type ContainerServiceSshConfigurationInput interface { - pulumi.Input +// Azure Key Vault key management service settings for the security profile. +type AzureKeyVaultKmsOutput struct{ *pulumi.OutputState } - ToContainerServiceSshConfigurationOutput() ContainerServiceSshConfigurationOutput - ToContainerServiceSshConfigurationOutputWithContext(context.Context) ContainerServiceSshConfigurationOutput +func (AzureKeyVaultKmsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AzureKeyVaultKms)(nil)).Elem() } -// SSH configuration for Linux-based VMs running on Azure. -type ContainerServiceSshConfigurationArgs struct { - // The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. - PublicKeys ContainerServiceSshPublicKeyArrayInput `pulumi:"publicKeys"` +func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsOutput() AzureKeyVaultKmsOutput { + return o } -func (ContainerServiceSshConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceSshConfiguration)(nil)).Elem() +func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsOutputWithContext(ctx context.Context) AzureKeyVaultKmsOutput { + return o } -func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationOutput() ContainerServiceSshConfigurationOutput { - return i.ToContainerServiceSshConfigurationOutputWithContext(context.Background()) +func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { + return o.ToAzureKeyVaultKmsPtrOutputWithContext(context.Background()) } -func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshConfigurationOutput) +func (o AzureKeyVaultKmsOutput) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v AzureKeyVaultKms) *AzureKeyVaultKms { + return &v + }).(AzureKeyVaultKmsPtrOutput) } -func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { - return i.ToContainerServiceSshConfigurationPtrOutputWithContext(context.Background()) +// Whether to enable Azure Key Vault key management service. The default is false. +func (o AzureKeyVaultKmsOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKms) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshConfigurationOutput).ToContainerServiceSshConfigurationPtrOutputWithContext(ctx) +// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. +func (o AzureKeyVaultKmsOutput) KeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKms) *string { return v.KeyId }).(pulumi.StringPtrOutput) } -// ContainerServiceSshConfigurationPtrInput is an input type that accepts ContainerServiceSshConfigurationArgs, ContainerServiceSshConfigurationPtr and ContainerServiceSshConfigurationPtrOutput values. -// You can construct a concrete instance of `ContainerServiceSshConfigurationPtrInput` via: -// -// ContainerServiceSshConfigurationArgs{...} -// -// or: -// -// nil -type ContainerServiceSshConfigurationPtrInput interface { - pulumi.Input +// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. +func (o AzureKeyVaultKmsOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKms) *string { return v.KeyVaultNetworkAccess }).(pulumi.StringPtrOutput) +} - ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput - ToContainerServiceSshConfigurationPtrOutputWithContext(context.Context) ContainerServiceSshConfigurationPtrOutput +// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. +func (o AzureKeyVaultKmsOutput) KeyVaultResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKms) *string { return v.KeyVaultResourceId }).(pulumi.StringPtrOutput) } -type containerServiceSshConfigurationPtrType ContainerServiceSshConfigurationArgs +type AzureKeyVaultKmsPtrOutput struct{ *pulumi.OutputState } -func ContainerServiceSshConfigurationPtr(v *ContainerServiceSshConfigurationArgs) ContainerServiceSshConfigurationPtrInput { - return (*containerServiceSshConfigurationPtrType)(v) +func (AzureKeyVaultKmsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AzureKeyVaultKms)(nil)).Elem() } -func (*containerServiceSshConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceSshConfiguration)(nil)).Elem() +func (o AzureKeyVaultKmsPtrOutput) ToAzureKeyVaultKmsPtrOutput() AzureKeyVaultKmsPtrOutput { + return o } -func (i *containerServiceSshConfigurationPtrType) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { - return i.ToContainerServiceSshConfigurationPtrOutputWithContext(context.Background()) +func (o AzureKeyVaultKmsPtrOutput) ToAzureKeyVaultKmsPtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsPtrOutput { + return o } -func (i *containerServiceSshConfigurationPtrType) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshConfigurationPtrOutput) +func (o AzureKeyVaultKmsPtrOutput) Elem() AzureKeyVaultKmsOutput { + return o.ApplyT(func(v *AzureKeyVaultKms) AzureKeyVaultKms { + if v != nil { + return *v + } + var ret AzureKeyVaultKms + return ret + }).(AzureKeyVaultKmsOutput) } -// SSH configuration for Linux-based VMs running on Azure. -type ContainerServiceSshConfigurationOutput struct{ *pulumi.OutputState } +// Whether to enable Azure Key Vault key management service. The default is false. +func (o AzureKeyVaultKmsPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKms) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} -func (ContainerServiceSshConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceSshConfiguration)(nil)).Elem() +// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. +func (o AzureKeyVaultKmsPtrOutput) KeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKms) *string { + if v == nil { + return nil + } + return v.KeyId + }).(pulumi.StringPtrOutput) } -func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationOutput() ContainerServiceSshConfigurationOutput { +// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. +func (o AzureKeyVaultKmsPtrOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKms) *string { + if v == nil { + return nil + } + return v.KeyVaultNetworkAccess + }).(pulumi.StringPtrOutput) +} + +// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. +func (o AzureKeyVaultKmsPtrOutput) KeyVaultResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKms) *string { + if v == nil { + return nil + } + return v.KeyVaultResourceId + }).(pulumi.StringPtrOutput) +} + +// Azure Key Vault key management service settings for the security profile. +type AzureKeyVaultKmsResponse struct { + // Whether to enable Azure Key Vault key management service. The default is false. + Enabled *bool `pulumi:"enabled"` + // Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. + KeyId *string `pulumi:"keyId"` + // Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. + KeyVaultNetworkAccess *string `pulumi:"keyVaultNetworkAccess"` + // Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. + KeyVaultResourceId *string `pulumi:"keyVaultResourceId"` +} + +// Defaults sets the appropriate defaults for AzureKeyVaultKmsResponse +func (val *AzureKeyVaultKmsResponse) Defaults() *AzureKeyVaultKmsResponse { + if val == nil { + return nil + } + tmp := *val + if tmp.KeyVaultNetworkAccess == nil { + keyVaultNetworkAccess_ := "Public" + tmp.KeyVaultNetworkAccess = &keyVaultNetworkAccess_ + } + return &tmp +} + +// Azure Key Vault key management service settings for the security profile. +type AzureKeyVaultKmsResponseOutput struct{ *pulumi.OutputState } + +func (AzureKeyVaultKmsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*AzureKeyVaultKmsResponse)(nil)).Elem() +} + +func (o AzureKeyVaultKmsResponseOutput) ToAzureKeyVaultKmsResponseOutput() AzureKeyVaultKmsResponseOutput { return o } -func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationOutput { +func (o AzureKeyVaultKmsResponseOutput) ToAzureKeyVaultKmsResponseOutputWithContext(ctx context.Context) AzureKeyVaultKmsResponseOutput { return o } -func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { - return o.ToContainerServiceSshConfigurationPtrOutputWithContext(context.Background()) +// Whether to enable Azure Key Vault key management service. The default is false. +func (o AzureKeyVaultKmsResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKmsResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerServiceSshConfiguration) *ContainerServiceSshConfiguration { - return &v - }).(ContainerServiceSshConfigurationPtrOutput) +// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. +func (o AzureKeyVaultKmsResponseOutput) KeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKmsResponse) *string { return v.KeyId }).(pulumi.StringPtrOutput) } -// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. -func (o ContainerServiceSshConfigurationOutput) PublicKeys() ContainerServiceSshPublicKeyArrayOutput { - return o.ApplyT(func(v ContainerServiceSshConfiguration) []ContainerServiceSshPublicKey { return v.PublicKeys }).(ContainerServiceSshPublicKeyArrayOutput) +// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. +func (o AzureKeyVaultKmsResponseOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKmsResponse) *string { return v.KeyVaultNetworkAccess }).(pulumi.StringPtrOutput) } -type ContainerServiceSshConfigurationPtrOutput struct{ *pulumi.OutputState } +// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. +func (o AzureKeyVaultKmsResponseOutput) KeyVaultResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v AzureKeyVaultKmsResponse) *string { return v.KeyVaultResourceId }).(pulumi.StringPtrOutput) +} -func (ContainerServiceSshConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceSshConfiguration)(nil)).Elem() +type AzureKeyVaultKmsResponsePtrOutput struct{ *pulumi.OutputState } + +func (AzureKeyVaultKmsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**AzureKeyVaultKmsResponse)(nil)).Elem() } -func (o ContainerServiceSshConfigurationPtrOutput) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { +func (o AzureKeyVaultKmsResponsePtrOutput) ToAzureKeyVaultKmsResponsePtrOutput() AzureKeyVaultKmsResponsePtrOutput { return o } -func (o ContainerServiceSshConfigurationPtrOutput) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { +func (o AzureKeyVaultKmsResponsePtrOutput) ToAzureKeyVaultKmsResponsePtrOutputWithContext(ctx context.Context) AzureKeyVaultKmsResponsePtrOutput { return o } -func (o ContainerServiceSshConfigurationPtrOutput) Elem() ContainerServiceSshConfigurationOutput { - return o.ApplyT(func(v *ContainerServiceSshConfiguration) ContainerServiceSshConfiguration { +func (o AzureKeyVaultKmsResponsePtrOutput) Elem() AzureKeyVaultKmsResponseOutput { + return o.ApplyT(func(v *AzureKeyVaultKmsResponse) AzureKeyVaultKmsResponse { if v != nil { return *v } - var ret ContainerServiceSshConfiguration + var ret AzureKeyVaultKmsResponse return ret - }).(ContainerServiceSshConfigurationOutput) + }).(AzureKeyVaultKmsResponseOutput) } -// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. -func (o ContainerServiceSshConfigurationPtrOutput) PublicKeys() ContainerServiceSshPublicKeyArrayOutput { - return o.ApplyT(func(v *ContainerServiceSshConfiguration) []ContainerServiceSshPublicKey { +// Whether to enable Azure Key Vault key management service. The default is false. +func (o AzureKeyVaultKmsResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *bool { if v == nil { return nil } - return v.PublicKeys - }).(ContainerServiceSshPublicKeyArrayOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// SSH configuration for Linux-based VMs running on Azure. -type ContainerServiceSshConfigurationResponse struct { - // The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. - PublicKeys []ContainerServiceSshPublicKeyResponse `pulumi:"publicKeys"` +// Identifier of Azure Key Vault key. See [key identifier format](https://docs.microsoft.com/en-us/azure/key-vault/general/about-keys-secrets-certificates#vault-name-and-object-name) for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When Azure Key Vault key management service is disabled, leave the field empty. +func (o AzureKeyVaultKmsResponsePtrOutput) KeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *string { + if v == nil { + return nil + } + return v.KeyId + }).(pulumi.StringPtrOutput) } -// SSH configuration for Linux-based VMs running on Azure. -type ContainerServiceSshConfigurationResponseOutput struct{ *pulumi.OutputState } +// Network access of key vault. The possible values are `Public` and `Private`. `Public` means the key vault allows public access from all networks. `Private` means the key vault disables public access and enables private link. The default value is `Public`. +func (o AzureKeyVaultKmsResponsePtrOutput) KeyVaultNetworkAccess() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *string { + if v == nil { + return nil + } + return v.KeyVaultNetworkAccess + }).(pulumi.StringPtrOutput) +} -func (ContainerServiceSshConfigurationResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceSshConfigurationResponse)(nil)).Elem() +// Resource ID of key vault. When keyVaultNetworkAccess is `Private`, this field is required and must be a valid resource ID. When keyVaultNetworkAccess is `Public`, leave the field empty. +func (o AzureKeyVaultKmsResponsePtrOutput) KeyVaultResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *AzureKeyVaultKmsResponse) *string { + if v == nil { + return nil + } + return v.KeyVaultResourceId + }).(pulumi.StringPtrOutput) } -func (o ContainerServiceSshConfigurationResponseOutput) ToContainerServiceSshConfigurationResponseOutput() ContainerServiceSshConfigurationResponseOutput { - return o +// Settings for upgrading a cluster. +type ClusterUpgradeSettings struct { + // Settings for overrides. + OverrideSettings *UpgradeOverrideSettings `pulumi:"overrideSettings"` } -func (o ContainerServiceSshConfigurationResponseOutput) ToContainerServiceSshConfigurationResponseOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationResponseOutput { - return o +// ClusterUpgradeSettingsInput is an input type that accepts ClusterUpgradeSettingsArgs and ClusterUpgradeSettingsOutput values. +// You can construct a concrete instance of `ClusterUpgradeSettingsInput` via: +// +// ClusterUpgradeSettingsArgs{...} +type ClusterUpgradeSettingsInput interface { + pulumi.Input + + ToClusterUpgradeSettingsOutput() ClusterUpgradeSettingsOutput + ToClusterUpgradeSettingsOutputWithContext(context.Context) ClusterUpgradeSettingsOutput } -// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. -func (o ContainerServiceSshConfigurationResponseOutput) PublicKeys() ContainerServiceSshPublicKeyResponseArrayOutput { - return o.ApplyT(func(v ContainerServiceSshConfigurationResponse) []ContainerServiceSshPublicKeyResponse { - return v.PublicKeys - }).(ContainerServiceSshPublicKeyResponseArrayOutput) +// Settings for upgrading a cluster. +type ClusterUpgradeSettingsArgs struct { + // Settings for overrides. + OverrideSettings UpgradeOverrideSettingsPtrInput `pulumi:"overrideSettings"` } -type ContainerServiceSshConfigurationResponsePtrOutput struct{ *pulumi.OutputState } +func (ClusterUpgradeSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterUpgradeSettings)(nil)).Elem() +} -func (ContainerServiceSshConfigurationResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerServiceSshConfigurationResponse)(nil)).Elem() +func (i ClusterUpgradeSettingsArgs) ToClusterUpgradeSettingsOutput() ClusterUpgradeSettingsOutput { + return i.ToClusterUpgradeSettingsOutputWithContext(context.Background()) } -func (o ContainerServiceSshConfigurationResponsePtrOutput) ToContainerServiceSshConfigurationResponsePtrOutput() ContainerServiceSshConfigurationResponsePtrOutput { - return o +func (i ClusterUpgradeSettingsArgs) ToClusterUpgradeSettingsOutputWithContext(ctx context.Context) ClusterUpgradeSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterUpgradeSettingsOutput) } -func (o ContainerServiceSshConfigurationResponsePtrOutput) ToContainerServiceSshConfigurationResponsePtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationResponsePtrOutput { - return o +func (i ClusterUpgradeSettingsArgs) ToClusterUpgradeSettingsPtrOutput() ClusterUpgradeSettingsPtrOutput { + return i.ToClusterUpgradeSettingsPtrOutputWithContext(context.Background()) } -func (o ContainerServiceSshConfigurationResponsePtrOutput) Elem() ContainerServiceSshConfigurationResponseOutput { - return o.ApplyT(func(v *ContainerServiceSshConfigurationResponse) ContainerServiceSshConfigurationResponse { - if v != nil { - return *v - } - var ret ContainerServiceSshConfigurationResponse - return ret - }).(ContainerServiceSshConfigurationResponseOutput) -} - -// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. -func (o ContainerServiceSshConfigurationResponsePtrOutput) PublicKeys() ContainerServiceSshPublicKeyResponseArrayOutput { - return o.ApplyT(func(v *ContainerServiceSshConfigurationResponse) []ContainerServiceSshPublicKeyResponse { - if v == nil { - return nil - } - return v.PublicKeys - }).(ContainerServiceSshPublicKeyResponseArrayOutput) -} - -// Contains information about SSH certificate public key data. -type ContainerServiceSshPublicKey struct { - // Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. - KeyData string `pulumi:"keyData"` +func (i ClusterUpgradeSettingsArgs) ToClusterUpgradeSettingsPtrOutputWithContext(ctx context.Context) ClusterUpgradeSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterUpgradeSettingsOutput).ToClusterUpgradeSettingsPtrOutputWithContext(ctx) } -// ContainerServiceSshPublicKeyInput is an input type that accepts ContainerServiceSshPublicKeyArgs and ContainerServiceSshPublicKeyOutput values. -// You can construct a concrete instance of `ContainerServiceSshPublicKeyInput` via: +// ClusterUpgradeSettingsPtrInput is an input type that accepts ClusterUpgradeSettingsArgs, ClusterUpgradeSettingsPtr and ClusterUpgradeSettingsPtrOutput values. +// You can construct a concrete instance of `ClusterUpgradeSettingsPtrInput` via: // -// ContainerServiceSshPublicKeyArgs{...} -type ContainerServiceSshPublicKeyInput interface { +// ClusterUpgradeSettingsArgs{...} +// +// or: +// +// nil +type ClusterUpgradeSettingsPtrInput interface { pulumi.Input - ToContainerServiceSshPublicKeyOutput() ContainerServiceSshPublicKeyOutput - ToContainerServiceSshPublicKeyOutputWithContext(context.Context) ContainerServiceSshPublicKeyOutput + ToClusterUpgradeSettingsPtrOutput() ClusterUpgradeSettingsPtrOutput + ToClusterUpgradeSettingsPtrOutputWithContext(context.Context) ClusterUpgradeSettingsPtrOutput } -// Contains information about SSH certificate public key data. -type ContainerServiceSshPublicKeyArgs struct { - // Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. - KeyData pulumi.StringInput `pulumi:"keyData"` -} +type clusterUpgradeSettingsPtrType ClusterUpgradeSettingsArgs -func (ContainerServiceSshPublicKeyArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceSshPublicKey)(nil)).Elem() +func ClusterUpgradeSettingsPtr(v *ClusterUpgradeSettingsArgs) ClusterUpgradeSettingsPtrInput { + return (*clusterUpgradeSettingsPtrType)(v) } -func (i ContainerServiceSshPublicKeyArgs) ToContainerServiceSshPublicKeyOutput() ContainerServiceSshPublicKeyOutput { - return i.ToContainerServiceSshPublicKeyOutputWithContext(context.Background()) +func (*clusterUpgradeSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterUpgradeSettings)(nil)).Elem() } -func (i ContainerServiceSshPublicKeyArgs) ToContainerServiceSshPublicKeyOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshPublicKeyOutput) +func (i *clusterUpgradeSettingsPtrType) ToClusterUpgradeSettingsPtrOutput() ClusterUpgradeSettingsPtrOutput { + return i.ToClusterUpgradeSettingsPtrOutputWithContext(context.Background()) } -// ContainerServiceSshPublicKeyArrayInput is an input type that accepts ContainerServiceSshPublicKeyArray and ContainerServiceSshPublicKeyArrayOutput values. -// You can construct a concrete instance of `ContainerServiceSshPublicKeyArrayInput` via: -// -// ContainerServiceSshPublicKeyArray{ ContainerServiceSshPublicKeyArgs{...} } -type ContainerServiceSshPublicKeyArrayInput interface { - pulumi.Input - - ToContainerServiceSshPublicKeyArrayOutput() ContainerServiceSshPublicKeyArrayOutput - ToContainerServiceSshPublicKeyArrayOutputWithContext(context.Context) ContainerServiceSshPublicKeyArrayOutput +func (i *clusterUpgradeSettingsPtrType) ToClusterUpgradeSettingsPtrOutputWithContext(ctx context.Context) ClusterUpgradeSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterUpgradeSettingsPtrOutput) } -type ContainerServiceSshPublicKeyArray []ContainerServiceSshPublicKeyInput - -func (ContainerServiceSshPublicKeyArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerServiceSshPublicKey)(nil)).Elem() -} +// Settings for upgrading a cluster. +type ClusterUpgradeSettingsOutput struct{ *pulumi.OutputState } -func (i ContainerServiceSshPublicKeyArray) ToContainerServiceSshPublicKeyArrayOutput() ContainerServiceSshPublicKeyArrayOutput { - return i.ToContainerServiceSshPublicKeyArrayOutputWithContext(context.Background()) +func (ClusterUpgradeSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterUpgradeSettings)(nil)).Elem() } -func (i ContainerServiceSshPublicKeyArray) ToContainerServiceSshPublicKeyArrayOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshPublicKeyArrayOutput) +func (o ClusterUpgradeSettingsOutput) ToClusterUpgradeSettingsOutput() ClusterUpgradeSettingsOutput { + return o } -// Contains information about SSH certificate public key data. -type ContainerServiceSshPublicKeyOutput struct{ *pulumi.OutputState } - -func (ContainerServiceSshPublicKeyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceSshPublicKey)(nil)).Elem() +func (o ClusterUpgradeSettingsOutput) ToClusterUpgradeSettingsOutputWithContext(ctx context.Context) ClusterUpgradeSettingsOutput { + return o } -func (o ContainerServiceSshPublicKeyOutput) ToContainerServiceSshPublicKeyOutput() ContainerServiceSshPublicKeyOutput { - return o +func (o ClusterUpgradeSettingsOutput) ToClusterUpgradeSettingsPtrOutput() ClusterUpgradeSettingsPtrOutput { + return o.ToClusterUpgradeSettingsPtrOutputWithContext(context.Background()) } -func (o ContainerServiceSshPublicKeyOutput) ToContainerServiceSshPublicKeyOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyOutput { - return o +func (o ClusterUpgradeSettingsOutput) ToClusterUpgradeSettingsPtrOutputWithContext(ctx context.Context) ClusterUpgradeSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ClusterUpgradeSettings) *ClusterUpgradeSettings { + return &v + }).(ClusterUpgradeSettingsPtrOutput) } -// Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. -func (o ContainerServiceSshPublicKeyOutput) KeyData() pulumi.StringOutput { - return o.ApplyT(func(v ContainerServiceSshPublicKey) string { return v.KeyData }).(pulumi.StringOutput) +// Settings for overrides. +func (o ClusterUpgradeSettingsOutput) OverrideSettings() UpgradeOverrideSettingsPtrOutput { + return o.ApplyT(func(v ClusterUpgradeSettings) *UpgradeOverrideSettings { return v.OverrideSettings }).(UpgradeOverrideSettingsPtrOutput) } -type ContainerServiceSshPublicKeyArrayOutput struct{ *pulumi.OutputState } +type ClusterUpgradeSettingsPtrOutput struct{ *pulumi.OutputState } -func (ContainerServiceSshPublicKeyArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerServiceSshPublicKey)(nil)).Elem() +func (ClusterUpgradeSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterUpgradeSettings)(nil)).Elem() } -func (o ContainerServiceSshPublicKeyArrayOutput) ToContainerServiceSshPublicKeyArrayOutput() ContainerServiceSshPublicKeyArrayOutput { +func (o ClusterUpgradeSettingsPtrOutput) ToClusterUpgradeSettingsPtrOutput() ClusterUpgradeSettingsPtrOutput { return o } -func (o ContainerServiceSshPublicKeyArrayOutput) ToContainerServiceSshPublicKeyArrayOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyArrayOutput { +func (o ClusterUpgradeSettingsPtrOutput) ToClusterUpgradeSettingsPtrOutputWithContext(ctx context.Context) ClusterUpgradeSettingsPtrOutput { return o } -func (o ContainerServiceSshPublicKeyArrayOutput) Index(i pulumi.IntInput) ContainerServiceSshPublicKeyOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerServiceSshPublicKey { - return vs[0].([]ContainerServiceSshPublicKey)[vs[1].(int)] - }).(ContainerServiceSshPublicKeyOutput) +func (o ClusterUpgradeSettingsPtrOutput) Elem() ClusterUpgradeSettingsOutput { + return o.ApplyT(func(v *ClusterUpgradeSettings) ClusterUpgradeSettings { + if v != nil { + return *v + } + var ret ClusterUpgradeSettings + return ret + }).(ClusterUpgradeSettingsOutput) } -// Contains information about SSH certificate public key data. -type ContainerServiceSshPublicKeyResponse struct { - // Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. - KeyData string `pulumi:"keyData"` +// Settings for overrides. +func (o ClusterUpgradeSettingsPtrOutput) OverrideSettings() UpgradeOverrideSettingsPtrOutput { + return o.ApplyT(func(v *ClusterUpgradeSettings) *UpgradeOverrideSettings { + if v == nil { + return nil + } + return v.OverrideSettings + }).(UpgradeOverrideSettingsPtrOutput) } -// Contains information about SSH certificate public key data. -type ContainerServiceSshPublicKeyResponseOutput struct{ *pulumi.OutputState } +// Settings for upgrading a cluster. +type ClusterUpgradeSettingsResponse struct { + // Settings for overrides. + OverrideSettings *UpgradeOverrideSettingsResponse `pulumi:"overrideSettings"` +} -func (ContainerServiceSshPublicKeyResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerServiceSshPublicKeyResponse)(nil)).Elem() +// Settings for upgrading a cluster. +type ClusterUpgradeSettingsResponseOutput struct{ *pulumi.OutputState } + +func (ClusterUpgradeSettingsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterUpgradeSettingsResponse)(nil)).Elem() } -func (o ContainerServiceSshPublicKeyResponseOutput) ToContainerServiceSshPublicKeyResponseOutput() ContainerServiceSshPublicKeyResponseOutput { +func (o ClusterUpgradeSettingsResponseOutput) ToClusterUpgradeSettingsResponseOutput() ClusterUpgradeSettingsResponseOutput { return o } -func (o ContainerServiceSshPublicKeyResponseOutput) ToContainerServiceSshPublicKeyResponseOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyResponseOutput { +func (o ClusterUpgradeSettingsResponseOutput) ToClusterUpgradeSettingsResponseOutputWithContext(ctx context.Context) ClusterUpgradeSettingsResponseOutput { return o } -// Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. -func (o ContainerServiceSshPublicKeyResponseOutput) KeyData() pulumi.StringOutput { - return o.ApplyT(func(v ContainerServiceSshPublicKeyResponse) string { return v.KeyData }).(pulumi.StringOutput) +// Settings for overrides. +func (o ClusterUpgradeSettingsResponseOutput) OverrideSettings() UpgradeOverrideSettingsResponsePtrOutput { + return o.ApplyT(func(v ClusterUpgradeSettingsResponse) *UpgradeOverrideSettingsResponse { return v.OverrideSettings }).(UpgradeOverrideSettingsResponsePtrOutput) } -type ContainerServiceSshPublicKeyResponseArrayOutput struct{ *pulumi.OutputState } +type ClusterUpgradeSettingsResponsePtrOutput struct{ *pulumi.OutputState } -func (ContainerServiceSshPublicKeyResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerServiceSshPublicKeyResponse)(nil)).Elem() +func (ClusterUpgradeSettingsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterUpgradeSettingsResponse)(nil)).Elem() } -func (o ContainerServiceSshPublicKeyResponseArrayOutput) ToContainerServiceSshPublicKeyResponseArrayOutput() ContainerServiceSshPublicKeyResponseArrayOutput { +func (o ClusterUpgradeSettingsResponsePtrOutput) ToClusterUpgradeSettingsResponsePtrOutput() ClusterUpgradeSettingsResponsePtrOutput { return o } -func (o ContainerServiceSshPublicKeyResponseArrayOutput) ToContainerServiceSshPublicKeyResponseArrayOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyResponseArrayOutput { +func (o ClusterUpgradeSettingsResponsePtrOutput) ToClusterUpgradeSettingsResponsePtrOutputWithContext(ctx context.Context) ClusterUpgradeSettingsResponsePtrOutput { return o } -func (o ContainerServiceSshPublicKeyResponseArrayOutput) Index(i pulumi.IntInput) ContainerServiceSshPublicKeyResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerServiceSshPublicKeyResponse { - return vs[0].([]ContainerServiceSshPublicKeyResponse)[vs[1].(int)] - }).(ContainerServiceSshPublicKeyResponseOutput) +func (o ClusterUpgradeSettingsResponsePtrOutput) Elem() ClusterUpgradeSettingsResponseOutput { + return o.ApplyT(func(v *ClusterUpgradeSettingsResponse) ClusterUpgradeSettingsResponse { + if v != nil { + return *v + } + var ret ClusterUpgradeSettingsResponse + return ret + }).(ClusterUpgradeSettingsResponseOutput) } -// Data used when creating a target resource from a source resource. -type CreationData struct { - // This is the ARM ID of the source object to be used to create the target object. - SourceResourceId *string `pulumi:"sourceResourceId"` +// Settings for overrides. +func (o ClusterUpgradeSettingsResponsePtrOutput) OverrideSettings() UpgradeOverrideSettingsResponsePtrOutput { + return o.ApplyT(func(v *ClusterUpgradeSettingsResponse) *UpgradeOverrideSettingsResponse { + if v == nil { + return nil + } + return v.OverrideSettings + }).(UpgradeOverrideSettingsResponsePtrOutput) } -// CreationDataInput is an input type that accepts CreationDataArgs and CreationDataOutput values. -// You can construct a concrete instance of `CreationDataInput` via: +// Profile for Linux VMs in the container service cluster. +type ContainerServiceLinuxProfile struct { + // The administrator username to use for Linux VMs. + AdminUsername string `pulumi:"adminUsername"` + // The SSH configuration for Linux-based VMs running on Azure. + Ssh ContainerServiceSshConfiguration `pulumi:"ssh"` +} + +// ContainerServiceLinuxProfileInput is an input type that accepts ContainerServiceLinuxProfileArgs and ContainerServiceLinuxProfileOutput values. +// You can construct a concrete instance of `ContainerServiceLinuxProfileInput` via: // -// CreationDataArgs{...} -type CreationDataInput interface { +// ContainerServiceLinuxProfileArgs{...} +type ContainerServiceLinuxProfileInput interface { pulumi.Input - ToCreationDataOutput() CreationDataOutput - ToCreationDataOutputWithContext(context.Context) CreationDataOutput + ToContainerServiceLinuxProfileOutput() ContainerServiceLinuxProfileOutput + ToContainerServiceLinuxProfileOutputWithContext(context.Context) ContainerServiceLinuxProfileOutput } -// Data used when creating a target resource from a source resource. -type CreationDataArgs struct { - // This is the ARM ID of the source object to be used to create the target object. - SourceResourceId pulumi.StringPtrInput `pulumi:"sourceResourceId"` +// Profile for Linux VMs in the container service cluster. +type ContainerServiceLinuxProfileArgs struct { + // The administrator username to use for Linux VMs. + AdminUsername pulumi.StringInput `pulumi:"adminUsername"` + // The SSH configuration for Linux-based VMs running on Azure. + Ssh ContainerServiceSshConfigurationInput `pulumi:"ssh"` } -func (CreationDataArgs) ElementType() reflect.Type { - return reflect.TypeOf((*CreationData)(nil)).Elem() +func (ContainerServiceLinuxProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceLinuxProfile)(nil)).Elem() } -func (i CreationDataArgs) ToCreationDataOutput() CreationDataOutput { - return i.ToCreationDataOutputWithContext(context.Background()) +func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfileOutput() ContainerServiceLinuxProfileOutput { + return i.ToContainerServiceLinuxProfileOutputWithContext(context.Background()) } -func (i CreationDataArgs) ToCreationDataOutputWithContext(ctx context.Context) CreationDataOutput { - return pulumi.ToOutputWithContext(ctx, i).(CreationDataOutput) +func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfileOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceLinuxProfileOutput) } -func (i CreationDataArgs) ToCreationDataPtrOutput() CreationDataPtrOutput { - return i.ToCreationDataPtrOutputWithContext(context.Background()) +func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { + return i.ToContainerServiceLinuxProfilePtrOutputWithContext(context.Background()) } -func (i CreationDataArgs) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(CreationDataOutput).ToCreationDataPtrOutputWithContext(ctx) +func (i ContainerServiceLinuxProfileArgs) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceLinuxProfileOutput).ToContainerServiceLinuxProfilePtrOutputWithContext(ctx) } -// CreationDataPtrInput is an input type that accepts CreationDataArgs, CreationDataPtr and CreationDataPtrOutput values. -// You can construct a concrete instance of `CreationDataPtrInput` via: +// ContainerServiceLinuxProfilePtrInput is an input type that accepts ContainerServiceLinuxProfileArgs, ContainerServiceLinuxProfilePtr and ContainerServiceLinuxProfilePtrOutput values. +// You can construct a concrete instance of `ContainerServiceLinuxProfilePtrInput` via: // -// CreationDataArgs{...} +// ContainerServiceLinuxProfileArgs{...} // // or: // // nil -type CreationDataPtrInput interface { +type ContainerServiceLinuxProfilePtrInput interface { pulumi.Input - ToCreationDataPtrOutput() CreationDataPtrOutput - ToCreationDataPtrOutputWithContext(context.Context) CreationDataPtrOutput + ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput + ToContainerServiceLinuxProfilePtrOutputWithContext(context.Context) ContainerServiceLinuxProfilePtrOutput } -type creationDataPtrType CreationDataArgs +type containerServiceLinuxProfilePtrType ContainerServiceLinuxProfileArgs -func CreationDataPtr(v *CreationDataArgs) CreationDataPtrInput { - return (*creationDataPtrType)(v) +func ContainerServiceLinuxProfilePtr(v *ContainerServiceLinuxProfileArgs) ContainerServiceLinuxProfilePtrInput { + return (*containerServiceLinuxProfilePtrType)(v) } -func (*creationDataPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**CreationData)(nil)).Elem() +func (*containerServiceLinuxProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceLinuxProfile)(nil)).Elem() } -func (i *creationDataPtrType) ToCreationDataPtrOutput() CreationDataPtrOutput { - return i.ToCreationDataPtrOutputWithContext(context.Background()) +func (i *containerServiceLinuxProfilePtrType) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { + return i.ToContainerServiceLinuxProfilePtrOutputWithContext(context.Background()) } -func (i *creationDataPtrType) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(CreationDataPtrOutput) +func (i *containerServiceLinuxProfilePtrType) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceLinuxProfilePtrOutput) } -// Data used when creating a target resource from a source resource. -type CreationDataOutput struct{ *pulumi.OutputState } +// Profile for Linux VMs in the container service cluster. +type ContainerServiceLinuxProfileOutput struct{ *pulumi.OutputState } -func (CreationDataOutput) ElementType() reflect.Type { - return reflect.TypeOf((*CreationData)(nil)).Elem() +func (ContainerServiceLinuxProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceLinuxProfile)(nil)).Elem() } -func (o CreationDataOutput) ToCreationDataOutput() CreationDataOutput { +func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfileOutput() ContainerServiceLinuxProfileOutput { return o } -func (o CreationDataOutput) ToCreationDataOutputWithContext(ctx context.Context) CreationDataOutput { +func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfileOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileOutput { return o } -func (o CreationDataOutput) ToCreationDataPtrOutput() CreationDataPtrOutput { - return o.ToCreationDataPtrOutputWithContext(context.Background()) +func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { + return o.ToContainerServiceLinuxProfilePtrOutputWithContext(context.Background()) } -func (o CreationDataOutput) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v CreationData) *CreationData { +func (o ContainerServiceLinuxProfileOutput) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerServiceLinuxProfile) *ContainerServiceLinuxProfile { return &v - }).(CreationDataPtrOutput) + }).(ContainerServiceLinuxProfilePtrOutput) } -// This is the ARM ID of the source object to be used to create the target object. -func (o CreationDataOutput) SourceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v CreationData) *string { return v.SourceResourceId }).(pulumi.StringPtrOutput) +// The administrator username to use for Linux VMs. +func (o ContainerServiceLinuxProfileOutput) AdminUsername() pulumi.StringOutput { + return o.ApplyT(func(v ContainerServiceLinuxProfile) string { return v.AdminUsername }).(pulumi.StringOutput) } -type CreationDataPtrOutput struct{ *pulumi.OutputState } +// The SSH configuration for Linux-based VMs running on Azure. +func (o ContainerServiceLinuxProfileOutput) Ssh() ContainerServiceSshConfigurationOutput { + return o.ApplyT(func(v ContainerServiceLinuxProfile) ContainerServiceSshConfiguration { return v.Ssh }).(ContainerServiceSshConfigurationOutput) +} -func (CreationDataPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**CreationData)(nil)).Elem() +type ContainerServiceLinuxProfilePtrOutput struct{ *pulumi.OutputState } + +func (ContainerServiceLinuxProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceLinuxProfile)(nil)).Elem() } -func (o CreationDataPtrOutput) ToCreationDataPtrOutput() CreationDataPtrOutput { +func (o ContainerServiceLinuxProfilePtrOutput) ToContainerServiceLinuxProfilePtrOutput() ContainerServiceLinuxProfilePtrOutput { return o } -func (o CreationDataPtrOutput) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { +func (o ContainerServiceLinuxProfilePtrOutput) ToContainerServiceLinuxProfilePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfilePtrOutput { return o } -func (o CreationDataPtrOutput) Elem() CreationDataOutput { - return o.ApplyT(func(v *CreationData) CreationData { +func (o ContainerServiceLinuxProfilePtrOutput) Elem() ContainerServiceLinuxProfileOutput { + return o.ApplyT(func(v *ContainerServiceLinuxProfile) ContainerServiceLinuxProfile { if v != nil { return *v } - var ret CreationData + var ret ContainerServiceLinuxProfile return ret - }).(CreationDataOutput) + }).(ContainerServiceLinuxProfileOutput) } -// This is the ARM ID of the source object to be used to create the target object. -func (o CreationDataPtrOutput) SourceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *CreationData) *string { +// The administrator username to use for Linux VMs. +func (o ContainerServiceLinuxProfilePtrOutput) AdminUsername() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceLinuxProfile) *string { if v == nil { return nil } - return v.SourceResourceId + return &v.AdminUsername }).(pulumi.StringPtrOutput) } -// Data used when creating a target resource from a source resource. -type CreationDataResponse struct { - // This is the ARM ID of the source object to be used to create the target object. - SourceResourceId *string `pulumi:"sourceResourceId"` +// The SSH configuration for Linux-based VMs running on Azure. +func (o ContainerServiceLinuxProfilePtrOutput) Ssh() ContainerServiceSshConfigurationPtrOutput { + return o.ApplyT(func(v *ContainerServiceLinuxProfile) *ContainerServiceSshConfiguration { + if v == nil { + return nil + } + return &v.Ssh + }).(ContainerServiceSshConfigurationPtrOutput) } -// Data used when creating a target resource from a source resource. -type CreationDataResponseOutput struct{ *pulumi.OutputState } +// Profile for Linux VMs in the container service cluster. +type ContainerServiceLinuxProfileResponse struct { + // The administrator username to use for Linux VMs. + AdminUsername string `pulumi:"adminUsername"` + // The SSH configuration for Linux-based VMs running on Azure. + Ssh ContainerServiceSshConfigurationResponse `pulumi:"ssh"` +} -func (CreationDataResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*CreationDataResponse)(nil)).Elem() +// Profile for Linux VMs in the container service cluster. +type ContainerServiceLinuxProfileResponseOutput struct{ *pulumi.OutputState } + +func (ContainerServiceLinuxProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceLinuxProfileResponse)(nil)).Elem() } -func (o CreationDataResponseOutput) ToCreationDataResponseOutput() CreationDataResponseOutput { +func (o ContainerServiceLinuxProfileResponseOutput) ToContainerServiceLinuxProfileResponseOutput() ContainerServiceLinuxProfileResponseOutput { return o } -func (o CreationDataResponseOutput) ToCreationDataResponseOutputWithContext(ctx context.Context) CreationDataResponseOutput { +func (o ContainerServiceLinuxProfileResponseOutput) ToContainerServiceLinuxProfileResponseOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileResponseOutput { return o } -// This is the ARM ID of the source object to be used to create the target object. -func (o CreationDataResponseOutput) SourceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v CreationDataResponse) *string { return v.SourceResourceId }).(pulumi.StringPtrOutput) +// The administrator username to use for Linux VMs. +func (o ContainerServiceLinuxProfileResponseOutput) AdminUsername() pulumi.StringOutput { + return o.ApplyT(func(v ContainerServiceLinuxProfileResponse) string { return v.AdminUsername }).(pulumi.StringOutput) } -type CreationDataResponsePtrOutput struct{ *pulumi.OutputState } +// The SSH configuration for Linux-based VMs running on Azure. +func (o ContainerServiceLinuxProfileResponseOutput) Ssh() ContainerServiceSshConfigurationResponseOutput { + return o.ApplyT(func(v ContainerServiceLinuxProfileResponse) ContainerServiceSshConfigurationResponse { return v.Ssh }).(ContainerServiceSshConfigurationResponseOutput) +} -func (CreationDataResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**CreationDataResponse)(nil)).Elem() +type ContainerServiceLinuxProfileResponsePtrOutput struct{ *pulumi.OutputState } + +func (ContainerServiceLinuxProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceLinuxProfileResponse)(nil)).Elem() } -func (o CreationDataResponsePtrOutput) ToCreationDataResponsePtrOutput() CreationDataResponsePtrOutput { +func (o ContainerServiceLinuxProfileResponsePtrOutput) ToContainerServiceLinuxProfileResponsePtrOutput() ContainerServiceLinuxProfileResponsePtrOutput { return o } -func (o CreationDataResponsePtrOutput) ToCreationDataResponsePtrOutputWithContext(ctx context.Context) CreationDataResponsePtrOutput { +func (o ContainerServiceLinuxProfileResponsePtrOutput) ToContainerServiceLinuxProfileResponsePtrOutputWithContext(ctx context.Context) ContainerServiceLinuxProfileResponsePtrOutput { return o } -func (o CreationDataResponsePtrOutput) Elem() CreationDataResponseOutput { - return o.ApplyT(func(v *CreationDataResponse) CreationDataResponse { +func (o ContainerServiceLinuxProfileResponsePtrOutput) Elem() ContainerServiceLinuxProfileResponseOutput { + return o.ApplyT(func(v *ContainerServiceLinuxProfileResponse) ContainerServiceLinuxProfileResponse { if v != nil { return *v } - var ret CreationDataResponse + var ret ContainerServiceLinuxProfileResponse return ret - }).(CreationDataResponseOutput) + }).(ContainerServiceLinuxProfileResponseOutput) } -// This is the ARM ID of the source object to be used to create the target object. -func (o CreationDataResponsePtrOutput) SourceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *CreationDataResponse) *string { +// The administrator username to use for Linux VMs. +func (o ContainerServiceLinuxProfileResponsePtrOutput) AdminUsername() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceLinuxProfileResponse) *string { if v == nil { return nil } - return v.SourceResourceId + return &v.AdminUsername }).(pulumi.StringPtrOutput) } -// The credential result response. -type CredentialResultResponse struct { - // The name of the credential. - Name string `pulumi:"name"` - // Base64-encoded Kubernetes configuration file. - Value string `pulumi:"value"` +// The SSH configuration for Linux-based VMs running on Azure. +func (o ContainerServiceLinuxProfileResponsePtrOutput) Ssh() ContainerServiceSshConfigurationResponsePtrOutput { + return o.ApplyT(func(v *ContainerServiceLinuxProfileResponse) *ContainerServiceSshConfigurationResponse { + if v == nil { + return nil + } + return &v.Ssh + }).(ContainerServiceSshConfigurationResponsePtrOutput) } -// The credential result response. -type CredentialResultResponseOutput struct{ *pulumi.OutputState } - -func (CredentialResultResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*CredentialResultResponse)(nil)).Elem() +// Profile of network configuration. +type ContainerServiceNetworkProfile struct { + // An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. + DnsServiceIP *string `pulumi:"dnsServiceIP"` + // IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. + IpFamilies []string `pulumi:"ipFamilies"` + // Profile of the cluster load balancer. + LoadBalancerProfile *ManagedClusterLoadBalancerProfile `pulumi:"loadBalancerProfile"` + // The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. + LoadBalancerSku *string `pulumi:"loadBalancerSku"` + // Profile of the cluster NAT gateway. + NatGatewayProfile *ManagedClusterNATGatewayProfile `pulumi:"natGatewayProfile"` + // Network dataplane used in the Kubernetes cluster. + NetworkDataplane *string `pulumi:"networkDataplane"` + // This cannot be specified if networkPlugin is anything other than 'azure'. + NetworkMode *string `pulumi:"networkMode"` + // Network plugin used for building the Kubernetes network. + NetworkPlugin *string `pulumi:"networkPlugin"` + // The mode the network plugin should use. + NetworkPluginMode *string `pulumi:"networkPluginMode"` + // Network policy used for building the Kubernetes network. + NetworkPolicy *string `pulumi:"networkPolicy"` + // This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). + OutboundType *string `pulumi:"outboundType"` + // A CIDR notation IP range from which to assign pod IPs when kubenet is used. + PodCidr *string `pulumi:"podCidr"` + // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. + PodCidrs []string `pulumi:"podCidrs"` + // A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. + ServiceCidr *string `pulumi:"serviceCidr"` + // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. + ServiceCidrs []string `pulumi:"serviceCidrs"` } -func (o CredentialResultResponseOutput) ToCredentialResultResponseOutput() CredentialResultResponseOutput { - return o -} +// Defaults sets the appropriate defaults for ContainerServiceNetworkProfile +func (val *ContainerServiceNetworkProfile) Defaults() *ContainerServiceNetworkProfile { + if val == nil { + return nil + } + tmp := *val + if tmp.DnsServiceIP == nil { + dnsServiceIP_ := "10.0.0.10" + tmp.DnsServiceIP = &dnsServiceIP_ + } + tmp.LoadBalancerProfile = tmp.LoadBalancerProfile.Defaults() -func (o CredentialResultResponseOutput) ToCredentialResultResponseOutputWithContext(ctx context.Context) CredentialResultResponseOutput { - return o + tmp.NatGatewayProfile = tmp.NatGatewayProfile.Defaults() + + if tmp.NetworkPlugin == nil { + networkPlugin_ := "kubenet" + tmp.NetworkPlugin = &networkPlugin_ + } + if tmp.OutboundType == nil { + outboundType_ := "loadBalancer" + tmp.OutboundType = &outboundType_ + } + if tmp.PodCidr == nil { + podCidr_ := "10.244.0.0/16" + tmp.PodCidr = &podCidr_ + } + if tmp.ServiceCidr == nil { + serviceCidr_ := "10.0.0.0/16" + tmp.ServiceCidr = &serviceCidr_ + } + return &tmp } -// The name of the credential. -func (o CredentialResultResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v CredentialResultResponse) string { return v.Name }).(pulumi.StringOutput) +// ContainerServiceNetworkProfileInput is an input type that accepts ContainerServiceNetworkProfileArgs and ContainerServiceNetworkProfileOutput values. +// You can construct a concrete instance of `ContainerServiceNetworkProfileInput` via: +// +// ContainerServiceNetworkProfileArgs{...} +type ContainerServiceNetworkProfileInput interface { + pulumi.Input + + ToContainerServiceNetworkProfileOutput() ContainerServiceNetworkProfileOutput + ToContainerServiceNetworkProfileOutputWithContext(context.Context) ContainerServiceNetworkProfileOutput } -// Base64-encoded Kubernetes configuration file. -func (o CredentialResultResponseOutput) Value() pulumi.StringOutput { - return o.ApplyT(func(v CredentialResultResponse) string { return v.Value }).(pulumi.StringOutput) +// Profile of network configuration. +type ContainerServiceNetworkProfileArgs struct { + // An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. + DnsServiceIP pulumi.StringPtrInput `pulumi:"dnsServiceIP"` + // IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. + IpFamilies pulumi.StringArrayInput `pulumi:"ipFamilies"` + // Profile of the cluster load balancer. + LoadBalancerProfile ManagedClusterLoadBalancerProfilePtrInput `pulumi:"loadBalancerProfile"` + // The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. + LoadBalancerSku pulumi.StringPtrInput `pulumi:"loadBalancerSku"` + // Profile of the cluster NAT gateway. + NatGatewayProfile ManagedClusterNATGatewayProfilePtrInput `pulumi:"natGatewayProfile"` + // Network dataplane used in the Kubernetes cluster. + NetworkDataplane pulumi.StringPtrInput `pulumi:"networkDataplane"` + // This cannot be specified if networkPlugin is anything other than 'azure'. + NetworkMode pulumi.StringPtrInput `pulumi:"networkMode"` + // Network plugin used for building the Kubernetes network. + NetworkPlugin pulumi.StringPtrInput `pulumi:"networkPlugin"` + // The mode the network plugin should use. + NetworkPluginMode pulumi.StringPtrInput `pulumi:"networkPluginMode"` + // Network policy used for building the Kubernetes network. + NetworkPolicy pulumi.StringPtrInput `pulumi:"networkPolicy"` + // This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). + OutboundType pulumi.StringPtrInput `pulumi:"outboundType"` + // A CIDR notation IP range from which to assign pod IPs when kubenet is used. + PodCidr pulumi.StringPtrInput `pulumi:"podCidr"` + // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. + PodCidrs pulumi.StringArrayInput `pulumi:"podCidrs"` + // A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. + ServiceCidr pulumi.StringPtrInput `pulumi:"serviceCidr"` + // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. + ServiceCidrs pulumi.StringArrayInput `pulumi:"serviceCidrs"` } -type CredentialResultResponseArrayOutput struct{ *pulumi.OutputState } +// Defaults sets the appropriate defaults for ContainerServiceNetworkProfileArgs +func (val *ContainerServiceNetworkProfileArgs) Defaults() *ContainerServiceNetworkProfileArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.DnsServiceIP == nil { + tmp.DnsServiceIP = pulumi.StringPtr("10.0.0.10") + } -func (CredentialResultResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]CredentialResultResponse)(nil)).Elem() + if tmp.NetworkPlugin == nil { + tmp.NetworkPlugin = pulumi.StringPtr("kubenet") + } + if tmp.OutboundType == nil { + tmp.OutboundType = pulumi.StringPtr("loadBalancer") + } + if tmp.PodCidr == nil { + tmp.PodCidr = pulumi.StringPtr("10.244.0.0/16") + } + if tmp.ServiceCidr == nil { + tmp.ServiceCidr = pulumi.StringPtr("10.0.0.0/16") + } + return &tmp } - -func (o CredentialResultResponseArrayOutput) ToCredentialResultResponseArrayOutput() CredentialResultResponseArrayOutput { - return o +func (ContainerServiceNetworkProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceNetworkProfile)(nil)).Elem() } -func (o CredentialResultResponseArrayOutput) ToCredentialResultResponseArrayOutputWithContext(ctx context.Context) CredentialResultResponseArrayOutput { - return o +func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfileOutput() ContainerServiceNetworkProfileOutput { + return i.ToContainerServiceNetworkProfileOutputWithContext(context.Background()) } -func (o CredentialResultResponseArrayOutput) Index(i pulumi.IntInput) CredentialResultResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) CredentialResultResponse { - return vs[0].([]CredentialResultResponse)[vs[1].(int)] - }).(CredentialResultResponseOutput) +func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfileOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceNetworkProfileOutput) } -// The resource management error additional info. -type ErrorAdditionalInfoResponse struct { - // The additional info. - Info interface{} `pulumi:"info"` - // The additional info type. - Type string `pulumi:"type"` +func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { + return i.ToContainerServiceNetworkProfilePtrOutputWithContext(context.Background()) } -// The resource management error additional info. -type ErrorAdditionalInfoResponseOutput struct{ *pulumi.OutputState } - -func (ErrorAdditionalInfoResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ErrorAdditionalInfoResponse)(nil)).Elem() +func (i ContainerServiceNetworkProfileArgs) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceNetworkProfileOutput).ToContainerServiceNetworkProfilePtrOutputWithContext(ctx) } -func (o ErrorAdditionalInfoResponseOutput) ToErrorAdditionalInfoResponseOutput() ErrorAdditionalInfoResponseOutput { - return o -} - -func (o ErrorAdditionalInfoResponseOutput) ToErrorAdditionalInfoResponseOutputWithContext(ctx context.Context) ErrorAdditionalInfoResponseOutput { - return o -} - -// The additional info. -func (o ErrorAdditionalInfoResponseOutput) Info() pulumi.AnyOutput { - return o.ApplyT(func(v ErrorAdditionalInfoResponse) interface{} { return v.Info }).(pulumi.AnyOutput) -} - -// The additional info type. -func (o ErrorAdditionalInfoResponseOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v ErrorAdditionalInfoResponse) string { return v.Type }).(pulumi.StringOutput) -} - -type ErrorAdditionalInfoResponseArrayOutput struct{ *pulumi.OutputState } - -func (ErrorAdditionalInfoResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ErrorAdditionalInfoResponse)(nil)).Elem() -} - -func (o ErrorAdditionalInfoResponseArrayOutput) ToErrorAdditionalInfoResponseArrayOutput() ErrorAdditionalInfoResponseArrayOutput { - return o -} - -func (o ErrorAdditionalInfoResponseArrayOutput) ToErrorAdditionalInfoResponseArrayOutputWithContext(ctx context.Context) ErrorAdditionalInfoResponseArrayOutput { - return o -} - -func (o ErrorAdditionalInfoResponseArrayOutput) Index(i pulumi.IntInput) ErrorAdditionalInfoResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ErrorAdditionalInfoResponse { - return vs[0].([]ErrorAdditionalInfoResponse)[vs[1].(int)] - }).(ErrorAdditionalInfoResponseOutput) -} - -// The error detail. -type ErrorDetailResponse struct { - // The error additional info. - AdditionalInfo []ErrorAdditionalInfoResponse `pulumi:"additionalInfo"` - // The error code. - Code string `pulumi:"code"` - // The error details. - Details []ErrorDetailResponse `pulumi:"details"` - // The error message. - Message string `pulumi:"message"` - // The error target. - Target string `pulumi:"target"` -} - -// The error detail. -type ErrorDetailResponseOutput struct{ *pulumi.OutputState } - -func (ErrorDetailResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ErrorDetailResponse)(nil)).Elem() -} - -func (o ErrorDetailResponseOutput) ToErrorDetailResponseOutput() ErrorDetailResponseOutput { - return o -} +// ContainerServiceNetworkProfilePtrInput is an input type that accepts ContainerServiceNetworkProfileArgs, ContainerServiceNetworkProfilePtr and ContainerServiceNetworkProfilePtrOutput values. +// You can construct a concrete instance of `ContainerServiceNetworkProfilePtrInput` via: +// +// ContainerServiceNetworkProfileArgs{...} +// +// or: +// +// nil +type ContainerServiceNetworkProfilePtrInput interface { + pulumi.Input -func (o ErrorDetailResponseOutput) ToErrorDetailResponseOutputWithContext(ctx context.Context) ErrorDetailResponseOutput { - return o + ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput + ToContainerServiceNetworkProfilePtrOutputWithContext(context.Context) ContainerServiceNetworkProfilePtrOutput } -// The error additional info. -func (o ErrorDetailResponseOutput) AdditionalInfo() ErrorAdditionalInfoResponseArrayOutput { - return o.ApplyT(func(v ErrorDetailResponse) []ErrorAdditionalInfoResponse { return v.AdditionalInfo }).(ErrorAdditionalInfoResponseArrayOutput) -} +type containerServiceNetworkProfilePtrType ContainerServiceNetworkProfileArgs -// The error code. -func (o ErrorDetailResponseOutput) Code() pulumi.StringOutput { - return o.ApplyT(func(v ErrorDetailResponse) string { return v.Code }).(pulumi.StringOutput) +func ContainerServiceNetworkProfilePtr(v *ContainerServiceNetworkProfileArgs) ContainerServiceNetworkProfilePtrInput { + return (*containerServiceNetworkProfilePtrType)(v) } -// The error details. -func (o ErrorDetailResponseOutput) Details() ErrorDetailResponseArrayOutput { - return o.ApplyT(func(v ErrorDetailResponse) []ErrorDetailResponse { return v.Details }).(ErrorDetailResponseArrayOutput) +func (*containerServiceNetworkProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceNetworkProfile)(nil)).Elem() } -// The error message. -func (o ErrorDetailResponseOutput) Message() pulumi.StringOutput { - return o.ApplyT(func(v ErrorDetailResponse) string { return v.Message }).(pulumi.StringOutput) +func (i *containerServiceNetworkProfilePtrType) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { + return i.ToContainerServiceNetworkProfilePtrOutputWithContext(context.Background()) } -// The error target. -func (o ErrorDetailResponseOutput) Target() pulumi.StringOutput { - return o.ApplyT(func(v ErrorDetailResponse) string { return v.Target }).(pulumi.StringOutput) +func (i *containerServiceNetworkProfilePtrType) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceNetworkProfilePtrOutput) } -type ErrorDetailResponseArrayOutput struct{ *pulumi.OutputState } +// Profile of network configuration. +type ContainerServiceNetworkProfileOutput struct{ *pulumi.OutputState } -func (ErrorDetailResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ErrorDetailResponse)(nil)).Elem() +func (ContainerServiceNetworkProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceNetworkProfile)(nil)).Elem() } -func (o ErrorDetailResponseArrayOutput) ToErrorDetailResponseArrayOutput() ErrorDetailResponseArrayOutput { +func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfileOutput() ContainerServiceNetworkProfileOutput { return o } -func (o ErrorDetailResponseArrayOutput) ToErrorDetailResponseArrayOutputWithContext(ctx context.Context) ErrorDetailResponseArrayOutput { +func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfileOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileOutput { return o } -func (o ErrorDetailResponseArrayOutput) Index(i pulumi.IntInput) ErrorDetailResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ErrorDetailResponse { - return vs[0].([]ErrorDetailResponse)[vs[1].(int)] - }).(ErrorDetailResponseOutput) -} - -// The complex type of the extended location. -type ExtendedLocation struct { - // The name of the extended location. - Name *string `pulumi:"name"` - // The type of the extended location. - Type *string `pulumi:"type"` -} - -// ExtendedLocationInput is an input type that accepts ExtendedLocationArgs and ExtendedLocationOutput values. -// You can construct a concrete instance of `ExtendedLocationInput` via: -// -// ExtendedLocationArgs{...} -type ExtendedLocationInput interface { - pulumi.Input - - ToExtendedLocationOutput() ExtendedLocationOutput - ToExtendedLocationOutputWithContext(context.Context) ExtendedLocationOutput -} - -// The complex type of the extended location. -type ExtendedLocationArgs struct { - // The name of the extended location. - Name pulumi.StringPtrInput `pulumi:"name"` - // The type of the extended location. - Type pulumi.StringPtrInput `pulumi:"type"` -} - -func (ExtendedLocationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ExtendedLocation)(nil)).Elem() +func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { + return o.ToContainerServiceNetworkProfilePtrOutputWithContext(context.Background()) } -func (i ExtendedLocationArgs) ToExtendedLocationOutput() ExtendedLocationOutput { - return i.ToExtendedLocationOutputWithContext(context.Background()) +func (o ContainerServiceNetworkProfileOutput) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerServiceNetworkProfile) *ContainerServiceNetworkProfile { + return &v + }).(ContainerServiceNetworkProfilePtrOutput) } -func (i ExtendedLocationArgs) ToExtendedLocationOutputWithContext(ctx context.Context) ExtendedLocationOutput { - return pulumi.ToOutputWithContext(ctx, i).(ExtendedLocationOutput) +// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. +func (o ContainerServiceNetworkProfileOutput) DnsServiceIP() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.DnsServiceIP }).(pulumi.StringPtrOutput) } -func (i ExtendedLocationArgs) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { - return i.ToExtendedLocationPtrOutputWithContext(context.Background()) +// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. +func (o ContainerServiceNetworkProfileOutput) IpFamilies() pulumi.StringArrayOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) []string { return v.IpFamilies }).(pulumi.StringArrayOutput) } -func (i ExtendedLocationArgs) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ExtendedLocationOutput).ToExtendedLocationPtrOutputWithContext(ctx) +// Profile of the cluster load balancer. +func (o ContainerServiceNetworkProfileOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfilePtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *ManagedClusterLoadBalancerProfile { + return v.LoadBalancerProfile + }).(ManagedClusterLoadBalancerProfilePtrOutput) } -// ExtendedLocationPtrInput is an input type that accepts ExtendedLocationArgs, ExtendedLocationPtr and ExtendedLocationPtrOutput values. -// You can construct a concrete instance of `ExtendedLocationPtrInput` via: -// -// ExtendedLocationArgs{...} -// -// or: -// -// nil -type ExtendedLocationPtrInput interface { - pulumi.Input - - ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput - ToExtendedLocationPtrOutputWithContext(context.Context) ExtendedLocationPtrOutput +// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. +func (o ContainerServiceNetworkProfileOutput) LoadBalancerSku() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.LoadBalancerSku }).(pulumi.StringPtrOutput) } -type extendedLocationPtrType ExtendedLocationArgs - -func ExtendedLocationPtr(v *ExtendedLocationArgs) ExtendedLocationPtrInput { - return (*extendedLocationPtrType)(v) +// Profile of the cluster NAT gateway. +func (o ContainerServiceNetworkProfileOutput) NatGatewayProfile() ManagedClusterNATGatewayProfilePtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *ManagedClusterNATGatewayProfile { return v.NatGatewayProfile }).(ManagedClusterNATGatewayProfilePtrOutput) } -func (*extendedLocationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ExtendedLocation)(nil)).Elem() +// Network dataplane used in the Kubernetes cluster. +func (o ContainerServiceNetworkProfileOutput) NetworkDataplane() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkDataplane }).(pulumi.StringPtrOutput) } -func (i *extendedLocationPtrType) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { - return i.ToExtendedLocationPtrOutputWithContext(context.Background()) +// This cannot be specified if networkPlugin is anything other than 'azure'. +func (o ContainerServiceNetworkProfileOutput) NetworkMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkMode }).(pulumi.StringPtrOutput) } -func (i *extendedLocationPtrType) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ExtendedLocationPtrOutput) +// Network plugin used for building the Kubernetes network. +func (o ContainerServiceNetworkProfileOutput) NetworkPlugin() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkPlugin }).(pulumi.StringPtrOutput) } -// The complex type of the extended location. -type ExtendedLocationOutput struct{ *pulumi.OutputState } - -func (ExtendedLocationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ExtendedLocation)(nil)).Elem() +// The mode the network plugin should use. +func (o ContainerServiceNetworkProfileOutput) NetworkPluginMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkPluginMode }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationOutput) ToExtendedLocationOutput() ExtendedLocationOutput { - return o +// Network policy used for building the Kubernetes network. +func (o ContainerServiceNetworkProfileOutput) NetworkPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.NetworkPolicy }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationOutput) ToExtendedLocationOutputWithContext(ctx context.Context) ExtendedLocationOutput { - return o +// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). +func (o ContainerServiceNetworkProfileOutput) OutboundType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.OutboundType }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationOutput) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { - return o.ToExtendedLocationPtrOutputWithContext(context.Background()) +// A CIDR notation IP range from which to assign pod IPs when kubenet is used. +func (o ContainerServiceNetworkProfileOutput) PodCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.PodCidr }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationOutput) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ExtendedLocation) *ExtendedLocation { - return &v - }).(ExtendedLocationPtrOutput) +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. +func (o ContainerServiceNetworkProfileOutput) PodCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) []string { return v.PodCidrs }).(pulumi.StringArrayOutput) } -// The name of the extended location. -func (o ExtendedLocationOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v ExtendedLocation) *string { return v.Name }).(pulumi.StringPtrOutput) +// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfileOutput) ServiceCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) *string { return v.ServiceCidr }).(pulumi.StringPtrOutput) } -// The type of the extended location. -func (o ExtendedLocationOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v ExtendedLocation) *string { return v.Type }).(pulumi.StringPtrOutput) +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfileOutput) ServiceCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfile) []string { return v.ServiceCidrs }).(pulumi.StringArrayOutput) } -type ExtendedLocationPtrOutput struct{ *pulumi.OutputState } +type ContainerServiceNetworkProfilePtrOutput struct{ *pulumi.OutputState } -func (ExtendedLocationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ExtendedLocation)(nil)).Elem() +func (ContainerServiceNetworkProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceNetworkProfile)(nil)).Elem() } -func (o ExtendedLocationPtrOutput) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { +func (o ContainerServiceNetworkProfilePtrOutput) ToContainerServiceNetworkProfilePtrOutput() ContainerServiceNetworkProfilePtrOutput { return o } -func (o ExtendedLocationPtrOutput) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { +func (o ContainerServiceNetworkProfilePtrOutput) ToContainerServiceNetworkProfilePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfilePtrOutput { return o } -func (o ExtendedLocationPtrOutput) Elem() ExtendedLocationOutput { - return o.ApplyT(func(v *ExtendedLocation) ExtendedLocation { +func (o ContainerServiceNetworkProfilePtrOutput) Elem() ContainerServiceNetworkProfileOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) ContainerServiceNetworkProfile { if v != nil { return *v } - var ret ExtendedLocation + var ret ContainerServiceNetworkProfile return ret - }).(ExtendedLocationOutput) + }).(ContainerServiceNetworkProfileOutput) } -// The name of the extended location. -func (o ExtendedLocationPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ExtendedLocation) *string { +// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. +func (o ContainerServiceNetworkProfilePtrOutput) DnsServiceIP() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { if v == nil { return nil } - return v.Name + return v.DnsServiceIP }).(pulumi.StringPtrOutput) } -// The type of the extended location. -func (o ExtendedLocationPtrOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ExtendedLocation) *string { +// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. +func (o ContainerServiceNetworkProfilePtrOutput) IpFamilies() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) []string { if v == nil { return nil } - return v.Type - }).(pulumi.StringPtrOutput) + return v.IpFamilies + }).(pulumi.StringArrayOutput) } -// The complex type of the extended location. -type ExtendedLocationResponse struct { - // The name of the extended location. - Name *string `pulumi:"name"` - // The type of the extended location. - Type *string `pulumi:"type"` +// Profile of the cluster load balancer. +func (o ContainerServiceNetworkProfilePtrOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfilePtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *ManagedClusterLoadBalancerProfile { + if v == nil { + return nil + } + return v.LoadBalancerProfile + }).(ManagedClusterLoadBalancerProfilePtrOutput) } -// The complex type of the extended location. -type ExtendedLocationResponseOutput struct{ *pulumi.OutputState } - -func (ExtendedLocationResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ExtendedLocationResponse)(nil)).Elem() +// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. +func (o ContainerServiceNetworkProfilePtrOutput) LoadBalancerSku() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil + } + return v.LoadBalancerSku + }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationResponseOutput) ToExtendedLocationResponseOutput() ExtendedLocationResponseOutput { - return o -} - -func (o ExtendedLocationResponseOutput) ToExtendedLocationResponseOutputWithContext(ctx context.Context) ExtendedLocationResponseOutput { - return o -} - -// The name of the extended location. -func (o ExtendedLocationResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v ExtendedLocationResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +// Profile of the cluster NAT gateway. +func (o ContainerServiceNetworkProfilePtrOutput) NatGatewayProfile() ManagedClusterNATGatewayProfilePtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *ManagedClusterNATGatewayProfile { + if v == nil { + return nil + } + return v.NatGatewayProfile + }).(ManagedClusterNATGatewayProfilePtrOutput) } -// The type of the extended location. -func (o ExtendedLocationResponseOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v ExtendedLocationResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +// Network dataplane used in the Kubernetes cluster. +func (o ContainerServiceNetworkProfilePtrOutput) NetworkDataplane() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil + } + return v.NetworkDataplane + }).(pulumi.StringPtrOutput) } -type ExtendedLocationResponsePtrOutput struct{ *pulumi.OutputState } - -func (ExtendedLocationResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ExtendedLocationResponse)(nil)).Elem() +// This cannot be specified if networkPlugin is anything other than 'azure'. +func (o ContainerServiceNetworkProfilePtrOutput) NetworkMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil + } + return v.NetworkMode + }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationResponsePtrOutput) ToExtendedLocationResponsePtrOutput() ExtendedLocationResponsePtrOutput { - return o +// Network plugin used for building the Kubernetes network. +func (o ContainerServiceNetworkProfilePtrOutput) NetworkPlugin() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil + } + return v.NetworkPlugin + }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationResponsePtrOutput) ToExtendedLocationResponsePtrOutputWithContext(ctx context.Context) ExtendedLocationResponsePtrOutput { - return o +// The mode the network plugin should use. +func (o ContainerServiceNetworkProfilePtrOutput) NetworkPluginMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil + } + return v.NetworkPluginMode + }).(pulumi.StringPtrOutput) } -func (o ExtendedLocationResponsePtrOutput) Elem() ExtendedLocationResponseOutput { - return o.ApplyT(func(v *ExtendedLocationResponse) ExtendedLocationResponse { - if v != nil { - return *v +// Network policy used for building the Kubernetes network. +func (o ContainerServiceNetworkProfilePtrOutput) NetworkPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil } - var ret ExtendedLocationResponse - return ret - }).(ExtendedLocationResponseOutput) + return v.NetworkPolicy + }).(pulumi.StringPtrOutput) } -// The name of the extended location. -func (o ExtendedLocationResponsePtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ExtendedLocationResponse) *string { +// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). +func (o ContainerServiceNetworkProfilePtrOutput) OutboundType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { if v == nil { return nil } - return v.Name + return v.OutboundType }).(pulumi.StringPtrOutput) } -// The type of the extended location. -func (o ExtendedLocationResponsePtrOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ExtendedLocationResponse) *string { +// A CIDR notation IP range from which to assign pod IPs when kubenet is used. +func (o ContainerServiceNetworkProfilePtrOutput) PodCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { if v == nil { return nil } - return v.Type + return v.PodCidr }).(pulumi.StringPtrOutput) } -// One credential result item. -type FleetCredentialResultResponse struct { - // The name of the credential. - Name string `pulumi:"name"` - // Base64-encoded Kubernetes configuration file. - Value string `pulumi:"value"` +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. +func (o ContainerServiceNetworkProfilePtrOutput) PodCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) []string { + if v == nil { + return nil + } + return v.PodCidrs + }).(pulumi.StringArrayOutput) } -// One credential result item. -type FleetCredentialResultResponseOutput struct{ *pulumi.OutputState } - -func (FleetCredentialResultResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetCredentialResultResponse)(nil)).Elem() +// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfilePtrOutput) ServiceCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) *string { + if v == nil { + return nil + } + return v.ServiceCidr + }).(pulumi.StringPtrOutput) } -func (o FleetCredentialResultResponseOutput) ToFleetCredentialResultResponseOutput() FleetCredentialResultResponseOutput { - return o +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfilePtrOutput) ServiceCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfile) []string { + if v == nil { + return nil + } + return v.ServiceCidrs + }).(pulumi.StringArrayOutput) } -func (o FleetCredentialResultResponseOutput) ToFleetCredentialResultResponseOutputWithContext(ctx context.Context) FleetCredentialResultResponseOutput { - return o +// Profile of network configuration. +type ContainerServiceNetworkProfileResponse struct { + // An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. + DnsServiceIP *string `pulumi:"dnsServiceIP"` + // IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. + IpFamilies []string `pulumi:"ipFamilies"` + // Profile of the cluster load balancer. + LoadBalancerProfile *ManagedClusterLoadBalancerProfileResponse `pulumi:"loadBalancerProfile"` + // The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. + LoadBalancerSku *string `pulumi:"loadBalancerSku"` + // Profile of the cluster NAT gateway. + NatGatewayProfile *ManagedClusterNATGatewayProfileResponse `pulumi:"natGatewayProfile"` + // Network dataplane used in the Kubernetes cluster. + NetworkDataplane *string `pulumi:"networkDataplane"` + // This cannot be specified if networkPlugin is anything other than 'azure'. + NetworkMode *string `pulumi:"networkMode"` + // Network plugin used for building the Kubernetes network. + NetworkPlugin *string `pulumi:"networkPlugin"` + // The mode the network plugin should use. + NetworkPluginMode *string `pulumi:"networkPluginMode"` + // Network policy used for building the Kubernetes network. + NetworkPolicy *string `pulumi:"networkPolicy"` + // This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). + OutboundType *string `pulumi:"outboundType"` + // A CIDR notation IP range from which to assign pod IPs when kubenet is used. + PodCidr *string `pulumi:"podCidr"` + // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. + PodCidrs []string `pulumi:"podCidrs"` + // A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. + ServiceCidr *string `pulumi:"serviceCidr"` + // One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. + ServiceCidrs []string `pulumi:"serviceCidrs"` } -// The name of the credential. -func (o FleetCredentialResultResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v FleetCredentialResultResponse) string { return v.Name }).(pulumi.StringOutput) -} +// Defaults sets the appropriate defaults for ContainerServiceNetworkProfileResponse +func (val *ContainerServiceNetworkProfileResponse) Defaults() *ContainerServiceNetworkProfileResponse { + if val == nil { + return nil + } + tmp := *val + if tmp.DnsServiceIP == nil { + dnsServiceIP_ := "10.0.0.10" + tmp.DnsServiceIP = &dnsServiceIP_ + } + tmp.LoadBalancerProfile = tmp.LoadBalancerProfile.Defaults() -// Base64-encoded Kubernetes configuration file. -func (o FleetCredentialResultResponseOutput) Value() pulumi.StringOutput { - return o.ApplyT(func(v FleetCredentialResultResponse) string { return v.Value }).(pulumi.StringOutput) + tmp.NatGatewayProfile = tmp.NatGatewayProfile.Defaults() + + if tmp.NetworkPlugin == nil { + networkPlugin_ := "kubenet" + tmp.NetworkPlugin = &networkPlugin_ + } + if tmp.OutboundType == nil { + outboundType_ := "loadBalancer" + tmp.OutboundType = &outboundType_ + } + if tmp.PodCidr == nil { + podCidr_ := "10.244.0.0/16" + tmp.PodCidr = &podCidr_ + } + if tmp.ServiceCidr == nil { + serviceCidr_ := "10.0.0.0/16" + tmp.ServiceCidr = &serviceCidr_ + } + return &tmp } -type FleetCredentialResultResponseArrayOutput struct{ *pulumi.OutputState } +// Profile of network configuration. +type ContainerServiceNetworkProfileResponseOutput struct{ *pulumi.OutputState } -func (FleetCredentialResultResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]FleetCredentialResultResponse)(nil)).Elem() +func (ContainerServiceNetworkProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceNetworkProfileResponse)(nil)).Elem() } -func (o FleetCredentialResultResponseArrayOutput) ToFleetCredentialResultResponseArrayOutput() FleetCredentialResultResponseArrayOutput { +func (o ContainerServiceNetworkProfileResponseOutput) ToContainerServiceNetworkProfileResponseOutput() ContainerServiceNetworkProfileResponseOutput { return o } -func (o FleetCredentialResultResponseArrayOutput) ToFleetCredentialResultResponseArrayOutputWithContext(ctx context.Context) FleetCredentialResultResponseArrayOutput { +func (o ContainerServiceNetworkProfileResponseOutput) ToContainerServiceNetworkProfileResponseOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileResponseOutput { return o } -func (o FleetCredentialResultResponseArrayOutput) Index(i pulumi.IntInput) FleetCredentialResultResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) FleetCredentialResultResponse { - return vs[0].([]FleetCredentialResultResponse)[vs[1].(int)] - }).(FleetCredentialResultResponseOutput) +// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. +func (o ContainerServiceNetworkProfileResponseOutput) DnsServiceIP() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.DnsServiceIP }).(pulumi.StringPtrOutput) } -// The FleetHubProfile configures the fleet hub. -type FleetHubProfile struct { - // DNS prefix used to create the FQDN for the Fleet hub. - DnsPrefix *string `pulumi:"dnsPrefix"` +// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. +func (o ContainerServiceNetworkProfileResponseOutput) IpFamilies() pulumi.StringArrayOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) []string { return v.IpFamilies }).(pulumi.StringArrayOutput) } -// FleetHubProfileInput is an input type that accepts FleetHubProfileArgs and FleetHubProfileOutput values. -// You can construct a concrete instance of `FleetHubProfileInput` via: -// -// FleetHubProfileArgs{...} -type FleetHubProfileInput interface { - pulumi.Input - - ToFleetHubProfileOutput() FleetHubProfileOutput - ToFleetHubProfileOutputWithContext(context.Context) FleetHubProfileOutput +// Profile of the cluster load balancer. +func (o ContainerServiceNetworkProfileResponseOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfileResponsePtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *ManagedClusterLoadBalancerProfileResponse { + return v.LoadBalancerProfile + }).(ManagedClusterLoadBalancerProfileResponsePtrOutput) } -// The FleetHubProfile configures the fleet hub. -type FleetHubProfileArgs struct { - // DNS prefix used to create the FQDN for the Fleet hub. - DnsPrefix pulumi.StringPtrInput `pulumi:"dnsPrefix"` +// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. +func (o ContainerServiceNetworkProfileResponseOutput) LoadBalancerSku() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.LoadBalancerSku }).(pulumi.StringPtrOutput) } -func (FleetHubProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*FleetHubProfile)(nil)).Elem() +// Profile of the cluster NAT gateway. +func (o ContainerServiceNetworkProfileResponseOutput) NatGatewayProfile() ManagedClusterNATGatewayProfileResponsePtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *ManagedClusterNATGatewayProfileResponse { + return v.NatGatewayProfile + }).(ManagedClusterNATGatewayProfileResponsePtrOutput) } -func (i FleetHubProfileArgs) ToFleetHubProfileOutput() FleetHubProfileOutput { - return i.ToFleetHubProfileOutputWithContext(context.Background()) +// Network dataplane used in the Kubernetes cluster. +func (o ContainerServiceNetworkProfileResponseOutput) NetworkDataplane() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkDataplane }).(pulumi.StringPtrOutput) } -func (i FleetHubProfileArgs) ToFleetHubProfileOutputWithContext(ctx context.Context) FleetHubProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetHubProfileOutput) +// This cannot be specified if networkPlugin is anything other than 'azure'. +func (o ContainerServiceNetworkProfileResponseOutput) NetworkMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkMode }).(pulumi.StringPtrOutput) } -func (i FleetHubProfileArgs) ToFleetHubProfilePtrOutput() FleetHubProfilePtrOutput { - return i.ToFleetHubProfilePtrOutputWithContext(context.Background()) +// Network plugin used for building the Kubernetes network. +func (o ContainerServiceNetworkProfileResponseOutput) NetworkPlugin() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkPlugin }).(pulumi.StringPtrOutput) } -func (i FleetHubProfileArgs) ToFleetHubProfilePtrOutputWithContext(ctx context.Context) FleetHubProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetHubProfileOutput).ToFleetHubProfilePtrOutputWithContext(ctx) +// The mode the network plugin should use. +func (o ContainerServiceNetworkProfileResponseOutput) NetworkPluginMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkPluginMode }).(pulumi.StringPtrOutput) } -// FleetHubProfilePtrInput is an input type that accepts FleetHubProfileArgs, FleetHubProfilePtr and FleetHubProfilePtrOutput values. -// You can construct a concrete instance of `FleetHubProfilePtrInput` via: -// -// FleetHubProfileArgs{...} -// -// or: -// -// nil -type FleetHubProfilePtrInput interface { - pulumi.Input - - ToFleetHubProfilePtrOutput() FleetHubProfilePtrOutput - ToFleetHubProfilePtrOutputWithContext(context.Context) FleetHubProfilePtrOutput +// Network policy used for building the Kubernetes network. +func (o ContainerServiceNetworkProfileResponseOutput) NetworkPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.NetworkPolicy }).(pulumi.StringPtrOutput) } -type fleetHubProfilePtrType FleetHubProfileArgs - -func FleetHubProfilePtr(v *FleetHubProfileArgs) FleetHubProfilePtrInput { - return (*fleetHubProfilePtrType)(v) +// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). +func (o ContainerServiceNetworkProfileResponseOutput) OutboundType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.OutboundType }).(pulumi.StringPtrOutput) } -func (*fleetHubProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**FleetHubProfile)(nil)).Elem() +// A CIDR notation IP range from which to assign pod IPs when kubenet is used. +func (o ContainerServiceNetworkProfileResponseOutput) PodCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.PodCidr }).(pulumi.StringPtrOutput) } -func (i *fleetHubProfilePtrType) ToFleetHubProfilePtrOutput() FleetHubProfilePtrOutput { - return i.ToFleetHubProfilePtrOutputWithContext(context.Background()) +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. +func (o ContainerServiceNetworkProfileResponseOutput) PodCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) []string { return v.PodCidrs }).(pulumi.StringArrayOutput) } -func (i *fleetHubProfilePtrType) ToFleetHubProfilePtrOutputWithContext(ctx context.Context) FleetHubProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetHubProfilePtrOutput) +// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfileResponseOutput) ServiceCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) *string { return v.ServiceCidr }).(pulumi.StringPtrOutput) } -// The FleetHubProfile configures the fleet hub. -type FleetHubProfileOutput struct{ *pulumi.OutputState } - -func (FleetHubProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetHubProfile)(nil)).Elem() +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfileResponseOutput) ServiceCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v ContainerServiceNetworkProfileResponse) []string { return v.ServiceCidrs }).(pulumi.StringArrayOutput) } -func (o FleetHubProfileOutput) ToFleetHubProfileOutput() FleetHubProfileOutput { - return o -} - -func (o FleetHubProfileOutput) ToFleetHubProfileOutputWithContext(ctx context.Context) FleetHubProfileOutput { - return o -} - -func (o FleetHubProfileOutput) ToFleetHubProfilePtrOutput() FleetHubProfilePtrOutput { - return o.ToFleetHubProfilePtrOutputWithContext(context.Background()) -} - -func (o FleetHubProfileOutput) ToFleetHubProfilePtrOutputWithContext(ctx context.Context) FleetHubProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetHubProfile) *FleetHubProfile { - return &v - }).(FleetHubProfilePtrOutput) -} - -// DNS prefix used to create the FQDN for the Fleet hub. -func (o FleetHubProfileOutput) DnsPrefix() pulumi.StringPtrOutput { - return o.ApplyT(func(v FleetHubProfile) *string { return v.DnsPrefix }).(pulumi.StringPtrOutput) -} - -type FleetHubProfilePtrOutput struct{ *pulumi.OutputState } +type ContainerServiceNetworkProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (FleetHubProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetHubProfile)(nil)).Elem() +func (ContainerServiceNetworkProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceNetworkProfileResponse)(nil)).Elem() } -func (o FleetHubProfilePtrOutput) ToFleetHubProfilePtrOutput() FleetHubProfilePtrOutput { +func (o ContainerServiceNetworkProfileResponsePtrOutput) ToContainerServiceNetworkProfileResponsePtrOutput() ContainerServiceNetworkProfileResponsePtrOutput { return o } -func (o FleetHubProfilePtrOutput) ToFleetHubProfilePtrOutputWithContext(ctx context.Context) FleetHubProfilePtrOutput { +func (o ContainerServiceNetworkProfileResponsePtrOutput) ToContainerServiceNetworkProfileResponsePtrOutputWithContext(ctx context.Context) ContainerServiceNetworkProfileResponsePtrOutput { return o } -func (o FleetHubProfilePtrOutput) Elem() FleetHubProfileOutput { - return o.ApplyT(func(v *FleetHubProfile) FleetHubProfile { +func (o ContainerServiceNetworkProfileResponsePtrOutput) Elem() ContainerServiceNetworkProfileResponseOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) ContainerServiceNetworkProfileResponse { if v != nil { return *v } - var ret FleetHubProfile + var ret ContainerServiceNetworkProfileResponse return ret - }).(FleetHubProfileOutput) + }).(ContainerServiceNetworkProfileResponseOutput) } -// DNS prefix used to create the FQDN for the Fleet hub. -func (o FleetHubProfilePtrOutput) DnsPrefix() pulumi.StringPtrOutput { - return o.ApplyT(func(v *FleetHubProfile) *string { +// An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. +func (o ContainerServiceNetworkProfileResponsePtrOutput) DnsServiceIP() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { if v == nil { return nil } - return v.DnsPrefix + return v.DnsServiceIP }).(pulumi.StringPtrOutput) } -// The FleetHubProfile configures the fleet hub. -type FleetHubProfileResponse struct { - // DNS prefix used to create the FQDN for the Fleet hub. - DnsPrefix *string `pulumi:"dnsPrefix"` - // The FQDN of the Fleet hub. - Fqdn string `pulumi:"fqdn"` - // The Kubernetes version of the Fleet hub. - KubernetesVersion string `pulumi:"kubernetesVersion"` +// IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6. +func (o ContainerServiceNetworkProfileResponsePtrOutput) IpFamilies() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) []string { + if v == nil { + return nil + } + return v.IpFamilies + }).(pulumi.StringArrayOutput) } -// The FleetHubProfile configures the fleet hub. -type FleetHubProfileResponseOutput struct{ *pulumi.OutputState } - -func (FleetHubProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetHubProfileResponse)(nil)).Elem() +// Profile of the cluster load balancer. +func (o ContainerServiceNetworkProfileResponsePtrOutput) LoadBalancerProfile() ManagedClusterLoadBalancerProfileResponsePtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *ManagedClusterLoadBalancerProfileResponse { + if v == nil { + return nil + } + return v.LoadBalancerProfile + }).(ManagedClusterLoadBalancerProfileResponsePtrOutput) } -func (o FleetHubProfileResponseOutput) ToFleetHubProfileResponseOutput() FleetHubProfileResponseOutput { - return o +// The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs. +func (o ContainerServiceNetworkProfileResponsePtrOutput) LoadBalancerSku() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.LoadBalancerSku + }).(pulumi.StringPtrOutput) } -func (o FleetHubProfileResponseOutput) ToFleetHubProfileResponseOutputWithContext(ctx context.Context) FleetHubProfileResponseOutput { - return o +// Profile of the cluster NAT gateway. +func (o ContainerServiceNetworkProfileResponsePtrOutput) NatGatewayProfile() ManagedClusterNATGatewayProfileResponsePtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *ManagedClusterNATGatewayProfileResponse { + if v == nil { + return nil + } + return v.NatGatewayProfile + }).(ManagedClusterNATGatewayProfileResponsePtrOutput) } -// DNS prefix used to create the FQDN for the Fleet hub. -func (o FleetHubProfileResponseOutput) DnsPrefix() pulumi.StringPtrOutput { - return o.ApplyT(func(v FleetHubProfileResponse) *string { return v.DnsPrefix }).(pulumi.StringPtrOutput) +// Network dataplane used in the Kubernetes cluster. +func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkDataplane() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.NetworkDataplane + }).(pulumi.StringPtrOutput) } -// The FQDN of the Fleet hub. -func (o FleetHubProfileResponseOutput) Fqdn() pulumi.StringOutput { - return o.ApplyT(func(v FleetHubProfileResponse) string { return v.Fqdn }).(pulumi.StringOutput) +// This cannot be specified if networkPlugin is anything other than 'azure'. +func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.NetworkMode + }).(pulumi.StringPtrOutput) } -// The Kubernetes version of the Fleet hub. -func (o FleetHubProfileResponseOutput) KubernetesVersion() pulumi.StringOutput { - return o.ApplyT(func(v FleetHubProfileResponse) string { return v.KubernetesVersion }).(pulumi.StringOutput) +// Network plugin used for building the Kubernetes network. +func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkPlugin() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.NetworkPlugin + }).(pulumi.StringPtrOutput) } -type FleetHubProfileResponsePtrOutput struct{ *pulumi.OutputState } - -func (FleetHubProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetHubProfileResponse)(nil)).Elem() +// The mode the network plugin should use. +func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkPluginMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.NetworkPluginMode + }).(pulumi.StringPtrOutput) } -func (o FleetHubProfileResponsePtrOutput) ToFleetHubProfileResponsePtrOutput() FleetHubProfileResponsePtrOutput { - return o +// Network policy used for building the Kubernetes network. +func (o ContainerServiceNetworkProfileResponsePtrOutput) NetworkPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.NetworkPolicy + }).(pulumi.StringPtrOutput) } -func (o FleetHubProfileResponsePtrOutput) ToFleetHubProfileResponsePtrOutputWithContext(ctx context.Context) FleetHubProfileResponsePtrOutput { - return o +// This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype). +func (o ContainerServiceNetworkProfileResponsePtrOutput) OutboundType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil + } + return v.OutboundType + }).(pulumi.StringPtrOutput) } -func (o FleetHubProfileResponsePtrOutput) Elem() FleetHubProfileResponseOutput { - return o.ApplyT(func(v *FleetHubProfileResponse) FleetHubProfileResponse { - if v != nil { - return *v +// A CIDR notation IP range from which to assign pod IPs when kubenet is used. +func (o ContainerServiceNetworkProfileResponsePtrOutput) PodCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { + if v == nil { + return nil } - var ret FleetHubProfileResponse - return ret - }).(FleetHubProfileResponseOutput) + return v.PodCidr + }).(pulumi.StringPtrOutput) } -// DNS prefix used to create the FQDN for the Fleet hub. -func (o FleetHubProfileResponsePtrOutput) DnsPrefix() pulumi.StringPtrOutput { - return o.ApplyT(func(v *FleetHubProfileResponse) *string { +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. +func (o ContainerServiceNetworkProfileResponsePtrOutput) PodCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) []string { if v == nil { return nil } - return v.DnsPrefix - }).(pulumi.StringPtrOutput) + return v.PodCidrs + }).(pulumi.StringArrayOutput) } -// The FQDN of the Fleet hub. -func (o FleetHubProfileResponsePtrOutput) Fqdn() pulumi.StringPtrOutput { - return o.ApplyT(func(v *FleetHubProfileResponse) *string { +// A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfileResponsePtrOutput) ServiceCidr() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) *string { if v == nil { return nil } - return &v.Fqdn + return v.ServiceCidr }).(pulumi.StringPtrOutput) } -// The Kubernetes version of the Fleet hub. -func (o FleetHubProfileResponsePtrOutput) KubernetesVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v *FleetHubProfileResponse) *string { +// One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges. +func (o ContainerServiceNetworkProfileResponsePtrOutput) ServiceCidrs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ContainerServiceNetworkProfileResponse) []string { if v == nil { return nil } - return &v.KubernetesVersion - }).(pulumi.StringPtrOutput) + return v.ServiceCidrs + }).(pulumi.StringArrayOutput) } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type KubeletConfig struct { - // Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). - AllowedUnsafeSysctls []string `pulumi:"allowedUnsafeSysctls"` - // The maximum number of container log files that can be present for a container. The number must be ≥ 2. - ContainerLogMaxFiles *int `pulumi:"containerLogMaxFiles"` - // The maximum size (e.g. 10Mi) of container log file before it is rotated. - ContainerLogMaxSizeMB *int `pulumi:"containerLogMaxSizeMB"` - // The default is true. - CpuCfsQuota *bool `pulumi:"cpuCfsQuota"` - // The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. - CpuCfsQuotaPeriod *string `pulumi:"cpuCfsQuotaPeriod"` - // The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. - CpuManagerPolicy *string `pulumi:"cpuManagerPolicy"` - // If set to true it will make the Kubelet fail to start if swap is enabled on the node. - FailSwapOn *bool `pulumi:"failSwapOn"` - // To disable image garbage collection, set to 100. The default is 85% - ImageGcHighThreshold *int `pulumi:"imageGcHighThreshold"` - // This cannot be set higher than imageGcHighThreshold. The default is 80% - ImageGcLowThreshold *int `pulumi:"imageGcLowThreshold"` - // The maximum number of processes per pod. - PodMaxPids *int `pulumi:"podMaxPids"` - // For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. - TopologyManagerPolicy *string `pulumi:"topologyManagerPolicy"` +// SSH configuration for Linux-based VMs running on Azure. +type ContainerServiceSshConfiguration struct { + // The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. + PublicKeys []ContainerServiceSshPublicKey `pulumi:"publicKeys"` } -// KubeletConfigInput is an input type that accepts KubeletConfigArgs and KubeletConfigOutput values. -// You can construct a concrete instance of `KubeletConfigInput` via: +// ContainerServiceSshConfigurationInput is an input type that accepts ContainerServiceSshConfigurationArgs and ContainerServiceSshConfigurationOutput values. +// You can construct a concrete instance of `ContainerServiceSshConfigurationInput` via: // -// KubeletConfigArgs{...} -type KubeletConfigInput interface { +// ContainerServiceSshConfigurationArgs{...} +type ContainerServiceSshConfigurationInput interface { pulumi.Input - ToKubeletConfigOutput() KubeletConfigOutput - ToKubeletConfigOutputWithContext(context.Context) KubeletConfigOutput + ToContainerServiceSshConfigurationOutput() ContainerServiceSshConfigurationOutput + ToContainerServiceSshConfigurationOutputWithContext(context.Context) ContainerServiceSshConfigurationOutput } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type KubeletConfigArgs struct { - // Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). - AllowedUnsafeSysctls pulumi.StringArrayInput `pulumi:"allowedUnsafeSysctls"` - // The maximum number of container log files that can be present for a container. The number must be ≥ 2. - ContainerLogMaxFiles pulumi.IntPtrInput `pulumi:"containerLogMaxFiles"` - // The maximum size (e.g. 10Mi) of container log file before it is rotated. - ContainerLogMaxSizeMB pulumi.IntPtrInput `pulumi:"containerLogMaxSizeMB"` - // The default is true. - CpuCfsQuota pulumi.BoolPtrInput `pulumi:"cpuCfsQuota"` - // The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. - CpuCfsQuotaPeriod pulumi.StringPtrInput `pulumi:"cpuCfsQuotaPeriod"` - // The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. - CpuManagerPolicy pulumi.StringPtrInput `pulumi:"cpuManagerPolicy"` - // If set to true it will make the Kubelet fail to start if swap is enabled on the node. - FailSwapOn pulumi.BoolPtrInput `pulumi:"failSwapOn"` - // To disable image garbage collection, set to 100. The default is 85% - ImageGcHighThreshold pulumi.IntPtrInput `pulumi:"imageGcHighThreshold"` - // This cannot be set higher than imageGcHighThreshold. The default is 80% - ImageGcLowThreshold pulumi.IntPtrInput `pulumi:"imageGcLowThreshold"` - // The maximum number of processes per pod. - PodMaxPids pulumi.IntPtrInput `pulumi:"podMaxPids"` - // For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. - TopologyManagerPolicy pulumi.StringPtrInput `pulumi:"topologyManagerPolicy"` +// SSH configuration for Linux-based VMs running on Azure. +type ContainerServiceSshConfigurationArgs struct { + // The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. + PublicKeys ContainerServiceSshPublicKeyArrayInput `pulumi:"publicKeys"` } -func (KubeletConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*KubeletConfig)(nil)).Elem() +func (ContainerServiceSshConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceSshConfiguration)(nil)).Elem() } -func (i KubeletConfigArgs) ToKubeletConfigOutput() KubeletConfigOutput { - return i.ToKubeletConfigOutputWithContext(context.Background()) +func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationOutput() ContainerServiceSshConfigurationOutput { + return i.ToContainerServiceSshConfigurationOutputWithContext(context.Background()) } -func (i KubeletConfigArgs) ToKubeletConfigOutputWithContext(ctx context.Context) KubeletConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(KubeletConfigOutput) +func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshConfigurationOutput) } -func (i KubeletConfigArgs) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { - return i.ToKubeletConfigPtrOutputWithContext(context.Background()) +func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { + return i.ToContainerServiceSshConfigurationPtrOutputWithContext(context.Background()) } -func (i KubeletConfigArgs) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(KubeletConfigOutput).ToKubeletConfigPtrOutputWithContext(ctx) +func (i ContainerServiceSshConfigurationArgs) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshConfigurationOutput).ToContainerServiceSshConfigurationPtrOutputWithContext(ctx) } -// KubeletConfigPtrInput is an input type that accepts KubeletConfigArgs, KubeletConfigPtr and KubeletConfigPtrOutput values. -// You can construct a concrete instance of `KubeletConfigPtrInput` via: +// ContainerServiceSshConfigurationPtrInput is an input type that accepts ContainerServiceSshConfigurationArgs, ContainerServiceSshConfigurationPtr and ContainerServiceSshConfigurationPtrOutput values. +// You can construct a concrete instance of `ContainerServiceSshConfigurationPtrInput` via: // -// KubeletConfigArgs{...} +// ContainerServiceSshConfigurationArgs{...} // // or: // // nil -type KubeletConfigPtrInput interface { +type ContainerServiceSshConfigurationPtrInput interface { pulumi.Input - ToKubeletConfigPtrOutput() KubeletConfigPtrOutput - ToKubeletConfigPtrOutputWithContext(context.Context) KubeletConfigPtrOutput + ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput + ToContainerServiceSshConfigurationPtrOutputWithContext(context.Context) ContainerServiceSshConfigurationPtrOutput } -type kubeletConfigPtrType KubeletConfigArgs +type containerServiceSshConfigurationPtrType ContainerServiceSshConfigurationArgs -func KubeletConfigPtr(v *KubeletConfigArgs) KubeletConfigPtrInput { - return (*kubeletConfigPtrType)(v) +func ContainerServiceSshConfigurationPtr(v *ContainerServiceSshConfigurationArgs) ContainerServiceSshConfigurationPtrInput { + return (*containerServiceSshConfigurationPtrType)(v) } -func (*kubeletConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**KubeletConfig)(nil)).Elem() +func (*containerServiceSshConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceSshConfiguration)(nil)).Elem() } -func (i *kubeletConfigPtrType) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { - return i.ToKubeletConfigPtrOutputWithContext(context.Background()) +func (i *containerServiceSshConfigurationPtrType) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { + return i.ToContainerServiceSshConfigurationPtrOutputWithContext(context.Background()) } -func (i *kubeletConfigPtrType) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(KubeletConfigPtrOutput) +func (i *containerServiceSshConfigurationPtrType) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshConfigurationPtrOutput) } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type KubeletConfigOutput struct{ *pulumi.OutputState } +// SSH configuration for Linux-based VMs running on Azure. +type ContainerServiceSshConfigurationOutput struct{ *pulumi.OutputState } -func (KubeletConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*KubeletConfig)(nil)).Elem() +func (ContainerServiceSshConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceSshConfiguration)(nil)).Elem() } -func (o KubeletConfigOutput) ToKubeletConfigOutput() KubeletConfigOutput { +func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationOutput() ContainerServiceSshConfigurationOutput { return o } -func (o KubeletConfigOutput) ToKubeletConfigOutputWithContext(ctx context.Context) KubeletConfigOutput { +func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationOutput { return o } -func (o KubeletConfigOutput) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { - return o.ToKubeletConfigPtrOutputWithContext(context.Background()) +func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { + return o.ToContainerServiceSshConfigurationPtrOutputWithContext(context.Background()) } -func (o KubeletConfigOutput) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v KubeletConfig) *KubeletConfig { +func (o ContainerServiceSshConfigurationOutput) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerServiceSshConfiguration) *ContainerServiceSshConfiguration { return &v - }).(KubeletConfigPtrOutput) + }).(ContainerServiceSshConfigurationPtrOutput) } -// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). -func (o KubeletConfigOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { - return o.ApplyT(func(v KubeletConfig) []string { return v.AllowedUnsafeSysctls }).(pulumi.StringArrayOutput) +// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. +func (o ContainerServiceSshConfigurationOutput) PublicKeys() ContainerServiceSshPublicKeyArrayOutput { + return o.ApplyT(func(v ContainerServiceSshConfiguration) []ContainerServiceSshPublicKey { return v.PublicKeys }).(ContainerServiceSshPublicKeyArrayOutput) } -// The maximum number of container log files that can be present for a container. The number must be ≥ 2. -func (o KubeletConfigOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfig) *int { return v.ContainerLogMaxFiles }).(pulumi.IntPtrOutput) +type ContainerServiceSshConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (ContainerServiceSshConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceSshConfiguration)(nil)).Elem() } -// The maximum size (e.g. 10Mi) of container log file before it is rotated. -func (o KubeletConfigOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfig) *int { return v.ContainerLogMaxSizeMB }).(pulumi.IntPtrOutput) +func (o ContainerServiceSshConfigurationPtrOutput) ToContainerServiceSshConfigurationPtrOutput() ContainerServiceSshConfigurationPtrOutput { + return o } -// The default is true. -func (o KubeletConfigOutput) CpuCfsQuota() pulumi.BoolPtrOutput { - return o.ApplyT(func(v KubeletConfig) *bool { return v.CpuCfsQuota }).(pulumi.BoolPtrOutput) +func (o ContainerServiceSshConfigurationPtrOutput) ToContainerServiceSshConfigurationPtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationPtrOutput { + return o } -// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. -func (o KubeletConfigOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { - return o.ApplyT(func(v KubeletConfig) *string { return v.CpuCfsQuotaPeriod }).(pulumi.StringPtrOutput) +func (o ContainerServiceSshConfigurationPtrOutput) Elem() ContainerServiceSshConfigurationOutput { + return o.ApplyT(func(v *ContainerServiceSshConfiguration) ContainerServiceSshConfiguration { + if v != nil { + return *v + } + var ret ContainerServiceSshConfiguration + return ret + }).(ContainerServiceSshConfigurationOutput) } -// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. -func (o KubeletConfigOutput) CpuManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v KubeletConfig) *string { return v.CpuManagerPolicy }).(pulumi.StringPtrOutput) +// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. +func (o ContainerServiceSshConfigurationPtrOutput) PublicKeys() ContainerServiceSshPublicKeyArrayOutput { + return o.ApplyT(func(v *ContainerServiceSshConfiguration) []ContainerServiceSshPublicKey { + if v == nil { + return nil + } + return v.PublicKeys + }).(ContainerServiceSshPublicKeyArrayOutput) } -// If set to true it will make the Kubelet fail to start if swap is enabled on the node. -func (o KubeletConfigOutput) FailSwapOn() pulumi.BoolPtrOutput { - return o.ApplyT(func(v KubeletConfig) *bool { return v.FailSwapOn }).(pulumi.BoolPtrOutput) +// SSH configuration for Linux-based VMs running on Azure. +type ContainerServiceSshConfigurationResponse struct { + // The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. + PublicKeys []ContainerServiceSshPublicKeyResponse `pulumi:"publicKeys"` } -// To disable image garbage collection, set to 100. The default is 85% -func (o KubeletConfigOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfig) *int { return v.ImageGcHighThreshold }).(pulumi.IntPtrOutput) +// SSH configuration for Linux-based VMs running on Azure. +type ContainerServiceSshConfigurationResponseOutput struct{ *pulumi.OutputState } + +func (ContainerServiceSshConfigurationResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceSshConfigurationResponse)(nil)).Elem() } -// This cannot be set higher than imageGcHighThreshold. The default is 80% -func (o KubeletConfigOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfig) *int { return v.ImageGcLowThreshold }).(pulumi.IntPtrOutput) +func (o ContainerServiceSshConfigurationResponseOutput) ToContainerServiceSshConfigurationResponseOutput() ContainerServiceSshConfigurationResponseOutput { + return o } -// The maximum number of processes per pod. -func (o KubeletConfigOutput) PodMaxPids() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfig) *int { return v.PodMaxPids }).(pulumi.IntPtrOutput) +func (o ContainerServiceSshConfigurationResponseOutput) ToContainerServiceSshConfigurationResponseOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationResponseOutput { + return o } -// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. -func (o KubeletConfigOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v KubeletConfig) *string { return v.TopologyManagerPolicy }).(pulumi.StringPtrOutput) +// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. +func (o ContainerServiceSshConfigurationResponseOutput) PublicKeys() ContainerServiceSshPublicKeyResponseArrayOutput { + return o.ApplyT(func(v ContainerServiceSshConfigurationResponse) []ContainerServiceSshPublicKeyResponse { + return v.PublicKeys + }).(ContainerServiceSshPublicKeyResponseArrayOutput) } -type KubeletConfigPtrOutput struct{ *pulumi.OutputState } +type ContainerServiceSshConfigurationResponsePtrOutput struct{ *pulumi.OutputState } -func (KubeletConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**KubeletConfig)(nil)).Elem() +func (ContainerServiceSshConfigurationResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ContainerServiceSshConfigurationResponse)(nil)).Elem() } -func (o KubeletConfigPtrOutput) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { +func (o ContainerServiceSshConfigurationResponsePtrOutput) ToContainerServiceSshConfigurationResponsePtrOutput() ContainerServiceSshConfigurationResponsePtrOutput { return o } -func (o KubeletConfigPtrOutput) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { +func (o ContainerServiceSshConfigurationResponsePtrOutput) ToContainerServiceSshConfigurationResponsePtrOutputWithContext(ctx context.Context) ContainerServiceSshConfigurationResponsePtrOutput { return o } -func (o KubeletConfigPtrOutput) Elem() KubeletConfigOutput { - return o.ApplyT(func(v *KubeletConfig) KubeletConfig { +func (o ContainerServiceSshConfigurationResponsePtrOutput) Elem() ContainerServiceSshConfigurationResponseOutput { + return o.ApplyT(func(v *ContainerServiceSshConfigurationResponse) ContainerServiceSshConfigurationResponse { if v != nil { return *v } - var ret KubeletConfig + var ret ContainerServiceSshConfigurationResponse return ret - }).(KubeletConfigOutput) + }).(ContainerServiceSshConfigurationResponseOutput) } -// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). -func (o KubeletConfigPtrOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { - return o.ApplyT(func(v *KubeletConfig) []string { +// The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified. +func (o ContainerServiceSshConfigurationResponsePtrOutput) PublicKeys() ContainerServiceSshPublicKeyResponseArrayOutput { + return o.ApplyT(func(v *ContainerServiceSshConfigurationResponse) []ContainerServiceSshPublicKeyResponse { if v == nil { return nil } - return v.AllowedUnsafeSysctls - }).(pulumi.StringArrayOutput) + return v.PublicKeys + }).(ContainerServiceSshPublicKeyResponseArrayOutput) } -// The maximum number of container log files that can be present for a container. The number must be ≥ 2. -func (o KubeletConfigPtrOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *int { - if v == nil { - return nil - } - return v.ContainerLogMaxFiles - }).(pulumi.IntPtrOutput) +// Contains information about SSH certificate public key data. +type ContainerServiceSshPublicKey struct { + // Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. + KeyData string `pulumi:"keyData"` } -// The maximum size (e.g. 10Mi) of container log file before it is rotated. -func (o KubeletConfigPtrOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *int { - if v == nil { - return nil - } - return v.ContainerLogMaxSizeMB - }).(pulumi.IntPtrOutput) +// ContainerServiceSshPublicKeyInput is an input type that accepts ContainerServiceSshPublicKeyArgs and ContainerServiceSshPublicKeyOutput values. +// You can construct a concrete instance of `ContainerServiceSshPublicKeyInput` via: +// +// ContainerServiceSshPublicKeyArgs{...} +type ContainerServiceSshPublicKeyInput interface { + pulumi.Input + + ToContainerServiceSshPublicKeyOutput() ContainerServiceSshPublicKeyOutput + ToContainerServiceSshPublicKeyOutputWithContext(context.Context) ContainerServiceSshPublicKeyOutput } -// The default is true. -func (o KubeletConfigPtrOutput) CpuCfsQuota() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *bool { - if v == nil { - return nil - } - return v.CpuCfsQuota - }).(pulumi.BoolPtrOutput) +// Contains information about SSH certificate public key data. +type ContainerServiceSshPublicKeyArgs struct { + // Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. + KeyData pulumi.StringInput `pulumi:"keyData"` } -// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. -func (o KubeletConfigPtrOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *string { - if v == nil { - return nil - } - return v.CpuCfsQuotaPeriod - }).(pulumi.StringPtrOutput) +func (ContainerServiceSshPublicKeyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceSshPublicKey)(nil)).Elem() } -// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. -func (o KubeletConfigPtrOutput) CpuManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *string { - if v == nil { - return nil - } - return v.CpuManagerPolicy - }).(pulumi.StringPtrOutput) +func (i ContainerServiceSshPublicKeyArgs) ToContainerServiceSshPublicKeyOutput() ContainerServiceSshPublicKeyOutput { + return i.ToContainerServiceSshPublicKeyOutputWithContext(context.Background()) } -// If set to true it will make the Kubelet fail to start if swap is enabled on the node. -func (o KubeletConfigPtrOutput) FailSwapOn() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *bool { - if v == nil { - return nil - } - return v.FailSwapOn - }).(pulumi.BoolPtrOutput) +func (i ContainerServiceSshPublicKeyArgs) ToContainerServiceSshPublicKeyOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshPublicKeyOutput) } -// To disable image garbage collection, set to 100. The default is 85% -func (o KubeletConfigPtrOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *int { - if v == nil { - return nil - } - return v.ImageGcHighThreshold - }).(pulumi.IntPtrOutput) +// ContainerServiceSshPublicKeyArrayInput is an input type that accepts ContainerServiceSshPublicKeyArray and ContainerServiceSshPublicKeyArrayOutput values. +// You can construct a concrete instance of `ContainerServiceSshPublicKeyArrayInput` via: +// +// ContainerServiceSshPublicKeyArray{ ContainerServiceSshPublicKeyArgs{...} } +type ContainerServiceSshPublicKeyArrayInput interface { + pulumi.Input + + ToContainerServiceSshPublicKeyArrayOutput() ContainerServiceSshPublicKeyArrayOutput + ToContainerServiceSshPublicKeyArrayOutputWithContext(context.Context) ContainerServiceSshPublicKeyArrayOutput } -// This cannot be set higher than imageGcHighThreshold. The default is 80% -func (o KubeletConfigPtrOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *int { - if v == nil { - return nil - } - return v.ImageGcLowThreshold - }).(pulumi.IntPtrOutput) +type ContainerServiceSshPublicKeyArray []ContainerServiceSshPublicKeyInput + +func (ContainerServiceSshPublicKeyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ContainerServiceSshPublicKey)(nil)).Elem() } -// The maximum number of processes per pod. -func (o KubeletConfigPtrOutput) PodMaxPids() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *int { - if v == nil { - return nil - } - return v.PodMaxPids - }).(pulumi.IntPtrOutput) +func (i ContainerServiceSshPublicKeyArray) ToContainerServiceSshPublicKeyArrayOutput() ContainerServiceSshPublicKeyArrayOutput { + return i.ToContainerServiceSshPublicKeyArrayOutputWithContext(context.Background()) } -// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. -func (o KubeletConfigPtrOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *KubeletConfig) *string { - if v == nil { - return nil - } - return v.TopologyManagerPolicy - }).(pulumi.StringPtrOutput) +func (i ContainerServiceSshPublicKeyArray) ToContainerServiceSshPublicKeyArrayOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ContainerServiceSshPublicKeyArrayOutput) } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type KubeletConfigResponse struct { - // Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). - AllowedUnsafeSysctls []string `pulumi:"allowedUnsafeSysctls"` - // The maximum number of container log files that can be present for a container. The number must be ≥ 2. - ContainerLogMaxFiles *int `pulumi:"containerLogMaxFiles"` - // The maximum size (e.g. 10Mi) of container log file before it is rotated. - ContainerLogMaxSizeMB *int `pulumi:"containerLogMaxSizeMB"` - // The default is true. - CpuCfsQuota *bool `pulumi:"cpuCfsQuota"` - // The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. - CpuCfsQuotaPeriod *string `pulumi:"cpuCfsQuotaPeriod"` - // The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. - CpuManagerPolicy *string `pulumi:"cpuManagerPolicy"` - // If set to true it will make the Kubelet fail to start if swap is enabled on the node. - FailSwapOn *bool `pulumi:"failSwapOn"` - // To disable image garbage collection, set to 100. The default is 85% - ImageGcHighThreshold *int `pulumi:"imageGcHighThreshold"` - // This cannot be set higher than imageGcHighThreshold. The default is 80% - ImageGcLowThreshold *int `pulumi:"imageGcLowThreshold"` - // The maximum number of processes per pod. - PodMaxPids *int `pulumi:"podMaxPids"` - // For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. - TopologyManagerPolicy *string `pulumi:"topologyManagerPolicy"` -} - -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type KubeletConfigResponseOutput struct{ *pulumi.OutputState } +// Contains information about SSH certificate public key data. +type ContainerServiceSshPublicKeyOutput struct{ *pulumi.OutputState } -func (KubeletConfigResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*KubeletConfigResponse)(nil)).Elem() +func (ContainerServiceSshPublicKeyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceSshPublicKey)(nil)).Elem() } -func (o KubeletConfigResponseOutput) ToKubeletConfigResponseOutput() KubeletConfigResponseOutput { +func (o ContainerServiceSshPublicKeyOutput) ToContainerServiceSshPublicKeyOutput() ContainerServiceSshPublicKeyOutput { return o } -func (o KubeletConfigResponseOutput) ToKubeletConfigResponseOutputWithContext(ctx context.Context) KubeletConfigResponseOutput { +func (o ContainerServiceSshPublicKeyOutput) ToContainerServiceSshPublicKeyOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyOutput { return o } -// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). -func (o KubeletConfigResponseOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { - return o.ApplyT(func(v KubeletConfigResponse) []string { return v.AllowedUnsafeSysctls }).(pulumi.StringArrayOutput) -} - -// The maximum number of container log files that can be present for a container. The number must be ≥ 2. -func (o KubeletConfigResponseOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ContainerLogMaxFiles }).(pulumi.IntPtrOutput) -} - -// The maximum size (e.g. 10Mi) of container log file before it is rotated. -func (o KubeletConfigResponseOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ContainerLogMaxSizeMB }).(pulumi.IntPtrOutput) -} - -// The default is true. -func (o KubeletConfigResponseOutput) CpuCfsQuota() pulumi.BoolPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *bool { return v.CpuCfsQuota }).(pulumi.BoolPtrOutput) -} - -// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. -func (o KubeletConfigResponseOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *string { return v.CpuCfsQuotaPeriod }).(pulumi.StringPtrOutput) -} - -// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. -func (o KubeletConfigResponseOutput) CpuManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *string { return v.CpuManagerPolicy }).(pulumi.StringPtrOutput) -} - -// If set to true it will make the Kubelet fail to start if swap is enabled on the node. -func (o KubeletConfigResponseOutput) FailSwapOn() pulumi.BoolPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *bool { return v.FailSwapOn }).(pulumi.BoolPtrOutput) -} - -// To disable image garbage collection, set to 100. The default is 85% -func (o KubeletConfigResponseOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ImageGcHighThreshold }).(pulumi.IntPtrOutput) -} - -// This cannot be set higher than imageGcHighThreshold. The default is 80% -func (o KubeletConfigResponseOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ImageGcLowThreshold }).(pulumi.IntPtrOutput) -} - -// The maximum number of processes per pod. -func (o KubeletConfigResponseOutput) PodMaxPids() pulumi.IntPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *int { return v.PodMaxPids }).(pulumi.IntPtrOutput) -} - -// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. -func (o KubeletConfigResponseOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v KubeletConfigResponse) *string { return v.TopologyManagerPolicy }).(pulumi.StringPtrOutput) +// Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. +func (o ContainerServiceSshPublicKeyOutput) KeyData() pulumi.StringOutput { + return o.ApplyT(func(v ContainerServiceSshPublicKey) string { return v.KeyData }).(pulumi.StringOutput) } -type KubeletConfigResponsePtrOutput struct{ *pulumi.OutputState } +type ContainerServiceSshPublicKeyArrayOutput struct{ *pulumi.OutputState } -func (KubeletConfigResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**KubeletConfigResponse)(nil)).Elem() +func (ContainerServiceSshPublicKeyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ContainerServiceSshPublicKey)(nil)).Elem() } -func (o KubeletConfigResponsePtrOutput) ToKubeletConfigResponsePtrOutput() KubeletConfigResponsePtrOutput { +func (o ContainerServiceSshPublicKeyArrayOutput) ToContainerServiceSshPublicKeyArrayOutput() ContainerServiceSshPublicKeyArrayOutput { return o } -func (o KubeletConfigResponsePtrOutput) ToKubeletConfigResponsePtrOutputWithContext(ctx context.Context) KubeletConfigResponsePtrOutput { +func (o ContainerServiceSshPublicKeyArrayOutput) ToContainerServiceSshPublicKeyArrayOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyArrayOutput { return o } -func (o KubeletConfigResponsePtrOutput) Elem() KubeletConfigResponseOutput { - return o.ApplyT(func(v *KubeletConfigResponse) KubeletConfigResponse { - if v != nil { - return *v - } - var ret KubeletConfigResponse - return ret - }).(KubeletConfigResponseOutput) +func (o ContainerServiceSshPublicKeyArrayOutput) Index(i pulumi.IntInput) ContainerServiceSshPublicKeyOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerServiceSshPublicKey { + return vs[0].([]ContainerServiceSshPublicKey)[vs[1].(int)] + }).(ContainerServiceSshPublicKeyOutput) } -// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). -func (o KubeletConfigResponsePtrOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { - return o.ApplyT(func(v *KubeletConfigResponse) []string { - if v == nil { - return nil - } - return v.AllowedUnsafeSysctls - }).(pulumi.StringArrayOutput) +// Contains information about SSH certificate public key data. +type ContainerServiceSshPublicKeyResponse struct { + // Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. + KeyData string `pulumi:"keyData"` } -// The maximum number of container log files that can be present for a container. The number must be ≥ 2. -func (o KubeletConfigResponsePtrOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *int { - if v == nil { - return nil - } - return v.ContainerLogMaxFiles - }).(pulumi.IntPtrOutput) -} +// Contains information about SSH certificate public key data. +type ContainerServiceSshPublicKeyResponseOutput struct{ *pulumi.OutputState } -// The maximum size (e.g. 10Mi) of container log file before it is rotated. -func (o KubeletConfigResponsePtrOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *int { - if v == nil { - return nil - } - return v.ContainerLogMaxSizeMB - }).(pulumi.IntPtrOutput) +func (ContainerServiceSshPublicKeyResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ContainerServiceSshPublicKeyResponse)(nil)).Elem() } -// The default is true. -func (o KubeletConfigResponsePtrOutput) CpuCfsQuota() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *bool { - if v == nil { - return nil - } - return v.CpuCfsQuota - }).(pulumi.BoolPtrOutput) +func (o ContainerServiceSshPublicKeyResponseOutput) ToContainerServiceSshPublicKeyResponseOutput() ContainerServiceSshPublicKeyResponseOutput { + return o } -// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. -func (o KubeletConfigResponsePtrOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *string { - if v == nil { - return nil - } - return v.CpuCfsQuotaPeriod - }).(pulumi.StringPtrOutput) +func (o ContainerServiceSshPublicKeyResponseOutput) ToContainerServiceSshPublicKeyResponseOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyResponseOutput { + return o } -// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. -func (o KubeletConfigResponsePtrOutput) CpuManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *string { - if v == nil { - return nil - } - return v.CpuManagerPolicy - }).(pulumi.StringPtrOutput) +// Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers. +func (o ContainerServiceSshPublicKeyResponseOutput) KeyData() pulumi.StringOutput { + return o.ApplyT(func(v ContainerServiceSshPublicKeyResponse) string { return v.KeyData }).(pulumi.StringOutput) } -// If set to true it will make the Kubelet fail to start if swap is enabled on the node. -func (o KubeletConfigResponsePtrOutput) FailSwapOn() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *bool { - if v == nil { - return nil - } - return v.FailSwapOn - }).(pulumi.BoolPtrOutput) -} +type ContainerServiceSshPublicKeyResponseArrayOutput struct{ *pulumi.OutputState } -// To disable image garbage collection, set to 100. The default is 85% -func (o KubeletConfigResponsePtrOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *int { - if v == nil { - return nil - } - return v.ImageGcHighThreshold - }).(pulumi.IntPtrOutput) +func (ContainerServiceSshPublicKeyResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ContainerServiceSshPublicKeyResponse)(nil)).Elem() } -// This cannot be set higher than imageGcHighThreshold. The default is 80% -func (o KubeletConfigResponsePtrOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *int { - if v == nil { - return nil - } - return v.ImageGcLowThreshold - }).(pulumi.IntPtrOutput) +func (o ContainerServiceSshPublicKeyResponseArrayOutput) ToContainerServiceSshPublicKeyResponseArrayOutput() ContainerServiceSshPublicKeyResponseArrayOutput { + return o } -// The maximum number of processes per pod. -func (o KubeletConfigResponsePtrOutput) PodMaxPids() pulumi.IntPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *int { - if v == nil { - return nil - } - return v.PodMaxPids - }).(pulumi.IntPtrOutput) +func (o ContainerServiceSshPublicKeyResponseArrayOutput) ToContainerServiceSshPublicKeyResponseArrayOutputWithContext(ctx context.Context) ContainerServiceSshPublicKeyResponseArrayOutput { + return o } -// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. -func (o KubeletConfigResponsePtrOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *KubeletConfigResponse) *string { - if v == nil { - return nil - } - return v.TopologyManagerPolicy - }).(pulumi.StringPtrOutput) +func (o ContainerServiceSshPublicKeyResponseArrayOutput) Index(i pulumi.IntInput) ContainerServiceSshPublicKeyResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerServiceSshPublicKeyResponse { + return vs[0].([]ContainerServiceSshPublicKeyResponse)[vs[1].(int)] + }).(ContainerServiceSshPublicKeyResponseOutput) } -// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. -type LabelSelector struct { - // matchExpressions is a list of label selector requirements. The requirements are ANDed. - MatchExpressions []LabelSelectorRequirement `pulumi:"matchExpressions"` - // matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. - MatchLabels []string `pulumi:"matchLabels"` +// Data used when creating a target resource from a source resource. +type CreationData struct { + // This is the ARM ID of the source object to be used to create the target object. + SourceResourceId *string `pulumi:"sourceResourceId"` } -// LabelSelectorInput is an input type that accepts LabelSelectorArgs and LabelSelectorOutput values. -// You can construct a concrete instance of `LabelSelectorInput` via: +// CreationDataInput is an input type that accepts CreationDataArgs and CreationDataOutput values. +// You can construct a concrete instance of `CreationDataInput` via: // -// LabelSelectorArgs{...} -type LabelSelectorInput interface { +// CreationDataArgs{...} +type CreationDataInput interface { pulumi.Input - ToLabelSelectorOutput() LabelSelectorOutput - ToLabelSelectorOutputWithContext(context.Context) LabelSelectorOutput + ToCreationDataOutput() CreationDataOutput + ToCreationDataOutputWithContext(context.Context) CreationDataOutput } -// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. -type LabelSelectorArgs struct { - // matchExpressions is a list of label selector requirements. The requirements are ANDed. - MatchExpressions LabelSelectorRequirementArrayInput `pulumi:"matchExpressions"` - // matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. - MatchLabels pulumi.StringArrayInput `pulumi:"matchLabels"` +// Data used when creating a target resource from a source resource. +type CreationDataArgs struct { + // This is the ARM ID of the source object to be used to create the target object. + SourceResourceId pulumi.StringPtrInput `pulumi:"sourceResourceId"` } -func (LabelSelectorArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LabelSelector)(nil)).Elem() +func (CreationDataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CreationData)(nil)).Elem() } -func (i LabelSelectorArgs) ToLabelSelectorOutput() LabelSelectorOutput { - return i.ToLabelSelectorOutputWithContext(context.Background()) +func (i CreationDataArgs) ToCreationDataOutput() CreationDataOutput { + return i.ToCreationDataOutputWithContext(context.Background()) } -func (i LabelSelectorArgs) ToLabelSelectorOutputWithContext(ctx context.Context) LabelSelectorOutput { - return pulumi.ToOutputWithContext(ctx, i).(LabelSelectorOutput) +func (i CreationDataArgs) ToCreationDataOutputWithContext(ctx context.Context) CreationDataOutput { + return pulumi.ToOutputWithContext(ctx, i).(CreationDataOutput) } -func (i LabelSelectorArgs) ToLabelSelectorPtrOutput() LabelSelectorPtrOutput { - return i.ToLabelSelectorPtrOutputWithContext(context.Background()) +func (i CreationDataArgs) ToCreationDataPtrOutput() CreationDataPtrOutput { + return i.ToCreationDataPtrOutputWithContext(context.Background()) } -func (i LabelSelectorArgs) ToLabelSelectorPtrOutputWithContext(ctx context.Context) LabelSelectorPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(LabelSelectorOutput).ToLabelSelectorPtrOutputWithContext(ctx) +func (i CreationDataArgs) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CreationDataOutput).ToCreationDataPtrOutputWithContext(ctx) } -// LabelSelectorPtrInput is an input type that accepts LabelSelectorArgs, LabelSelectorPtr and LabelSelectorPtrOutput values. -// You can construct a concrete instance of `LabelSelectorPtrInput` via: +// CreationDataPtrInput is an input type that accepts CreationDataArgs, CreationDataPtr and CreationDataPtrOutput values. +// You can construct a concrete instance of `CreationDataPtrInput` via: // -// LabelSelectorArgs{...} +// CreationDataArgs{...} // // or: // // nil -type LabelSelectorPtrInput interface { +type CreationDataPtrInput interface { pulumi.Input - ToLabelSelectorPtrOutput() LabelSelectorPtrOutput - ToLabelSelectorPtrOutputWithContext(context.Context) LabelSelectorPtrOutput + ToCreationDataPtrOutput() CreationDataPtrOutput + ToCreationDataPtrOutputWithContext(context.Context) CreationDataPtrOutput } -type labelSelectorPtrType LabelSelectorArgs +type creationDataPtrType CreationDataArgs -func LabelSelectorPtr(v *LabelSelectorArgs) LabelSelectorPtrInput { - return (*labelSelectorPtrType)(v) +func CreationDataPtr(v *CreationDataArgs) CreationDataPtrInput { + return (*creationDataPtrType)(v) } -func (*labelSelectorPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**LabelSelector)(nil)).Elem() +func (*creationDataPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**CreationData)(nil)).Elem() } -func (i *labelSelectorPtrType) ToLabelSelectorPtrOutput() LabelSelectorPtrOutput { - return i.ToLabelSelectorPtrOutputWithContext(context.Background()) +func (i *creationDataPtrType) ToCreationDataPtrOutput() CreationDataPtrOutput { + return i.ToCreationDataPtrOutputWithContext(context.Background()) } -func (i *labelSelectorPtrType) ToLabelSelectorPtrOutputWithContext(ctx context.Context) LabelSelectorPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(LabelSelectorPtrOutput) +func (i *creationDataPtrType) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CreationDataPtrOutput) } -// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. -type LabelSelectorOutput struct{ *pulumi.OutputState } +// Data used when creating a target resource from a source resource. +type CreationDataOutput struct{ *pulumi.OutputState } -func (LabelSelectorOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LabelSelector)(nil)).Elem() +func (CreationDataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CreationData)(nil)).Elem() } -func (o LabelSelectorOutput) ToLabelSelectorOutput() LabelSelectorOutput { +func (o CreationDataOutput) ToCreationDataOutput() CreationDataOutput { return o } -func (o LabelSelectorOutput) ToLabelSelectorOutputWithContext(ctx context.Context) LabelSelectorOutput { +func (o CreationDataOutput) ToCreationDataOutputWithContext(ctx context.Context) CreationDataOutput { return o } -func (o LabelSelectorOutput) ToLabelSelectorPtrOutput() LabelSelectorPtrOutput { - return o.ToLabelSelectorPtrOutputWithContext(context.Background()) +func (o CreationDataOutput) ToCreationDataPtrOutput() CreationDataPtrOutput { + return o.ToCreationDataPtrOutputWithContext(context.Background()) } -func (o LabelSelectorOutput) ToLabelSelectorPtrOutputWithContext(ctx context.Context) LabelSelectorPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v LabelSelector) *LabelSelector { +func (o CreationDataOutput) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CreationData) *CreationData { return &v - }).(LabelSelectorPtrOutput) -} - -// matchExpressions is a list of label selector requirements. The requirements are ANDed. -func (o LabelSelectorOutput) MatchExpressions() LabelSelectorRequirementArrayOutput { - return o.ApplyT(func(v LabelSelector) []LabelSelectorRequirement { return v.MatchExpressions }).(LabelSelectorRequirementArrayOutput) + }).(CreationDataPtrOutput) } -// matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. -func (o LabelSelectorOutput) MatchLabels() pulumi.StringArrayOutput { - return o.ApplyT(func(v LabelSelector) []string { return v.MatchLabels }).(pulumi.StringArrayOutput) +// This is the ARM ID of the source object to be used to create the target object. +func (o CreationDataOutput) SourceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v CreationData) *string { return v.SourceResourceId }).(pulumi.StringPtrOutput) } -type LabelSelectorPtrOutput struct{ *pulumi.OutputState } +type CreationDataPtrOutput struct{ *pulumi.OutputState } -func (LabelSelectorPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**LabelSelector)(nil)).Elem() +func (CreationDataPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CreationData)(nil)).Elem() } -func (o LabelSelectorPtrOutput) ToLabelSelectorPtrOutput() LabelSelectorPtrOutput { +func (o CreationDataPtrOutput) ToCreationDataPtrOutput() CreationDataPtrOutput { return o } -func (o LabelSelectorPtrOutput) ToLabelSelectorPtrOutputWithContext(ctx context.Context) LabelSelectorPtrOutput { +func (o CreationDataPtrOutput) ToCreationDataPtrOutputWithContext(ctx context.Context) CreationDataPtrOutput { return o } -func (o LabelSelectorPtrOutput) Elem() LabelSelectorOutput { - return o.ApplyT(func(v *LabelSelector) LabelSelector { +func (o CreationDataPtrOutput) Elem() CreationDataOutput { + return o.ApplyT(func(v *CreationData) CreationData { if v != nil { return *v } - var ret LabelSelector + var ret CreationData return ret - }).(LabelSelectorOutput) -} - -// matchExpressions is a list of label selector requirements. The requirements are ANDed. -func (o LabelSelectorPtrOutput) MatchExpressions() LabelSelectorRequirementArrayOutput { - return o.ApplyT(func(v *LabelSelector) []LabelSelectorRequirement { - if v == nil { - return nil - } - return v.MatchExpressions - }).(LabelSelectorRequirementArrayOutput) + }).(CreationDataOutput) } -// matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. -func (o LabelSelectorPtrOutput) MatchLabels() pulumi.StringArrayOutput { - return o.ApplyT(func(v *LabelSelector) []string { +// This is the ARM ID of the source object to be used to create the target object. +func (o CreationDataPtrOutput) SourceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CreationData) *string { if v == nil { return nil } - return v.MatchLabels - }).(pulumi.StringArrayOutput) + return v.SourceResourceId + }).(pulumi.StringPtrOutput) } -// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. -type LabelSelectorRequirement struct { - // key is the label key that the selector applies to. - Key *string `pulumi:"key"` - // operator represents a key's relationship to a set of values. Valid operators are In and NotIn - Operator *string `pulumi:"operator"` - // values is an array of string values, the values array must be non-empty. - Values []string `pulumi:"values"` +// Data used when creating a target resource from a source resource. +type CreationDataResponse struct { + // This is the ARM ID of the source object to be used to create the target object. + SourceResourceId *string `pulumi:"sourceResourceId"` } -// LabelSelectorRequirementInput is an input type that accepts LabelSelectorRequirementArgs and LabelSelectorRequirementOutput values. -// You can construct a concrete instance of `LabelSelectorRequirementInput` via: -// -// LabelSelectorRequirementArgs{...} -type LabelSelectorRequirementInput interface { - pulumi.Input +// Data used when creating a target resource from a source resource. +type CreationDataResponseOutput struct{ *pulumi.OutputState } - ToLabelSelectorRequirementOutput() LabelSelectorRequirementOutput - ToLabelSelectorRequirementOutputWithContext(context.Context) LabelSelectorRequirementOutput +func (CreationDataResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CreationDataResponse)(nil)).Elem() } -// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. -type LabelSelectorRequirementArgs struct { - // key is the label key that the selector applies to. - Key pulumi.StringPtrInput `pulumi:"key"` - // operator represents a key's relationship to a set of values. Valid operators are In and NotIn - Operator pulumi.StringPtrInput `pulumi:"operator"` - // values is an array of string values, the values array must be non-empty. - Values pulumi.StringArrayInput `pulumi:"values"` +func (o CreationDataResponseOutput) ToCreationDataResponseOutput() CreationDataResponseOutput { + return o } -func (LabelSelectorRequirementArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LabelSelectorRequirement)(nil)).Elem() +func (o CreationDataResponseOutput) ToCreationDataResponseOutputWithContext(ctx context.Context) CreationDataResponseOutput { + return o } -func (i LabelSelectorRequirementArgs) ToLabelSelectorRequirementOutput() LabelSelectorRequirementOutput { - return i.ToLabelSelectorRequirementOutputWithContext(context.Background()) +// This is the ARM ID of the source object to be used to create the target object. +func (o CreationDataResponseOutput) SourceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v CreationDataResponse) *string { return v.SourceResourceId }).(pulumi.StringPtrOutput) } -func (i LabelSelectorRequirementArgs) ToLabelSelectorRequirementOutputWithContext(ctx context.Context) LabelSelectorRequirementOutput { - return pulumi.ToOutputWithContext(ctx, i).(LabelSelectorRequirementOutput) -} +type CreationDataResponsePtrOutput struct{ *pulumi.OutputState } -// LabelSelectorRequirementArrayInput is an input type that accepts LabelSelectorRequirementArray and LabelSelectorRequirementArrayOutput values. -// You can construct a concrete instance of `LabelSelectorRequirementArrayInput` via: -// -// LabelSelectorRequirementArray{ LabelSelectorRequirementArgs{...} } -type LabelSelectorRequirementArrayInput interface { - pulumi.Input +func (CreationDataResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CreationDataResponse)(nil)).Elem() +} - ToLabelSelectorRequirementArrayOutput() LabelSelectorRequirementArrayOutput - ToLabelSelectorRequirementArrayOutputWithContext(context.Context) LabelSelectorRequirementArrayOutput +func (o CreationDataResponsePtrOutput) ToCreationDataResponsePtrOutput() CreationDataResponsePtrOutput { + return o } -type LabelSelectorRequirementArray []LabelSelectorRequirementInput +func (o CreationDataResponsePtrOutput) ToCreationDataResponsePtrOutputWithContext(ctx context.Context) CreationDataResponsePtrOutput { + return o +} -func (LabelSelectorRequirementArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]LabelSelectorRequirement)(nil)).Elem() +func (o CreationDataResponsePtrOutput) Elem() CreationDataResponseOutput { + return o.ApplyT(func(v *CreationDataResponse) CreationDataResponse { + if v != nil { + return *v + } + var ret CreationDataResponse + return ret + }).(CreationDataResponseOutput) } -func (i LabelSelectorRequirementArray) ToLabelSelectorRequirementArrayOutput() LabelSelectorRequirementArrayOutput { - return i.ToLabelSelectorRequirementArrayOutputWithContext(context.Background()) +// This is the ARM ID of the source object to be used to create the target object. +func (o CreationDataResponsePtrOutput) SourceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CreationDataResponse) *string { + if v == nil { + return nil + } + return v.SourceResourceId + }).(pulumi.StringPtrOutput) } -func (i LabelSelectorRequirementArray) ToLabelSelectorRequirementArrayOutputWithContext(ctx context.Context) LabelSelectorRequirementArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(LabelSelectorRequirementArrayOutput) +// The credential result response. +type CredentialResultResponse struct { + // The name of the credential. + Name string `pulumi:"name"` + // Base64-encoded Kubernetes configuration file. + Value string `pulumi:"value"` } -// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. -type LabelSelectorRequirementOutput struct{ *pulumi.OutputState } +// The credential result response. +type CredentialResultResponseOutput struct{ *pulumi.OutputState } -func (LabelSelectorRequirementOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LabelSelectorRequirement)(nil)).Elem() +func (CredentialResultResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CredentialResultResponse)(nil)).Elem() } -func (o LabelSelectorRequirementOutput) ToLabelSelectorRequirementOutput() LabelSelectorRequirementOutput { +func (o CredentialResultResponseOutput) ToCredentialResultResponseOutput() CredentialResultResponseOutput { return o } -func (o LabelSelectorRequirementOutput) ToLabelSelectorRequirementOutputWithContext(ctx context.Context) LabelSelectorRequirementOutput { +func (o CredentialResultResponseOutput) ToCredentialResultResponseOutputWithContext(ctx context.Context) CredentialResultResponseOutput { return o } -// key is the label key that the selector applies to. -func (o LabelSelectorRequirementOutput) Key() pulumi.StringPtrOutput { - return o.ApplyT(func(v LabelSelectorRequirement) *string { return v.Key }).(pulumi.StringPtrOutput) -} - -// operator represents a key's relationship to a set of values. Valid operators are In and NotIn -func (o LabelSelectorRequirementOutput) Operator() pulumi.StringPtrOutput { - return o.ApplyT(func(v LabelSelectorRequirement) *string { return v.Operator }).(pulumi.StringPtrOutput) +// The name of the credential. +func (o CredentialResultResponseOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v CredentialResultResponse) string { return v.Name }).(pulumi.StringOutput) } -// values is an array of string values, the values array must be non-empty. -func (o LabelSelectorRequirementOutput) Values() pulumi.StringArrayOutput { - return o.ApplyT(func(v LabelSelectorRequirement) []string { return v.Values }).(pulumi.StringArrayOutput) +// Base64-encoded Kubernetes configuration file. +func (o CredentialResultResponseOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v CredentialResultResponse) string { return v.Value }).(pulumi.StringOutput) } -type LabelSelectorRequirementArrayOutput struct{ *pulumi.OutputState } +type CredentialResultResponseArrayOutput struct{ *pulumi.OutputState } -func (LabelSelectorRequirementArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]LabelSelectorRequirement)(nil)).Elem() +func (CredentialResultResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]CredentialResultResponse)(nil)).Elem() } -func (o LabelSelectorRequirementArrayOutput) ToLabelSelectorRequirementArrayOutput() LabelSelectorRequirementArrayOutput { +func (o CredentialResultResponseArrayOutput) ToCredentialResultResponseArrayOutput() CredentialResultResponseArrayOutput { return o } -func (o LabelSelectorRequirementArrayOutput) ToLabelSelectorRequirementArrayOutputWithContext(ctx context.Context) LabelSelectorRequirementArrayOutput { +func (o CredentialResultResponseArrayOutput) ToCredentialResultResponseArrayOutputWithContext(ctx context.Context) CredentialResultResponseArrayOutput { return o } -func (o LabelSelectorRequirementArrayOutput) Index(i pulumi.IntInput) LabelSelectorRequirementOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) LabelSelectorRequirement { - return vs[0].([]LabelSelectorRequirement)[vs[1].(int)] - }).(LabelSelectorRequirementOutput) +func (o CredentialResultResponseArrayOutput) Index(i pulumi.IntInput) CredentialResultResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) CredentialResultResponse { + return vs[0].([]CredentialResultResponse)[vs[1].(int)] + }).(CredentialResultResponseOutput) } -// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. -type LabelSelectorRequirementResponse struct { - // key is the label key that the selector applies to. - Key *string `pulumi:"key"` - // operator represents a key's relationship to a set of values. Valid operators are In and NotIn - Operator *string `pulumi:"operator"` - // values is an array of string values, the values array must be non-empty. - Values []string `pulumi:"values"` +// For schedules like: 'recur every day' or 'recur every 3 days'. +type DailySchedule struct { + // Specifies the number of days between each set of occurrences. + IntervalDays int `pulumi:"intervalDays"` } -// A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. -type LabelSelectorRequirementResponseOutput struct{ *pulumi.OutputState } +// DailyScheduleInput is an input type that accepts DailyScheduleArgs and DailyScheduleOutput values. +// You can construct a concrete instance of `DailyScheduleInput` via: +// +// DailyScheduleArgs{...} +type DailyScheduleInput interface { + pulumi.Input -func (LabelSelectorRequirementResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LabelSelectorRequirementResponse)(nil)).Elem() + ToDailyScheduleOutput() DailyScheduleOutput + ToDailyScheduleOutputWithContext(context.Context) DailyScheduleOutput } -func (o LabelSelectorRequirementResponseOutput) ToLabelSelectorRequirementResponseOutput() LabelSelectorRequirementResponseOutput { - return o +// For schedules like: 'recur every day' or 'recur every 3 days'. +type DailyScheduleArgs struct { + // Specifies the number of days between each set of occurrences. + IntervalDays pulumi.IntInput `pulumi:"intervalDays"` } -func (o LabelSelectorRequirementResponseOutput) ToLabelSelectorRequirementResponseOutputWithContext(ctx context.Context) LabelSelectorRequirementResponseOutput { - return o +func (DailyScheduleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DailySchedule)(nil)).Elem() } -// key is the label key that the selector applies to. -func (o LabelSelectorRequirementResponseOutput) Key() pulumi.StringPtrOutput { - return o.ApplyT(func(v LabelSelectorRequirementResponse) *string { return v.Key }).(pulumi.StringPtrOutput) +func (i DailyScheduleArgs) ToDailyScheduleOutput() DailyScheduleOutput { + return i.ToDailyScheduleOutputWithContext(context.Background()) } -// operator represents a key's relationship to a set of values. Valid operators are In and NotIn -func (o LabelSelectorRequirementResponseOutput) Operator() pulumi.StringPtrOutput { - return o.ApplyT(func(v LabelSelectorRequirementResponse) *string { return v.Operator }).(pulumi.StringPtrOutput) +func (i DailyScheduleArgs) ToDailyScheduleOutputWithContext(ctx context.Context) DailyScheduleOutput { + return pulumi.ToOutputWithContext(ctx, i).(DailyScheduleOutput) } -// values is an array of string values, the values array must be non-empty. -func (o LabelSelectorRequirementResponseOutput) Values() pulumi.StringArrayOutput { - return o.ApplyT(func(v LabelSelectorRequirementResponse) []string { return v.Values }).(pulumi.StringArrayOutput) +func (i DailyScheduleArgs) ToDailySchedulePtrOutput() DailySchedulePtrOutput { + return i.ToDailySchedulePtrOutputWithContext(context.Background()) } -type LabelSelectorRequirementResponseArrayOutput struct{ *pulumi.OutputState } +func (i DailyScheduleArgs) ToDailySchedulePtrOutputWithContext(ctx context.Context) DailySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DailyScheduleOutput).ToDailySchedulePtrOutputWithContext(ctx) +} + +// DailySchedulePtrInput is an input type that accepts DailyScheduleArgs, DailySchedulePtr and DailySchedulePtrOutput values. +// You can construct a concrete instance of `DailySchedulePtrInput` via: +// +// DailyScheduleArgs{...} +// +// or: +// +// nil +type DailySchedulePtrInput interface { + pulumi.Input -func (LabelSelectorRequirementResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]LabelSelectorRequirementResponse)(nil)).Elem() + ToDailySchedulePtrOutput() DailySchedulePtrOutput + ToDailySchedulePtrOutputWithContext(context.Context) DailySchedulePtrOutput } -func (o LabelSelectorRequirementResponseArrayOutput) ToLabelSelectorRequirementResponseArrayOutput() LabelSelectorRequirementResponseArrayOutput { - return o +type dailySchedulePtrType DailyScheduleArgs + +func DailySchedulePtr(v *DailyScheduleArgs) DailySchedulePtrInput { + return (*dailySchedulePtrType)(v) } -func (o LabelSelectorRequirementResponseArrayOutput) ToLabelSelectorRequirementResponseArrayOutputWithContext(ctx context.Context) LabelSelectorRequirementResponseArrayOutput { - return o +func (*dailySchedulePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DailySchedule)(nil)).Elem() } -func (o LabelSelectorRequirementResponseArrayOutput) Index(i pulumi.IntInput) LabelSelectorRequirementResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) LabelSelectorRequirementResponse { - return vs[0].([]LabelSelectorRequirementResponse)[vs[1].(int)] - }).(LabelSelectorRequirementResponseOutput) +func (i *dailySchedulePtrType) ToDailySchedulePtrOutput() DailySchedulePtrOutput { + return i.ToDailySchedulePtrOutputWithContext(context.Background()) } -// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. -type LabelSelectorResponse struct { - // matchExpressions is a list of label selector requirements. The requirements are ANDed. - MatchExpressions []LabelSelectorRequirementResponse `pulumi:"matchExpressions"` - // matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. - MatchLabels []string `pulumi:"matchLabels"` +func (i *dailySchedulePtrType) ToDailySchedulePtrOutputWithContext(ctx context.Context) DailySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DailySchedulePtrOutput) } -// A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects. -type LabelSelectorResponseOutput struct{ *pulumi.OutputState } +// For schedules like: 'recur every day' or 'recur every 3 days'. +type DailyScheduleOutput struct{ *pulumi.OutputState } -func (LabelSelectorResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LabelSelectorResponse)(nil)).Elem() +func (DailyScheduleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DailySchedule)(nil)).Elem() } -func (o LabelSelectorResponseOutput) ToLabelSelectorResponseOutput() LabelSelectorResponseOutput { +func (o DailyScheduleOutput) ToDailyScheduleOutput() DailyScheduleOutput { return o } -func (o LabelSelectorResponseOutput) ToLabelSelectorResponseOutputWithContext(ctx context.Context) LabelSelectorResponseOutput { +func (o DailyScheduleOutput) ToDailyScheduleOutputWithContext(ctx context.Context) DailyScheduleOutput { return o } -// matchExpressions is a list of label selector requirements. The requirements are ANDed. -func (o LabelSelectorResponseOutput) MatchExpressions() LabelSelectorRequirementResponseArrayOutput { - return o.ApplyT(func(v LabelSelectorResponse) []LabelSelectorRequirementResponse { return v.MatchExpressions }).(LabelSelectorRequirementResponseArrayOutput) +func (o DailyScheduleOutput) ToDailySchedulePtrOutput() DailySchedulePtrOutput { + return o.ToDailySchedulePtrOutputWithContext(context.Background()) +} + +func (o DailyScheduleOutput) ToDailySchedulePtrOutputWithContext(ctx context.Context) DailySchedulePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DailySchedule) *DailySchedule { + return &v + }).(DailySchedulePtrOutput) } -// matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. -func (o LabelSelectorResponseOutput) MatchLabels() pulumi.StringArrayOutput { - return o.ApplyT(func(v LabelSelectorResponse) []string { return v.MatchLabels }).(pulumi.StringArrayOutput) +// Specifies the number of days between each set of occurrences. +func (o DailyScheduleOutput) IntervalDays() pulumi.IntOutput { + return o.ApplyT(func(v DailySchedule) int { return v.IntervalDays }).(pulumi.IntOutput) } -type LabelSelectorResponsePtrOutput struct{ *pulumi.OutputState } +type DailySchedulePtrOutput struct{ *pulumi.OutputState } -func (LabelSelectorResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**LabelSelectorResponse)(nil)).Elem() +func (DailySchedulePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DailySchedule)(nil)).Elem() } -func (o LabelSelectorResponsePtrOutput) ToLabelSelectorResponsePtrOutput() LabelSelectorResponsePtrOutput { +func (o DailySchedulePtrOutput) ToDailySchedulePtrOutput() DailySchedulePtrOutput { return o } -func (o LabelSelectorResponsePtrOutput) ToLabelSelectorResponsePtrOutputWithContext(ctx context.Context) LabelSelectorResponsePtrOutput { +func (o DailySchedulePtrOutput) ToDailySchedulePtrOutputWithContext(ctx context.Context) DailySchedulePtrOutput { return o } -func (o LabelSelectorResponsePtrOutput) Elem() LabelSelectorResponseOutput { - return o.ApplyT(func(v *LabelSelectorResponse) LabelSelectorResponse { +func (o DailySchedulePtrOutput) Elem() DailyScheduleOutput { + return o.ApplyT(func(v *DailySchedule) DailySchedule { if v != nil { return *v } - var ret LabelSelectorResponse + var ret DailySchedule return ret - }).(LabelSelectorResponseOutput) + }).(DailyScheduleOutput) } -// matchExpressions is a list of label selector requirements. The requirements are ANDed. -func (o LabelSelectorResponsePtrOutput) MatchExpressions() LabelSelectorRequirementResponseArrayOutput { - return o.ApplyT(func(v *LabelSelectorResponse) []LabelSelectorRequirementResponse { +// Specifies the number of days between each set of occurrences. +func (o DailySchedulePtrOutput) IntervalDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DailySchedule) *int { if v == nil { return nil } - return v.MatchExpressions - }).(LabelSelectorRequirementResponseArrayOutput) + return &v.IntervalDays + }).(pulumi.IntPtrOutput) } -// matchLabels is an array of {key=value} pairs. A single {key=value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is `key`, the operator is `In`, and the values array contains only `value`. The requirements are ANDed. -func (o LabelSelectorResponsePtrOutput) MatchLabels() pulumi.StringArrayOutput { - return o.ApplyT(func(v *LabelSelectorResponse) []string { - if v == nil { - return nil - } - return v.MatchLabels - }).(pulumi.StringArrayOutput) +// For schedules like: 'recur every day' or 'recur every 3 days'. +type DailyScheduleResponse struct { + // Specifies the number of days between each set of occurrences. + IntervalDays int `pulumi:"intervalDays"` } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type LinuxOSConfig struct { - // The size in MB of a swap file that will be created on each node. - SwapFileSizeMB *int `pulumi:"swapFileSizeMB"` - // Sysctl settings for Linux agent nodes. - Sysctls *SysctlConfig `pulumi:"sysctls"` - // Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). - TransparentHugePageDefrag *string `pulumi:"transparentHugePageDefrag"` - // Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). - TransparentHugePageEnabled *string `pulumi:"transparentHugePageEnabled"` +// For schedules like: 'recur every day' or 'recur every 3 days'. +type DailyScheduleResponseOutput struct{ *pulumi.OutputState } + +func (DailyScheduleResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DailyScheduleResponse)(nil)).Elem() } -// LinuxOSConfigInput is an input type that accepts LinuxOSConfigArgs and LinuxOSConfigOutput values. -// You can construct a concrete instance of `LinuxOSConfigInput` via: -// -// LinuxOSConfigArgs{...} -type LinuxOSConfigInput interface { - pulumi.Input +func (o DailyScheduleResponseOutput) ToDailyScheduleResponseOutput() DailyScheduleResponseOutput { + return o +} - ToLinuxOSConfigOutput() LinuxOSConfigOutput - ToLinuxOSConfigOutputWithContext(context.Context) LinuxOSConfigOutput +func (o DailyScheduleResponseOutput) ToDailyScheduleResponseOutputWithContext(ctx context.Context) DailyScheduleResponseOutput { + return o } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type LinuxOSConfigArgs struct { - // The size in MB of a swap file that will be created on each node. - SwapFileSizeMB pulumi.IntPtrInput `pulumi:"swapFileSizeMB"` - // Sysctl settings for Linux agent nodes. - Sysctls SysctlConfigPtrInput `pulumi:"sysctls"` - // Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). - TransparentHugePageDefrag pulumi.StringPtrInput `pulumi:"transparentHugePageDefrag"` - // Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). - TransparentHugePageEnabled pulumi.StringPtrInput `pulumi:"transparentHugePageEnabled"` +// Specifies the number of days between each set of occurrences. +func (o DailyScheduleResponseOutput) IntervalDays() pulumi.IntOutput { + return o.ApplyT(func(v DailyScheduleResponse) int { return v.IntervalDays }).(pulumi.IntOutput) } -func (LinuxOSConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*LinuxOSConfig)(nil)).Elem() +type DailyScheduleResponsePtrOutput struct{ *pulumi.OutputState } + +func (DailyScheduleResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DailyScheduleResponse)(nil)).Elem() } -func (i LinuxOSConfigArgs) ToLinuxOSConfigOutput() LinuxOSConfigOutput { - return i.ToLinuxOSConfigOutputWithContext(context.Background()) +func (o DailyScheduleResponsePtrOutput) ToDailyScheduleResponsePtrOutput() DailyScheduleResponsePtrOutput { + return o } -func (i LinuxOSConfigArgs) ToLinuxOSConfigOutputWithContext(ctx context.Context) LinuxOSConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(LinuxOSConfigOutput) +func (o DailyScheduleResponsePtrOutput) ToDailyScheduleResponsePtrOutputWithContext(ctx context.Context) DailyScheduleResponsePtrOutput { + return o } -func (i LinuxOSConfigArgs) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { - return i.ToLinuxOSConfigPtrOutputWithContext(context.Background()) +func (o DailyScheduleResponsePtrOutput) Elem() DailyScheduleResponseOutput { + return o.ApplyT(func(v *DailyScheduleResponse) DailyScheduleResponse { + if v != nil { + return *v + } + var ret DailyScheduleResponse + return ret + }).(DailyScheduleResponseOutput) } -func (i LinuxOSConfigArgs) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(LinuxOSConfigOutput).ToLinuxOSConfigPtrOutputWithContext(ctx) +// Specifies the number of days between each set of occurrences. +func (o DailyScheduleResponsePtrOutput) IntervalDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DailyScheduleResponse) *int { + if v == nil { + return nil + } + return &v.IntervalDays + }).(pulumi.IntPtrOutput) } -// LinuxOSConfigPtrInput is an input type that accepts LinuxOSConfigArgs, LinuxOSConfigPtr and LinuxOSConfigPtrOutput values. -// You can construct a concrete instance of `LinuxOSConfigPtrInput` via: -// -// LinuxOSConfigArgs{...} -// -// or: +// For example, between '2022-12-23' and '2023-01-05'. +type DateSpan struct { + // The end date of the date span. + End string `pulumi:"end"` + // The start date of the date span. + Start string `pulumi:"start"` +} + +// DateSpanInput is an input type that accepts DateSpanArgs and DateSpanOutput values. +// You can construct a concrete instance of `DateSpanInput` via: // -// nil -type LinuxOSConfigPtrInput interface { +// DateSpanArgs{...} +type DateSpanInput interface { pulumi.Input - ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput - ToLinuxOSConfigPtrOutputWithContext(context.Context) LinuxOSConfigPtrOutput + ToDateSpanOutput() DateSpanOutput + ToDateSpanOutputWithContext(context.Context) DateSpanOutput } -type linuxOSConfigPtrType LinuxOSConfigArgs - -func LinuxOSConfigPtr(v *LinuxOSConfigArgs) LinuxOSConfigPtrInput { - return (*linuxOSConfigPtrType)(v) +// For example, between '2022-12-23' and '2023-01-05'. +type DateSpanArgs struct { + // The end date of the date span. + End pulumi.StringInput `pulumi:"end"` + // The start date of the date span. + Start pulumi.StringInput `pulumi:"start"` } -func (*linuxOSConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**LinuxOSConfig)(nil)).Elem() +func (DateSpanArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DateSpan)(nil)).Elem() } -func (i *linuxOSConfigPtrType) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { - return i.ToLinuxOSConfigPtrOutputWithContext(context.Background()) +func (i DateSpanArgs) ToDateSpanOutput() DateSpanOutput { + return i.ToDateSpanOutputWithContext(context.Background()) } -func (i *linuxOSConfigPtrType) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(LinuxOSConfigPtrOutput) +func (i DateSpanArgs) ToDateSpanOutputWithContext(ctx context.Context) DateSpanOutput { + return pulumi.ToOutputWithContext(ctx, i).(DateSpanOutput) } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type LinuxOSConfigOutput struct{ *pulumi.OutputState } +// DateSpanArrayInput is an input type that accepts DateSpanArray and DateSpanArrayOutput values. +// You can construct a concrete instance of `DateSpanArrayInput` via: +// +// DateSpanArray{ DateSpanArgs{...} } +type DateSpanArrayInput interface { + pulumi.Input -func (LinuxOSConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LinuxOSConfig)(nil)).Elem() + ToDateSpanArrayOutput() DateSpanArrayOutput + ToDateSpanArrayOutputWithContext(context.Context) DateSpanArrayOutput } -func (o LinuxOSConfigOutput) ToLinuxOSConfigOutput() LinuxOSConfigOutput { - return o +type DateSpanArray []DateSpanInput + +func (DateSpanArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DateSpan)(nil)).Elem() } -func (o LinuxOSConfigOutput) ToLinuxOSConfigOutputWithContext(ctx context.Context) LinuxOSConfigOutput { - return o +func (i DateSpanArray) ToDateSpanArrayOutput() DateSpanArrayOutput { + return i.ToDateSpanArrayOutputWithContext(context.Background()) } -func (o LinuxOSConfigOutput) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { - return o.ToLinuxOSConfigPtrOutputWithContext(context.Background()) +func (i DateSpanArray) ToDateSpanArrayOutputWithContext(ctx context.Context) DateSpanArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DateSpanArrayOutput) } -func (o LinuxOSConfigOutput) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v LinuxOSConfig) *LinuxOSConfig { - return &v - }).(LinuxOSConfigPtrOutput) +// For example, between '2022-12-23' and '2023-01-05'. +type DateSpanOutput struct{ *pulumi.OutputState } + +func (DateSpanOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DateSpan)(nil)).Elem() } -// The size in MB of a swap file that will be created on each node. -func (o LinuxOSConfigOutput) SwapFileSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v LinuxOSConfig) *int { return v.SwapFileSizeMB }).(pulumi.IntPtrOutput) +func (o DateSpanOutput) ToDateSpanOutput() DateSpanOutput { + return o } -// Sysctl settings for Linux agent nodes. -func (o LinuxOSConfigOutput) Sysctls() SysctlConfigPtrOutput { - return o.ApplyT(func(v LinuxOSConfig) *SysctlConfig { return v.Sysctls }).(SysctlConfigPtrOutput) +func (o DateSpanOutput) ToDateSpanOutputWithContext(ctx context.Context) DateSpanOutput { + return o } -// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { - return o.ApplyT(func(v LinuxOSConfig) *string { return v.TransparentHugePageDefrag }).(pulumi.StringPtrOutput) +// The end date of the date span. +func (o DateSpanOutput) End() pulumi.StringOutput { + return o.ApplyT(func(v DateSpan) string { return v.End }).(pulumi.StringOutput) } -// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { - return o.ApplyT(func(v LinuxOSConfig) *string { return v.TransparentHugePageEnabled }).(pulumi.StringPtrOutput) +// The start date of the date span. +func (o DateSpanOutput) Start() pulumi.StringOutput { + return o.ApplyT(func(v DateSpan) string { return v.Start }).(pulumi.StringOutput) } -type LinuxOSConfigPtrOutput struct{ *pulumi.OutputState } +type DateSpanArrayOutput struct{ *pulumi.OutputState } -func (LinuxOSConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**LinuxOSConfig)(nil)).Elem() +func (DateSpanArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DateSpan)(nil)).Elem() } -func (o LinuxOSConfigPtrOutput) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { +func (o DateSpanArrayOutput) ToDateSpanArrayOutput() DateSpanArrayOutput { return o } -func (o LinuxOSConfigPtrOutput) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { +func (o DateSpanArrayOutput) ToDateSpanArrayOutputWithContext(ctx context.Context) DateSpanArrayOutput { return o } -func (o LinuxOSConfigPtrOutput) Elem() LinuxOSConfigOutput { - return o.ApplyT(func(v *LinuxOSConfig) LinuxOSConfig { - if v != nil { - return *v - } - var ret LinuxOSConfig - return ret - }).(LinuxOSConfigOutput) -} - -// The size in MB of a swap file that will be created on each node. -func (o LinuxOSConfigPtrOutput) SwapFileSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v *LinuxOSConfig) *int { - if v == nil { - return nil - } - return v.SwapFileSizeMB - }).(pulumi.IntPtrOutput) -} - -// Sysctl settings for Linux agent nodes. -func (o LinuxOSConfigPtrOutput) Sysctls() SysctlConfigPtrOutput { - return o.ApplyT(func(v *LinuxOSConfig) *SysctlConfig { - if v == nil { - return nil - } - return v.Sysctls - }).(SysctlConfigPtrOutput) -} - -// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigPtrOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { - return o.ApplyT(func(v *LinuxOSConfig) *string { - if v == nil { - return nil - } - return v.TransparentHugePageDefrag - }).(pulumi.StringPtrOutput) -} - -// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigPtrOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { - return o.ApplyT(func(v *LinuxOSConfig) *string { - if v == nil { - return nil - } - return v.TransparentHugePageEnabled - }).(pulumi.StringPtrOutput) +func (o DateSpanArrayOutput) Index(i pulumi.IntInput) DateSpanOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DateSpan { + return vs[0].([]DateSpan)[vs[1].(int)] + }).(DateSpanOutput) } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type LinuxOSConfigResponse struct { - // The size in MB of a swap file that will be created on each node. - SwapFileSizeMB *int `pulumi:"swapFileSizeMB"` - // Sysctl settings for Linux agent nodes. - Sysctls *SysctlConfigResponse `pulumi:"sysctls"` - // Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). - TransparentHugePageDefrag *string `pulumi:"transparentHugePageDefrag"` - // Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). - TransparentHugePageEnabled *string `pulumi:"transparentHugePageEnabled"` +// For example, between '2022-12-23' and '2023-01-05'. +type DateSpanResponse struct { + // The end date of the date span. + End string `pulumi:"end"` + // The start date of the date span. + Start string `pulumi:"start"` } -// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. -type LinuxOSConfigResponseOutput struct{ *pulumi.OutputState } +// For example, between '2022-12-23' and '2023-01-05'. +type DateSpanResponseOutput struct{ *pulumi.OutputState } -func (LinuxOSConfigResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*LinuxOSConfigResponse)(nil)).Elem() +func (DateSpanResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DateSpanResponse)(nil)).Elem() } -func (o LinuxOSConfigResponseOutput) ToLinuxOSConfigResponseOutput() LinuxOSConfigResponseOutput { +func (o DateSpanResponseOutput) ToDateSpanResponseOutput() DateSpanResponseOutput { return o } -func (o LinuxOSConfigResponseOutput) ToLinuxOSConfigResponseOutputWithContext(ctx context.Context) LinuxOSConfigResponseOutput { +func (o DateSpanResponseOutput) ToDateSpanResponseOutputWithContext(ctx context.Context) DateSpanResponseOutput { return o } -// The size in MB of a swap file that will be created on each node. -func (o LinuxOSConfigResponseOutput) SwapFileSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v LinuxOSConfigResponse) *int { return v.SwapFileSizeMB }).(pulumi.IntPtrOutput) +// The end date of the date span. +func (o DateSpanResponseOutput) End() pulumi.StringOutput { + return o.ApplyT(func(v DateSpanResponse) string { return v.End }).(pulumi.StringOutput) } -// Sysctl settings for Linux agent nodes. -func (o LinuxOSConfigResponseOutput) Sysctls() SysctlConfigResponsePtrOutput { - return o.ApplyT(func(v LinuxOSConfigResponse) *SysctlConfigResponse { return v.Sysctls }).(SysctlConfigResponsePtrOutput) +// The start date of the date span. +func (o DateSpanResponseOutput) Start() pulumi.StringOutput { + return o.ApplyT(func(v DateSpanResponse) string { return v.Start }).(pulumi.StringOutput) } -// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigResponseOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { - return o.ApplyT(func(v LinuxOSConfigResponse) *string { return v.TransparentHugePageDefrag }).(pulumi.StringPtrOutput) -} +type DateSpanResponseArrayOutput struct{ *pulumi.OutputState } -// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigResponseOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { - return o.ApplyT(func(v LinuxOSConfigResponse) *string { return v.TransparentHugePageEnabled }).(pulumi.StringPtrOutput) +func (DateSpanResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DateSpanResponse)(nil)).Elem() } -type LinuxOSConfigResponsePtrOutput struct{ *pulumi.OutputState } - -func (LinuxOSConfigResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**LinuxOSConfigResponse)(nil)).Elem() +func (o DateSpanResponseArrayOutput) ToDateSpanResponseArrayOutput() DateSpanResponseArrayOutput { + return o } -func (o LinuxOSConfigResponsePtrOutput) ToLinuxOSConfigResponsePtrOutput() LinuxOSConfigResponsePtrOutput { +func (o DateSpanResponseArrayOutput) ToDateSpanResponseArrayOutputWithContext(ctx context.Context) DateSpanResponseArrayOutput { return o } -func (o LinuxOSConfigResponsePtrOutput) ToLinuxOSConfigResponsePtrOutputWithContext(ctx context.Context) LinuxOSConfigResponsePtrOutput { - return o +func (o DateSpanResponseArrayOutput) Index(i pulumi.IntInput) DateSpanResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DateSpanResponse { + return vs[0].([]DateSpanResponse)[vs[1].(int)] + }).(DateSpanResponseOutput) } -func (o LinuxOSConfigResponsePtrOutput) Elem() LinuxOSConfigResponseOutput { - return o.ApplyT(func(v *LinuxOSConfigResponse) LinuxOSConfigResponse { - if v != nil { - return *v - } - var ret LinuxOSConfigResponse - return ret - }).(LinuxOSConfigResponseOutput) +// Delegated resource properties - internal use only. +type DelegatedResource struct { + // The source resource location - internal use only. + Location *string `pulumi:"location"` + // The delegation id of the referral delegation (optional) - internal use only. + ReferralResource *string `pulumi:"referralResource"` + // The ARM resource id of the delegated resource - internal use only. + ResourceId *string `pulumi:"resourceId"` + // The tenant id of the delegated resource - internal use only. + TenantId *string `pulumi:"tenantId"` } -// The size in MB of a swap file that will be created on each node. -func (o LinuxOSConfigResponsePtrOutput) SwapFileSizeMB() pulumi.IntPtrOutput { - return o.ApplyT(func(v *LinuxOSConfigResponse) *int { - if v == nil { - return nil - } - return v.SwapFileSizeMB - }).(pulumi.IntPtrOutput) +// DelegatedResourceInput is an input type that accepts DelegatedResourceArgs and DelegatedResourceOutput values. +// You can construct a concrete instance of `DelegatedResourceInput` via: +// +// DelegatedResourceArgs{...} +type DelegatedResourceInput interface { + pulumi.Input + + ToDelegatedResourceOutput() DelegatedResourceOutput + ToDelegatedResourceOutputWithContext(context.Context) DelegatedResourceOutput } -// Sysctl settings for Linux agent nodes. -func (o LinuxOSConfigResponsePtrOutput) Sysctls() SysctlConfigResponsePtrOutput { - return o.ApplyT(func(v *LinuxOSConfigResponse) *SysctlConfigResponse { - if v == nil { - return nil - } - return v.Sysctls - }).(SysctlConfigResponsePtrOutput) +// Delegated resource properties - internal use only. +type DelegatedResourceArgs struct { + // The source resource location - internal use only. + Location pulumi.StringPtrInput `pulumi:"location"` + // The delegation id of the referral delegation (optional) - internal use only. + ReferralResource pulumi.StringPtrInput `pulumi:"referralResource"` + // The ARM resource id of the delegated resource - internal use only. + ResourceId pulumi.StringPtrInput `pulumi:"resourceId"` + // The tenant id of the delegated resource - internal use only. + TenantId pulumi.StringPtrInput `pulumi:"tenantId"` } -// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigResponsePtrOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { - return o.ApplyT(func(v *LinuxOSConfigResponse) *string { - if v == nil { - return nil - } - return v.TransparentHugePageDefrag - }).(pulumi.StringPtrOutput) +func (DelegatedResourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DelegatedResource)(nil)).Elem() } -// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). -func (o LinuxOSConfigResponsePtrOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { - return o.ApplyT(func(v *LinuxOSConfigResponse) *string { - if v == nil { - return nil - } - return v.TransparentHugePageEnabled - }).(pulumi.StringPtrOutput) +func (i DelegatedResourceArgs) ToDelegatedResourceOutput() DelegatedResourceOutput { + return i.ToDelegatedResourceOutputWithContext(context.Background()) } -// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). -type ManagedClusterAADProfile struct { - // The list of AAD group object IDs that will have admin role of the cluster. - AdminGroupObjectIDs []string `pulumi:"adminGroupObjectIDs"` - // (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. - ClientAppID *string `pulumi:"clientAppID"` - // Whether to enable Azure RBAC for Kubernetes authorization. - EnableAzureRBAC *bool `pulumi:"enableAzureRBAC"` - // Whether to enable managed AAD. - Managed *bool `pulumi:"managed"` - // (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. - ServerAppID *string `pulumi:"serverAppID"` - // (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. - ServerAppSecret *string `pulumi:"serverAppSecret"` - // The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. - TenantID *string `pulumi:"tenantID"` +func (i DelegatedResourceArgs) ToDelegatedResourceOutputWithContext(ctx context.Context) DelegatedResourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(DelegatedResourceOutput) } -// ManagedClusterAADProfileInput is an input type that accepts ManagedClusterAADProfileArgs and ManagedClusterAADProfileOutput values. -// You can construct a concrete instance of `ManagedClusterAADProfileInput` via: +// DelegatedResourceMapInput is an input type that accepts DelegatedResourceMap and DelegatedResourceMapOutput values. +// You can construct a concrete instance of `DelegatedResourceMapInput` via: // -// ManagedClusterAADProfileArgs{...} -type ManagedClusterAADProfileInput interface { +// DelegatedResourceMap{ "key": DelegatedResourceArgs{...} } +type DelegatedResourceMapInput interface { pulumi.Input - ToManagedClusterAADProfileOutput() ManagedClusterAADProfileOutput - ToManagedClusterAADProfileOutputWithContext(context.Context) ManagedClusterAADProfileOutput + ToDelegatedResourceMapOutput() DelegatedResourceMapOutput + ToDelegatedResourceMapOutputWithContext(context.Context) DelegatedResourceMapOutput } -// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). -type ManagedClusterAADProfileArgs struct { - // The list of AAD group object IDs that will have admin role of the cluster. - AdminGroupObjectIDs pulumi.StringArrayInput `pulumi:"adminGroupObjectIDs"` - // (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. - ClientAppID pulumi.StringPtrInput `pulumi:"clientAppID"` - // Whether to enable Azure RBAC for Kubernetes authorization. - EnableAzureRBAC pulumi.BoolPtrInput `pulumi:"enableAzureRBAC"` - // Whether to enable managed AAD. - Managed pulumi.BoolPtrInput `pulumi:"managed"` - // (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. - ServerAppID pulumi.StringPtrInput `pulumi:"serverAppID"` - // (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. - ServerAppSecret pulumi.StringPtrInput `pulumi:"serverAppSecret"` - // The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. - TenantID pulumi.StringPtrInput `pulumi:"tenantID"` -} +type DelegatedResourceMap map[string]DelegatedResourceInput -func (ManagedClusterAADProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAADProfile)(nil)).Elem() +func (DelegatedResourceMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]DelegatedResource)(nil)).Elem() } -func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfileOutput() ManagedClusterAADProfileOutput { - return i.ToManagedClusterAADProfileOutputWithContext(context.Background()) +func (i DelegatedResourceMap) ToDelegatedResourceMapOutput() DelegatedResourceMapOutput { + return i.ToDelegatedResourceMapOutputWithContext(context.Background()) } -func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfileOutputWithContext(ctx context.Context) ManagedClusterAADProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAADProfileOutput) +func (i DelegatedResourceMap) ToDelegatedResourceMapOutputWithContext(ctx context.Context) DelegatedResourceMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(DelegatedResourceMapOutput) } -func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { - return i.ToManagedClusterAADProfilePtrOutputWithContext(context.Background()) -} +// Delegated resource properties - internal use only. +type DelegatedResourceOutput struct{ *pulumi.OutputState } -func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAADProfileOutput).ToManagedClusterAADProfilePtrOutputWithContext(ctx) +func (DelegatedResourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DelegatedResource)(nil)).Elem() } -// ManagedClusterAADProfilePtrInput is an input type that accepts ManagedClusterAADProfileArgs, ManagedClusterAADProfilePtr and ManagedClusterAADProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterAADProfilePtrInput` via: -// -// ManagedClusterAADProfileArgs{...} -// -// or: -// -// nil -type ManagedClusterAADProfilePtrInput interface { - pulumi.Input - - ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput - ToManagedClusterAADProfilePtrOutputWithContext(context.Context) ManagedClusterAADProfilePtrOutput +func (o DelegatedResourceOutput) ToDelegatedResourceOutput() DelegatedResourceOutput { + return o } -type managedClusterAADProfilePtrType ManagedClusterAADProfileArgs +func (o DelegatedResourceOutput) ToDelegatedResourceOutputWithContext(ctx context.Context) DelegatedResourceOutput { + return o +} -func ManagedClusterAADProfilePtr(v *ManagedClusterAADProfileArgs) ManagedClusterAADProfilePtrInput { - return (*managedClusterAADProfilePtrType)(v) +// The source resource location - internal use only. +func (o DelegatedResourceOutput) Location() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResource) *string { return v.Location }).(pulumi.StringPtrOutput) } -func (*managedClusterAADProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAADProfile)(nil)).Elem() +// The delegation id of the referral delegation (optional) - internal use only. +func (o DelegatedResourceOutput) ReferralResource() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResource) *string { return v.ReferralResource }).(pulumi.StringPtrOutput) } -func (i *managedClusterAADProfilePtrType) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { - return i.ToManagedClusterAADProfilePtrOutputWithContext(context.Background()) +// The ARM resource id of the delegated resource - internal use only. +func (o DelegatedResourceOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResource) *string { return v.ResourceId }).(pulumi.StringPtrOutput) } -func (i *managedClusterAADProfilePtrType) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAADProfilePtrOutput) +// The tenant id of the delegated resource - internal use only. +func (o DelegatedResourceOutput) TenantId() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResource) *string { return v.TenantId }).(pulumi.StringPtrOutput) } -// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). -type ManagedClusterAADProfileOutput struct{ *pulumi.OutputState } +type DelegatedResourceMapOutput struct{ *pulumi.OutputState } -func (ManagedClusterAADProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAADProfile)(nil)).Elem() +func (DelegatedResourceMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]DelegatedResource)(nil)).Elem() } -func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfileOutput() ManagedClusterAADProfileOutput { +func (o DelegatedResourceMapOutput) ToDelegatedResourceMapOutput() DelegatedResourceMapOutput { return o } -func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfileOutputWithContext(ctx context.Context) ManagedClusterAADProfileOutput { +func (o DelegatedResourceMapOutput) ToDelegatedResourceMapOutputWithContext(ctx context.Context) DelegatedResourceMapOutput { return o } -func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { - return o.ToManagedClusterAADProfilePtrOutputWithContext(context.Background()) +func (o DelegatedResourceMapOutput) MapIndex(k pulumi.StringInput) DelegatedResourceOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) DelegatedResource { + return vs[0].(map[string]DelegatedResource)[vs[1].(string)] + }).(DelegatedResourceOutput) } -func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAADProfile) *ManagedClusterAADProfile { - return &v - }).(ManagedClusterAADProfilePtrOutput) +// Delegated resource properties - internal use only. +type DelegatedResourceResponse struct { + // The source resource location - internal use only. + Location *string `pulumi:"location"` + // The delegation id of the referral delegation (optional) - internal use only. + ReferralResource *string `pulumi:"referralResource"` + // The ARM resource id of the delegated resource - internal use only. + ResourceId *string `pulumi:"resourceId"` + // The tenant id of the delegated resource - internal use only. + TenantId *string `pulumi:"tenantId"` } -// The list of AAD group object IDs that will have admin role of the cluster. -func (o ManagedClusterAADProfileOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) []string { return v.AdminGroupObjectIDs }).(pulumi.StringArrayOutput) +// Delegated resource properties - internal use only. +type DelegatedResourceResponseOutput struct{ *pulumi.OutputState } + +func (DelegatedResourceResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DelegatedResourceResponse)(nil)).Elem() } -// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileOutput) ClientAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.ClientAppID }).(pulumi.StringPtrOutput) +func (o DelegatedResourceResponseOutput) ToDelegatedResourceResponseOutput() DelegatedResourceResponseOutput { + return o } -// Whether to enable Azure RBAC for Kubernetes authorization. -func (o ManagedClusterAADProfileOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) *bool { return v.EnableAzureRBAC }).(pulumi.BoolPtrOutput) +func (o DelegatedResourceResponseOutput) ToDelegatedResourceResponseOutputWithContext(ctx context.Context) DelegatedResourceResponseOutput { + return o } -// Whether to enable managed AAD. -func (o ManagedClusterAADProfileOutput) Managed() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) *bool { return v.Managed }).(pulumi.BoolPtrOutput) +// The source resource location - internal use only. +func (o DelegatedResourceResponseOutput) Location() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResourceResponse) *string { return v.Location }).(pulumi.StringPtrOutput) } -// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileOutput) ServerAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.ServerAppID }).(pulumi.StringPtrOutput) +// The delegation id of the referral delegation (optional) - internal use only. +func (o DelegatedResourceResponseOutput) ReferralResource() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResourceResponse) *string { return v.ReferralResource }).(pulumi.StringPtrOutput) } -// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileOutput) ServerAppSecret() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.ServerAppSecret }).(pulumi.StringPtrOutput) +// The ARM resource id of the delegated resource - internal use only. +func (o DelegatedResourceResponseOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResourceResponse) *string { return v.ResourceId }).(pulumi.StringPtrOutput) } -// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. -func (o ManagedClusterAADProfileOutput) TenantID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.TenantID }).(pulumi.StringPtrOutput) +// The tenant id of the delegated resource - internal use only. +func (o DelegatedResourceResponseOutput) TenantId() pulumi.StringPtrOutput { + return o.ApplyT(func(v DelegatedResourceResponse) *string { return v.TenantId }).(pulumi.StringPtrOutput) } -type ManagedClusterAADProfilePtrOutput struct{ *pulumi.OutputState } +type DelegatedResourceResponseMapOutput struct{ *pulumi.OutputState } -func (ManagedClusterAADProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAADProfile)(nil)).Elem() +func (DelegatedResourceResponseMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]DelegatedResourceResponse)(nil)).Elem() } -func (o ManagedClusterAADProfilePtrOutput) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { +func (o DelegatedResourceResponseMapOutput) ToDelegatedResourceResponseMapOutput() DelegatedResourceResponseMapOutput { return o } -func (o ManagedClusterAADProfilePtrOutput) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { +func (o DelegatedResourceResponseMapOutput) ToDelegatedResourceResponseMapOutputWithContext(ctx context.Context) DelegatedResourceResponseMapOutput { return o } -func (o ManagedClusterAADProfilePtrOutput) Elem() ManagedClusterAADProfileOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) ManagedClusterAADProfile { - if v != nil { - return *v - } - var ret ManagedClusterAADProfile - return ret - }).(ManagedClusterAADProfileOutput) +func (o DelegatedResourceResponseMapOutput) MapIndex(k pulumi.StringInput) DelegatedResourceResponseOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) DelegatedResourceResponse { + return vs[0].(map[string]DelegatedResourceResponse)[vs[1].(string)] + }).(DelegatedResourceResponseOutput) } -// The list of AAD group object IDs that will have admin role of the cluster. -func (o ManagedClusterAADProfilePtrOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) []string { - if v == nil { - return nil - } - return v.AdminGroupObjectIDs - }).(pulumi.StringArrayOutput) +// The complex type of the extended location. +type ExtendedLocation struct { + // The name of the extended location. + Name *string `pulumi:"name"` + // The type of the extended location. + Type *string `pulumi:"type"` } -// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfilePtrOutput) ClientAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) *string { - if v == nil { - return nil - } - return v.ClientAppID - }).(pulumi.StringPtrOutput) +// ExtendedLocationInput is an input type that accepts ExtendedLocationArgs and ExtendedLocationOutput values. +// You can construct a concrete instance of `ExtendedLocationInput` via: +// +// ExtendedLocationArgs{...} +type ExtendedLocationInput interface { + pulumi.Input + + ToExtendedLocationOutput() ExtendedLocationOutput + ToExtendedLocationOutputWithContext(context.Context) ExtendedLocationOutput } -// Whether to enable Azure RBAC for Kubernetes authorization. -func (o ManagedClusterAADProfilePtrOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) *bool { - if v == nil { - return nil - } - return v.EnableAzureRBAC - }).(pulumi.BoolPtrOutput) +// The complex type of the extended location. +type ExtendedLocationArgs struct { + // The name of the extended location. + Name pulumi.StringPtrInput `pulumi:"name"` + // The type of the extended location. + Type pulumi.StringPtrInput `pulumi:"type"` } -// Whether to enable managed AAD. -func (o ManagedClusterAADProfilePtrOutput) Managed() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) *bool { - if v == nil { - return nil - } - return v.Managed - }).(pulumi.BoolPtrOutput) +func (ExtendedLocationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ExtendedLocation)(nil)).Elem() } -// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfilePtrOutput) ServerAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) *string { - if v == nil { - return nil - } - return v.ServerAppID - }).(pulumi.StringPtrOutput) +func (i ExtendedLocationArgs) ToExtendedLocationOutput() ExtendedLocationOutput { + return i.ToExtendedLocationOutputWithContext(context.Background()) } -// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfilePtrOutput) ServerAppSecret() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) *string { - if v == nil { - return nil - } - return v.ServerAppSecret - }).(pulumi.StringPtrOutput) +func (i ExtendedLocationArgs) ToExtendedLocationOutputWithContext(ctx context.Context) ExtendedLocationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ExtendedLocationOutput) } -// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. -func (o ManagedClusterAADProfilePtrOutput) TenantID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfile) *string { - if v == nil { - return nil - } - return v.TenantID - }).(pulumi.StringPtrOutput) +func (i ExtendedLocationArgs) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { + return i.ToExtendedLocationPtrOutputWithContext(context.Background()) } -// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). -type ManagedClusterAADProfileResponse struct { - // The list of AAD group object IDs that will have admin role of the cluster. - AdminGroupObjectIDs []string `pulumi:"adminGroupObjectIDs"` - // (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. - ClientAppID *string `pulumi:"clientAppID"` - // Whether to enable Azure RBAC for Kubernetes authorization. - EnableAzureRBAC *bool `pulumi:"enableAzureRBAC"` - // Whether to enable managed AAD. - Managed *bool `pulumi:"managed"` - // (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. - ServerAppID *string `pulumi:"serverAppID"` - // (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. - ServerAppSecret *string `pulumi:"serverAppSecret"` - // The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. - TenantID *string `pulumi:"tenantID"` +func (i ExtendedLocationArgs) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ExtendedLocationOutput).ToExtendedLocationPtrOutputWithContext(ctx) } -// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). -type ManagedClusterAADProfileResponseOutput struct{ *pulumi.OutputState } +// ExtendedLocationPtrInput is an input type that accepts ExtendedLocationArgs, ExtendedLocationPtr and ExtendedLocationPtrOutput values. +// You can construct a concrete instance of `ExtendedLocationPtrInput` via: +// +// ExtendedLocationArgs{...} +// +// or: +// +// nil +type ExtendedLocationPtrInput interface { + pulumi.Input -func (ManagedClusterAADProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAADProfileResponse)(nil)).Elem() + ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput + ToExtendedLocationPtrOutputWithContext(context.Context) ExtendedLocationPtrOutput } -func (o ManagedClusterAADProfileResponseOutput) ToManagedClusterAADProfileResponseOutput() ManagedClusterAADProfileResponseOutput { - return o +type extendedLocationPtrType ExtendedLocationArgs + +func ExtendedLocationPtr(v *ExtendedLocationArgs) ExtendedLocationPtrInput { + return (*extendedLocationPtrType)(v) } -func (o ManagedClusterAADProfileResponseOutput) ToManagedClusterAADProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAADProfileResponseOutput { - return o +func (*extendedLocationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ExtendedLocation)(nil)).Elem() } -// The list of AAD group object IDs that will have admin role of the cluster. -func (o ManagedClusterAADProfileResponseOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) []string { return v.AdminGroupObjectIDs }).(pulumi.StringArrayOutput) +func (i *extendedLocationPtrType) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { + return i.ToExtendedLocationPtrOutputWithContext(context.Background()) } -// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileResponseOutput) ClientAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.ClientAppID }).(pulumi.StringPtrOutput) +func (i *extendedLocationPtrType) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ExtendedLocationPtrOutput) } -// Whether to enable Azure RBAC for Kubernetes authorization. -func (o ManagedClusterAADProfileResponseOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) *bool { return v.EnableAzureRBAC }).(pulumi.BoolPtrOutput) +// The complex type of the extended location. +type ExtendedLocationOutput struct{ *pulumi.OutputState } + +func (ExtendedLocationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ExtendedLocation)(nil)).Elem() } -// Whether to enable managed AAD. -func (o ManagedClusterAADProfileResponseOutput) Managed() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) *bool { return v.Managed }).(pulumi.BoolPtrOutput) +func (o ExtendedLocationOutput) ToExtendedLocationOutput() ExtendedLocationOutput { + return o } -// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileResponseOutput) ServerAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.ServerAppID }).(pulumi.StringPtrOutput) +func (o ExtendedLocationOutput) ToExtendedLocationOutputWithContext(ctx context.Context) ExtendedLocationOutput { + return o } -// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileResponseOutput) ServerAppSecret() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.ServerAppSecret }).(pulumi.StringPtrOutput) +func (o ExtendedLocationOutput) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { + return o.ToExtendedLocationPtrOutputWithContext(context.Background()) } -// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. -func (o ManagedClusterAADProfileResponseOutput) TenantID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.TenantID }).(pulumi.StringPtrOutput) +func (o ExtendedLocationOutput) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ExtendedLocation) *ExtendedLocation { + return &v + }).(ExtendedLocationPtrOutput) } -type ManagedClusterAADProfileResponsePtrOutput struct{ *pulumi.OutputState } +// The name of the extended location. +func (o ExtendedLocationOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ExtendedLocation) *string { return v.Name }).(pulumi.StringPtrOutput) +} -func (ManagedClusterAADProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAADProfileResponse)(nil)).Elem() +// The type of the extended location. +func (o ExtendedLocationOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v ExtendedLocation) *string { return v.Type }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAADProfileResponsePtrOutput) ToManagedClusterAADProfileResponsePtrOutput() ManagedClusterAADProfileResponsePtrOutput { +type ExtendedLocationPtrOutput struct{ *pulumi.OutputState } + +func (ExtendedLocationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ExtendedLocation)(nil)).Elem() +} + +func (o ExtendedLocationPtrOutput) ToExtendedLocationPtrOutput() ExtendedLocationPtrOutput { return o } -func (o ManagedClusterAADProfileResponsePtrOutput) ToManagedClusterAADProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfileResponsePtrOutput { +func (o ExtendedLocationPtrOutput) ToExtendedLocationPtrOutputWithContext(ctx context.Context) ExtendedLocationPtrOutput { return o } -func (o ManagedClusterAADProfileResponsePtrOutput) Elem() ManagedClusterAADProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) ManagedClusterAADProfileResponse { +func (o ExtendedLocationPtrOutput) Elem() ExtendedLocationOutput { + return o.ApplyT(func(v *ExtendedLocation) ExtendedLocation { if v != nil { return *v } - var ret ManagedClusterAADProfileResponse + var ret ExtendedLocation return ret - }).(ManagedClusterAADProfileResponseOutput) + }).(ExtendedLocationOutput) } -// The list of AAD group object IDs that will have admin role of the cluster. -func (o ManagedClusterAADProfileResponsePtrOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) []string { +// The name of the extended location. +func (o ExtendedLocationPtrOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ExtendedLocation) *string { if v == nil { return nil } - return v.AdminGroupObjectIDs - }).(pulumi.StringArrayOutput) + return v.Name + }).(pulumi.StringPtrOutput) } -// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileResponsePtrOutput) ClientAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { +// The type of the extended location. +func (o ExtendedLocationPtrOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ExtendedLocation) *string { if v == nil { return nil } - return v.ClientAppID + return v.Type }).(pulumi.StringPtrOutput) } -// Whether to enable Azure RBAC for Kubernetes authorization. -func (o ManagedClusterAADProfileResponsePtrOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *bool { - if v == nil { - return nil - } - return v.EnableAzureRBAC - }).(pulumi.BoolPtrOutput) +// The complex type of the extended location. +type ExtendedLocationResponse struct { + // The name of the extended location. + Name *string `pulumi:"name"` + // The type of the extended location. + Type *string `pulumi:"type"` } -// Whether to enable managed AAD. -func (o ManagedClusterAADProfileResponsePtrOutput) Managed() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *bool { - if v == nil { - return nil - } - return v.Managed - }).(pulumi.BoolPtrOutput) +// The complex type of the extended location. +type ExtendedLocationResponseOutput struct{ *pulumi.OutputState } + +func (ExtendedLocationResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ExtendedLocationResponse)(nil)).Elem() } -// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileResponsePtrOutput) ServerAppID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { - if v == nil { - return nil - } - return v.ServerAppID - }).(pulumi.StringPtrOutput) +func (o ExtendedLocationResponseOutput) ToExtendedLocationResponseOutput() ExtendedLocationResponseOutput { + return o } -// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. -func (o ManagedClusterAADProfileResponsePtrOutput) ServerAppSecret() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { - if v == nil { - return nil - } - return v.ServerAppSecret +func (o ExtendedLocationResponseOutput) ToExtendedLocationResponseOutputWithContext(ctx context.Context) ExtendedLocationResponseOutput { + return o +} + +// The name of the extended location. +func (o ExtendedLocationResponseOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ExtendedLocationResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// The type of the extended location. +func (o ExtendedLocationResponseOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v ExtendedLocationResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +} + +type ExtendedLocationResponsePtrOutput struct{ *pulumi.OutputState } + +func (ExtendedLocationResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ExtendedLocationResponse)(nil)).Elem() +} + +func (o ExtendedLocationResponsePtrOutput) ToExtendedLocationResponsePtrOutput() ExtendedLocationResponsePtrOutput { + return o +} + +func (o ExtendedLocationResponsePtrOutput) ToExtendedLocationResponsePtrOutputWithContext(ctx context.Context) ExtendedLocationResponsePtrOutput { + return o +} + +func (o ExtendedLocationResponsePtrOutput) Elem() ExtendedLocationResponseOutput { + return o.ApplyT(func(v *ExtendedLocationResponse) ExtendedLocationResponse { + if v != nil { + return *v + } + var ret ExtendedLocationResponse + return ret + }).(ExtendedLocationResponseOutput) +} + +// The name of the extended location. +func (o ExtendedLocationResponsePtrOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ExtendedLocationResponse) *string { + if v == nil { + return nil + } + return v.Name }).(pulumi.StringPtrOutput) } -// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. -func (o ManagedClusterAADProfileResponsePtrOutput) TenantID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { +// The type of the extended location. +func (o ExtendedLocationResponsePtrOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ExtendedLocationResponse) *string { if v == nil { return nil } - return v.TenantID + return v.Type }).(pulumi.StringPtrOutput) } -// Access profile for managed cluster API server. -type ManagedClusterAPIServerAccessProfile struct { - // IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). - AuthorizedIPRanges []string `pulumi:"authorizedIPRanges"` - // Whether to disable run command for the cluster or not. - DisableRunCommand *bool `pulumi:"disableRunCommand"` - // For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). - EnablePrivateCluster *bool `pulumi:"enablePrivateCluster"` - // Whether to create additional public FQDN for private cluster or not. - EnablePrivateClusterPublicFQDN *bool `pulumi:"enablePrivateClusterPublicFQDN"` - // The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. - PrivateDNSZone *string `pulumi:"privateDNSZone"` +// Contains the IPTag associated with the object. +type IPTag struct { + // The IP tag type. Example: RoutingPreference. + IpTagType *string `pulumi:"ipTagType"` + // The value of the IP tag associated with the public IP. Example: Internet. + Tag *string `pulumi:"tag"` } -// ManagedClusterAPIServerAccessProfileInput is an input type that accepts ManagedClusterAPIServerAccessProfileArgs and ManagedClusterAPIServerAccessProfileOutput values. -// You can construct a concrete instance of `ManagedClusterAPIServerAccessProfileInput` via: +// IPTagInput is an input type that accepts IPTagArgs and IPTagOutput values. +// You can construct a concrete instance of `IPTagInput` via: // -// ManagedClusterAPIServerAccessProfileArgs{...} -type ManagedClusterAPIServerAccessProfileInput interface { +// IPTagArgs{...} +type IPTagInput interface { pulumi.Input - ToManagedClusterAPIServerAccessProfileOutput() ManagedClusterAPIServerAccessProfileOutput - ToManagedClusterAPIServerAccessProfileOutputWithContext(context.Context) ManagedClusterAPIServerAccessProfileOutput -} - -// Access profile for managed cluster API server. -type ManagedClusterAPIServerAccessProfileArgs struct { - // IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). - AuthorizedIPRanges pulumi.StringArrayInput `pulumi:"authorizedIPRanges"` - // Whether to disable run command for the cluster or not. - DisableRunCommand pulumi.BoolPtrInput `pulumi:"disableRunCommand"` - // For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). - EnablePrivateCluster pulumi.BoolPtrInput `pulumi:"enablePrivateCluster"` - // Whether to create additional public FQDN for private cluster or not. - EnablePrivateClusterPublicFQDN pulumi.BoolPtrInput `pulumi:"enablePrivateClusterPublicFQDN"` - // The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. - PrivateDNSZone pulumi.StringPtrInput `pulumi:"privateDNSZone"` -} - -func (ManagedClusterAPIServerAccessProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAPIServerAccessProfile)(nil)).Elem() + ToIPTagOutput() IPTagOutput + ToIPTagOutputWithContext(context.Context) IPTagOutput } -func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfileOutput() ManagedClusterAPIServerAccessProfileOutput { - return i.ToManagedClusterAPIServerAccessProfileOutputWithContext(context.Background()) +// Contains the IPTag associated with the object. +type IPTagArgs struct { + // The IP tag type. Example: RoutingPreference. + IpTagType pulumi.StringPtrInput `pulumi:"ipTagType"` + // The value of the IP tag associated with the public IP. Example: Internet. + Tag pulumi.StringPtrInput `pulumi:"tag"` } -func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfileOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAPIServerAccessProfileOutput) +func (IPTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IPTag)(nil)).Elem() } -func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { - return i.ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Background()) +func (i IPTagArgs) ToIPTagOutput() IPTagOutput { + return i.ToIPTagOutputWithContext(context.Background()) } -func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAPIServerAccessProfileOutput).ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx) +func (i IPTagArgs) ToIPTagOutputWithContext(ctx context.Context) IPTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(IPTagOutput) } -// ManagedClusterAPIServerAccessProfilePtrInput is an input type that accepts ManagedClusterAPIServerAccessProfileArgs, ManagedClusterAPIServerAccessProfilePtr and ManagedClusterAPIServerAccessProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterAPIServerAccessProfilePtrInput` via: -// -// ManagedClusterAPIServerAccessProfileArgs{...} -// -// or: +// IPTagArrayInput is an input type that accepts IPTagArray and IPTagArrayOutput values. +// You can construct a concrete instance of `IPTagArrayInput` via: // -// nil -type ManagedClusterAPIServerAccessProfilePtrInput interface { +// IPTagArray{ IPTagArgs{...} } +type IPTagArrayInput interface { pulumi.Input - ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput - ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Context) ManagedClusterAPIServerAccessProfilePtrOutput + ToIPTagArrayOutput() IPTagArrayOutput + ToIPTagArrayOutputWithContext(context.Context) IPTagArrayOutput } -type managedClusterAPIServerAccessProfilePtrType ManagedClusterAPIServerAccessProfileArgs - -func ManagedClusterAPIServerAccessProfilePtr(v *ManagedClusterAPIServerAccessProfileArgs) ManagedClusterAPIServerAccessProfilePtrInput { - return (*managedClusterAPIServerAccessProfilePtrType)(v) -} +type IPTagArray []IPTagInput -func (*managedClusterAPIServerAccessProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAPIServerAccessProfile)(nil)).Elem() +func (IPTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]IPTag)(nil)).Elem() } -func (i *managedClusterAPIServerAccessProfilePtrType) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { - return i.ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Background()) +func (i IPTagArray) ToIPTagArrayOutput() IPTagArrayOutput { + return i.ToIPTagArrayOutputWithContext(context.Background()) } -func (i *managedClusterAPIServerAccessProfilePtrType) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAPIServerAccessProfilePtrOutput) +func (i IPTagArray) ToIPTagArrayOutputWithContext(ctx context.Context) IPTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IPTagArrayOutput) } -// Access profile for managed cluster API server. -type ManagedClusterAPIServerAccessProfileOutput struct{ *pulumi.OutputState } +// Contains the IPTag associated with the object. +type IPTagOutput struct{ *pulumi.OutputState } -func (ManagedClusterAPIServerAccessProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAPIServerAccessProfile)(nil)).Elem() +func (IPTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IPTag)(nil)).Elem() } -func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfileOutput() ManagedClusterAPIServerAccessProfileOutput { +func (o IPTagOutput) ToIPTagOutput() IPTagOutput { return o } -func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfileOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileOutput { +func (o IPTagOutput) ToIPTagOutputWithContext(ctx context.Context) IPTagOutput { return o } -func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { - return o.ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Background()) +// The IP tag type. Example: RoutingPreference. +func (o IPTagOutput) IpTagType() pulumi.StringPtrOutput { + return o.ApplyT(func(v IPTag) *string { return v.IpTagType }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAPIServerAccessProfile) *ManagedClusterAPIServerAccessProfile { - return &v - }).(ManagedClusterAPIServerAccessProfilePtrOutput) +// The value of the IP tag associated with the public IP. Example: Internet. +func (o IPTagOutput) Tag() pulumi.StringPtrOutput { + return o.ApplyT(func(v IPTag) *string { return v.Tag }).(pulumi.StringPtrOutput) } -// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). -func (o ManagedClusterAPIServerAccessProfileOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) []string { return v.AuthorizedIPRanges }).(pulumi.StringArrayOutput) +type IPTagArrayOutput struct{ *pulumi.OutputState } + +func (IPTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IPTag)(nil)).Elem() } -// Whether to disable run command for the cluster or not. -func (o ManagedClusterAPIServerAccessProfileOutput) DisableRunCommand() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *bool { return v.DisableRunCommand }).(pulumi.BoolPtrOutput) +func (o IPTagArrayOutput) ToIPTagArrayOutput() IPTagArrayOutput { + return o } -// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). -func (o ManagedClusterAPIServerAccessProfileOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *bool { return v.EnablePrivateCluster }).(pulumi.BoolPtrOutput) +func (o IPTagArrayOutput) ToIPTagArrayOutputWithContext(ctx context.Context) IPTagArrayOutput { + return o } -// Whether to create additional public FQDN for private cluster or not. -func (o ManagedClusterAPIServerAccessProfileOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *bool { return v.EnablePrivateClusterPublicFQDN }).(pulumi.BoolPtrOutput) +func (o IPTagArrayOutput) Index(i pulumi.IntInput) IPTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IPTag { + return vs[0].([]IPTag)[vs[1].(int)] + }).(IPTagOutput) } -// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. -func (o ManagedClusterAPIServerAccessProfileOutput) PrivateDNSZone() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *string { return v.PrivateDNSZone }).(pulumi.StringPtrOutput) +// Contains the IPTag associated with the object. +type IPTagResponse struct { + // The IP tag type. Example: RoutingPreference. + IpTagType *string `pulumi:"ipTagType"` + // The value of the IP tag associated with the public IP. Example: Internet. + Tag *string `pulumi:"tag"` } -type ManagedClusterAPIServerAccessProfilePtrOutput struct{ *pulumi.OutputState } +// Contains the IPTag associated with the object. +type IPTagResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterAPIServerAccessProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAPIServerAccessProfile)(nil)).Elem() +func (IPTagResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IPTagResponse)(nil)).Elem() } -func (o ManagedClusterAPIServerAccessProfilePtrOutput) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { +func (o IPTagResponseOutput) ToIPTagResponseOutput() IPTagResponseOutput { return o } -func (o ManagedClusterAPIServerAccessProfilePtrOutput) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { +func (o IPTagResponseOutput) ToIPTagResponseOutputWithContext(ctx context.Context) IPTagResponseOutput { return o } -func (o ManagedClusterAPIServerAccessProfilePtrOutput) Elem() ManagedClusterAPIServerAccessProfileOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) ManagedClusterAPIServerAccessProfile { - if v != nil { - return *v - } - var ret ManagedClusterAPIServerAccessProfile - return ret - }).(ManagedClusterAPIServerAccessProfileOutput) +// The IP tag type. Example: RoutingPreference. +func (o IPTagResponseOutput) IpTagType() pulumi.StringPtrOutput { + return o.ApplyT(func(v IPTagResponse) *string { return v.IpTagType }).(pulumi.StringPtrOutput) } -// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). -func (o ManagedClusterAPIServerAccessProfilePtrOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) []string { - if v == nil { - return nil - } - return v.AuthorizedIPRanges - }).(pulumi.StringArrayOutput) +// The value of the IP tag associated with the public IP. Example: Internet. +func (o IPTagResponseOutput) Tag() pulumi.StringPtrOutput { + return o.ApplyT(func(v IPTagResponse) *string { return v.Tag }).(pulumi.StringPtrOutput) } -// Whether to disable run command for the cluster or not. -func (o ManagedClusterAPIServerAccessProfilePtrOutput) DisableRunCommand() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *bool { - if v == nil { - return nil - } - return v.DisableRunCommand - }).(pulumi.BoolPtrOutput) +type IPTagResponseArrayOutput struct{ *pulumi.OutputState } + +func (IPTagResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IPTagResponse)(nil)).Elem() } -// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). -func (o ManagedClusterAPIServerAccessProfilePtrOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *bool { - if v == nil { - return nil - } - return v.EnablePrivateCluster - }).(pulumi.BoolPtrOutput) +func (o IPTagResponseArrayOutput) ToIPTagResponseArrayOutput() IPTagResponseArrayOutput { + return o } -// Whether to create additional public FQDN for private cluster or not. -func (o ManagedClusterAPIServerAccessProfilePtrOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *bool { - if v == nil { - return nil - } - return v.EnablePrivateClusterPublicFQDN - }).(pulumi.BoolPtrOutput) +func (o IPTagResponseArrayOutput) ToIPTagResponseArrayOutputWithContext(ctx context.Context) IPTagResponseArrayOutput { + return o } -// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. -func (o ManagedClusterAPIServerAccessProfilePtrOutput) PrivateDNSZone() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *string { - if v == nil { - return nil - } - return v.PrivateDNSZone - }).(pulumi.StringPtrOutput) +func (o IPTagResponseArrayOutput) Index(i pulumi.IntInput) IPTagResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IPTagResponse { + return vs[0].([]IPTagResponse)[vs[1].(int)] + }).(IPTagResponseOutput) } -// Access profile for managed cluster API server. -type ManagedClusterAPIServerAccessProfileResponse struct { - // IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). - AuthorizedIPRanges []string `pulumi:"authorizedIPRanges"` - // Whether to disable run command for the cluster or not. - DisableRunCommand *bool `pulumi:"disableRunCommand"` - // For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). - EnablePrivateCluster *bool `pulumi:"enablePrivateCluster"` - // Whether to create additional public FQDN for private cluster or not. - EnablePrivateClusterPublicFQDN *bool `pulumi:"enablePrivateClusterPublicFQDN"` - // The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. - PrivateDNSZone *string `pulumi:"privateDNSZone"` +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +type IstioCertificateAuthority struct { + // Plugin certificates information for Service Mesh. + Plugin *IstioPluginCertificateAuthority `pulumi:"plugin"` } -// Access profile for managed cluster API server. -type ManagedClusterAPIServerAccessProfileResponseOutput struct{ *pulumi.OutputState } +// IstioCertificateAuthorityInput is an input type that accepts IstioCertificateAuthorityArgs and IstioCertificateAuthorityOutput values. +// You can construct a concrete instance of `IstioCertificateAuthorityInput` via: +// +// IstioCertificateAuthorityArgs{...} +type IstioCertificateAuthorityInput interface { + pulumi.Input -func (ManagedClusterAPIServerAccessProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAPIServerAccessProfileResponse)(nil)).Elem() + ToIstioCertificateAuthorityOutput() IstioCertificateAuthorityOutput + ToIstioCertificateAuthorityOutputWithContext(context.Context) IstioCertificateAuthorityOutput } -func (o ManagedClusterAPIServerAccessProfileResponseOutput) ToManagedClusterAPIServerAccessProfileResponseOutput() ManagedClusterAPIServerAccessProfileResponseOutput { - return o +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +type IstioCertificateAuthorityArgs struct { + // Plugin certificates information for Service Mesh. + Plugin IstioPluginCertificateAuthorityPtrInput `pulumi:"plugin"` } -func (o ManagedClusterAPIServerAccessProfileResponseOutput) ToManagedClusterAPIServerAccessProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileResponseOutput { - return o +func (IstioCertificateAuthorityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IstioCertificateAuthority)(nil)).Elem() } -// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). -func (o ManagedClusterAPIServerAccessProfileResponseOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) []string { return v.AuthorizedIPRanges }).(pulumi.StringArrayOutput) +func (i IstioCertificateAuthorityArgs) ToIstioCertificateAuthorityOutput() IstioCertificateAuthorityOutput { + return i.ToIstioCertificateAuthorityOutputWithContext(context.Background()) } -// Whether to disable run command for the cluster or not. -func (o ManagedClusterAPIServerAccessProfileResponseOutput) DisableRunCommand() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *bool { return v.DisableRunCommand }).(pulumi.BoolPtrOutput) +func (i IstioCertificateAuthorityArgs) ToIstioCertificateAuthorityOutputWithContext(ctx context.Context) IstioCertificateAuthorityOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioCertificateAuthorityOutput) } -// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). -func (o ManagedClusterAPIServerAccessProfileResponseOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *bool { return v.EnablePrivateCluster }).(pulumi.BoolPtrOutput) +func (i IstioCertificateAuthorityArgs) ToIstioCertificateAuthorityPtrOutput() IstioCertificateAuthorityPtrOutput { + return i.ToIstioCertificateAuthorityPtrOutputWithContext(context.Background()) } -// Whether to create additional public FQDN for private cluster or not. -func (o ManagedClusterAPIServerAccessProfileResponseOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *bool { return v.EnablePrivateClusterPublicFQDN }).(pulumi.BoolPtrOutput) +func (i IstioCertificateAuthorityArgs) ToIstioCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioCertificateAuthorityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioCertificateAuthorityOutput).ToIstioCertificateAuthorityPtrOutputWithContext(ctx) } -// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. -func (o ManagedClusterAPIServerAccessProfileResponseOutput) PrivateDNSZone() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *string { return v.PrivateDNSZone }).(pulumi.StringPtrOutput) +// IstioCertificateAuthorityPtrInput is an input type that accepts IstioCertificateAuthorityArgs, IstioCertificateAuthorityPtr and IstioCertificateAuthorityPtrOutput values. +// You can construct a concrete instance of `IstioCertificateAuthorityPtrInput` via: +// +// IstioCertificateAuthorityArgs{...} +// +// or: +// +// nil +type IstioCertificateAuthorityPtrInput interface { + pulumi.Input + + ToIstioCertificateAuthorityPtrOutput() IstioCertificateAuthorityPtrOutput + ToIstioCertificateAuthorityPtrOutputWithContext(context.Context) IstioCertificateAuthorityPtrOutput } -type ManagedClusterAPIServerAccessProfileResponsePtrOutput struct{ *pulumi.OutputState } +type istioCertificateAuthorityPtrType IstioCertificateAuthorityArgs -func (ManagedClusterAPIServerAccessProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAPIServerAccessProfileResponse)(nil)).Elem() +func IstioCertificateAuthorityPtr(v *IstioCertificateAuthorityArgs) IstioCertificateAuthorityPtrInput { + return (*istioCertificateAuthorityPtrType)(v) } -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) ToManagedClusterAPIServerAccessProfileResponsePtrOutput() ManagedClusterAPIServerAccessProfileResponsePtrOutput { - return o +func (*istioCertificateAuthorityPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IstioCertificateAuthority)(nil)).Elem() } -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) ToManagedClusterAPIServerAccessProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileResponsePtrOutput { - return o +func (i *istioCertificateAuthorityPtrType) ToIstioCertificateAuthorityPtrOutput() IstioCertificateAuthorityPtrOutput { + return i.ToIstioCertificateAuthorityPtrOutputWithContext(context.Background()) } -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) Elem() ManagedClusterAPIServerAccessProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) ManagedClusterAPIServerAccessProfileResponse { +func (i *istioCertificateAuthorityPtrType) ToIstioCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioCertificateAuthorityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioCertificateAuthorityPtrOutput) +} + +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +type IstioCertificateAuthorityOutput struct{ *pulumi.OutputState } + +func (IstioCertificateAuthorityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioCertificateAuthority)(nil)).Elem() +} + +func (o IstioCertificateAuthorityOutput) ToIstioCertificateAuthorityOutput() IstioCertificateAuthorityOutput { + return o +} + +func (o IstioCertificateAuthorityOutput) ToIstioCertificateAuthorityOutputWithContext(ctx context.Context) IstioCertificateAuthorityOutput { + return o +} + +func (o IstioCertificateAuthorityOutput) ToIstioCertificateAuthorityPtrOutput() IstioCertificateAuthorityPtrOutput { + return o.ToIstioCertificateAuthorityPtrOutputWithContext(context.Background()) +} + +func (o IstioCertificateAuthorityOutput) ToIstioCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioCertificateAuthorityPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IstioCertificateAuthority) *IstioCertificateAuthority { + return &v + }).(IstioCertificateAuthorityPtrOutput) +} + +// Plugin certificates information for Service Mesh. +func (o IstioCertificateAuthorityOutput) Plugin() IstioPluginCertificateAuthorityPtrOutput { + return o.ApplyT(func(v IstioCertificateAuthority) *IstioPluginCertificateAuthority { return v.Plugin }).(IstioPluginCertificateAuthorityPtrOutput) +} + +type IstioCertificateAuthorityPtrOutput struct{ *pulumi.OutputState } + +func (IstioCertificateAuthorityPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioCertificateAuthority)(nil)).Elem() +} + +func (o IstioCertificateAuthorityPtrOutput) ToIstioCertificateAuthorityPtrOutput() IstioCertificateAuthorityPtrOutput { + return o +} + +func (o IstioCertificateAuthorityPtrOutput) ToIstioCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioCertificateAuthorityPtrOutput { + return o +} + +func (o IstioCertificateAuthorityPtrOutput) Elem() IstioCertificateAuthorityOutput { + return o.ApplyT(func(v *IstioCertificateAuthority) IstioCertificateAuthority { if v != nil { return *v } - var ret ManagedClusterAPIServerAccessProfileResponse + var ret IstioCertificateAuthority return ret - }).(ManagedClusterAPIServerAccessProfileResponseOutput) + }).(IstioCertificateAuthorityOutput) } -// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) []string { +// Plugin certificates information for Service Mesh. +func (o IstioCertificateAuthorityPtrOutput) Plugin() IstioPluginCertificateAuthorityPtrOutput { + return o.ApplyT(func(v *IstioCertificateAuthority) *IstioPluginCertificateAuthority { if v == nil { return nil } - return v.AuthorizedIPRanges - }).(pulumi.StringArrayOutput) + return v.Plugin + }).(IstioPluginCertificateAuthorityPtrOutput) } -// Whether to disable run command for the cluster or not. -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) DisableRunCommand() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *bool { - if v == nil { - return nil - } - return v.DisableRunCommand - }).(pulumi.BoolPtrOutput) +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +type IstioCertificateAuthorityResponse struct { + // Plugin certificates information for Service Mesh. + Plugin *IstioPluginCertificateAuthorityResponse `pulumi:"plugin"` } -// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *bool { - if v == nil { - return nil - } - return v.EnablePrivateCluster - }).(pulumi.BoolPtrOutput) +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +type IstioCertificateAuthorityResponseOutput struct{ *pulumi.OutputState } + +func (IstioCertificateAuthorityResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioCertificateAuthorityResponse)(nil)).Elem() } -// Whether to create additional public FQDN for private cluster or not. -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *bool { - if v == nil { - return nil +func (o IstioCertificateAuthorityResponseOutput) ToIstioCertificateAuthorityResponseOutput() IstioCertificateAuthorityResponseOutput { + return o +} + +func (o IstioCertificateAuthorityResponseOutput) ToIstioCertificateAuthorityResponseOutputWithContext(ctx context.Context) IstioCertificateAuthorityResponseOutput { + return o +} + +// Plugin certificates information for Service Mesh. +func (o IstioCertificateAuthorityResponseOutput) Plugin() IstioPluginCertificateAuthorityResponsePtrOutput { + return o.ApplyT(func(v IstioCertificateAuthorityResponse) *IstioPluginCertificateAuthorityResponse { return v.Plugin }).(IstioPluginCertificateAuthorityResponsePtrOutput) +} + +type IstioCertificateAuthorityResponsePtrOutput struct{ *pulumi.OutputState } + +func (IstioCertificateAuthorityResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioCertificateAuthorityResponse)(nil)).Elem() +} + +func (o IstioCertificateAuthorityResponsePtrOutput) ToIstioCertificateAuthorityResponsePtrOutput() IstioCertificateAuthorityResponsePtrOutput { + return o +} + +func (o IstioCertificateAuthorityResponsePtrOutput) ToIstioCertificateAuthorityResponsePtrOutputWithContext(ctx context.Context) IstioCertificateAuthorityResponsePtrOutput { + return o +} + +func (o IstioCertificateAuthorityResponsePtrOutput) Elem() IstioCertificateAuthorityResponseOutput { + return o.ApplyT(func(v *IstioCertificateAuthorityResponse) IstioCertificateAuthorityResponse { + if v != nil { + return *v } - return v.EnablePrivateClusterPublicFQDN - }).(pulumi.BoolPtrOutput) + var ret IstioCertificateAuthorityResponse + return ret + }).(IstioCertificateAuthorityResponseOutput) } -// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. -func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) PrivateDNSZone() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *string { +// Plugin certificates information for Service Mesh. +func (o IstioCertificateAuthorityResponsePtrOutput) Plugin() IstioPluginCertificateAuthorityResponsePtrOutput { + return o.ApplyT(func(v *IstioCertificateAuthorityResponse) *IstioPluginCertificateAuthorityResponse { if v == nil { return nil } - return v.PrivateDNSZone - }).(pulumi.StringPtrOutput) + return v.Plugin + }).(IstioPluginCertificateAuthorityResponsePtrOutput) } -// A Kubernetes add-on profile for a managed cluster. -type ManagedClusterAddonProfile struct { - // Key-value pairs for configuring an add-on. - Config map[string]string `pulumi:"config"` - // Whether the add-on is enabled or not. - Enabled bool `pulumi:"enabled"` +// Istio components configuration. +type IstioComponents struct { + // Istio egress gateways. + EgressGateways []IstioEgressGateway `pulumi:"egressGateways"` + // Istio ingress gateways. + IngressGateways []IstioIngressGateway `pulumi:"ingressGateways"` } -// ManagedClusterAddonProfileInput is an input type that accepts ManagedClusterAddonProfileArgs and ManagedClusterAddonProfileOutput values. -// You can construct a concrete instance of `ManagedClusterAddonProfileInput` via: +// IstioComponentsInput is an input type that accepts IstioComponentsArgs and IstioComponentsOutput values. +// You can construct a concrete instance of `IstioComponentsInput` via: // -// ManagedClusterAddonProfileArgs{...} -type ManagedClusterAddonProfileInput interface { +// IstioComponentsArgs{...} +type IstioComponentsInput interface { pulumi.Input - ToManagedClusterAddonProfileOutput() ManagedClusterAddonProfileOutput - ToManagedClusterAddonProfileOutputWithContext(context.Context) ManagedClusterAddonProfileOutput + ToIstioComponentsOutput() IstioComponentsOutput + ToIstioComponentsOutputWithContext(context.Context) IstioComponentsOutput } -// A Kubernetes add-on profile for a managed cluster. -type ManagedClusterAddonProfileArgs struct { - // Key-value pairs for configuring an add-on. - Config pulumi.StringMapInput `pulumi:"config"` - // Whether the add-on is enabled or not. - Enabled pulumi.BoolInput `pulumi:"enabled"` +// Istio components configuration. +type IstioComponentsArgs struct { + // Istio egress gateways. + EgressGateways IstioEgressGatewayArrayInput `pulumi:"egressGateways"` + // Istio ingress gateways. + IngressGateways IstioIngressGatewayArrayInput `pulumi:"ingressGateways"` } -func (ManagedClusterAddonProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAddonProfile)(nil)).Elem() +func (IstioComponentsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IstioComponents)(nil)).Elem() } -func (i ManagedClusterAddonProfileArgs) ToManagedClusterAddonProfileOutput() ManagedClusterAddonProfileOutput { - return i.ToManagedClusterAddonProfileOutputWithContext(context.Background()) +func (i IstioComponentsArgs) ToIstioComponentsOutput() IstioComponentsOutput { + return i.ToIstioComponentsOutputWithContext(context.Background()) } -func (i ManagedClusterAddonProfileArgs) ToManagedClusterAddonProfileOutputWithContext(ctx context.Context) ManagedClusterAddonProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAddonProfileOutput) +func (i IstioComponentsArgs) ToIstioComponentsOutputWithContext(ctx context.Context) IstioComponentsOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioComponentsOutput) } -// ManagedClusterAddonProfileMapInput is an input type that accepts ManagedClusterAddonProfileMap and ManagedClusterAddonProfileMapOutput values. -// You can construct a concrete instance of `ManagedClusterAddonProfileMapInput` via: +func (i IstioComponentsArgs) ToIstioComponentsPtrOutput() IstioComponentsPtrOutput { + return i.ToIstioComponentsPtrOutputWithContext(context.Background()) +} + +func (i IstioComponentsArgs) ToIstioComponentsPtrOutputWithContext(ctx context.Context) IstioComponentsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioComponentsOutput).ToIstioComponentsPtrOutputWithContext(ctx) +} + +// IstioComponentsPtrInput is an input type that accepts IstioComponentsArgs, IstioComponentsPtr and IstioComponentsPtrOutput values. +// You can construct a concrete instance of `IstioComponentsPtrInput` via: // -// ManagedClusterAddonProfileMap{ "key": ManagedClusterAddonProfileArgs{...} } -type ManagedClusterAddonProfileMapInput interface { +// IstioComponentsArgs{...} +// +// or: +// +// nil +type IstioComponentsPtrInput interface { pulumi.Input - ToManagedClusterAddonProfileMapOutput() ManagedClusterAddonProfileMapOutput - ToManagedClusterAddonProfileMapOutputWithContext(context.Context) ManagedClusterAddonProfileMapOutput + ToIstioComponentsPtrOutput() IstioComponentsPtrOutput + ToIstioComponentsPtrOutputWithContext(context.Context) IstioComponentsPtrOutput } -type ManagedClusterAddonProfileMap map[string]ManagedClusterAddonProfileInput +type istioComponentsPtrType IstioComponentsArgs -func (ManagedClusterAddonProfileMap) ElementType() reflect.Type { - return reflect.TypeOf((*map[string]ManagedClusterAddonProfile)(nil)).Elem() +func IstioComponentsPtr(v *IstioComponentsArgs) IstioComponentsPtrInput { + return (*istioComponentsPtrType)(v) } -func (i ManagedClusterAddonProfileMap) ToManagedClusterAddonProfileMapOutput() ManagedClusterAddonProfileMapOutput { - return i.ToManagedClusterAddonProfileMapOutputWithContext(context.Background()) +func (*istioComponentsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IstioComponents)(nil)).Elem() } -func (i ManagedClusterAddonProfileMap) ToManagedClusterAddonProfileMapOutputWithContext(ctx context.Context) ManagedClusterAddonProfileMapOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAddonProfileMapOutput) +func (i *istioComponentsPtrType) ToIstioComponentsPtrOutput() IstioComponentsPtrOutput { + return i.ToIstioComponentsPtrOutputWithContext(context.Background()) } -// A Kubernetes add-on profile for a managed cluster. -type ManagedClusterAddonProfileOutput struct{ *pulumi.OutputState } +func (i *istioComponentsPtrType) ToIstioComponentsPtrOutputWithContext(ctx context.Context) IstioComponentsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioComponentsPtrOutput) +} -func (ManagedClusterAddonProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAddonProfile)(nil)).Elem() +// Istio components configuration. +type IstioComponentsOutput struct{ *pulumi.OutputState } + +func (IstioComponentsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioComponents)(nil)).Elem() } -func (o ManagedClusterAddonProfileOutput) ToManagedClusterAddonProfileOutput() ManagedClusterAddonProfileOutput { +func (o IstioComponentsOutput) ToIstioComponentsOutput() IstioComponentsOutput { return o } -func (o ManagedClusterAddonProfileOutput) ToManagedClusterAddonProfileOutputWithContext(ctx context.Context) ManagedClusterAddonProfileOutput { +func (o IstioComponentsOutput) ToIstioComponentsOutputWithContext(ctx context.Context) IstioComponentsOutput { return o } -// Key-value pairs for configuring an add-on. -func (o ManagedClusterAddonProfileOutput) Config() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterAddonProfile) map[string]string { return v.Config }).(pulumi.StringMapOutput) +func (o IstioComponentsOutput) ToIstioComponentsPtrOutput() IstioComponentsPtrOutput { + return o.ToIstioComponentsPtrOutputWithContext(context.Background()) } -// Whether the add-on is enabled or not. -func (o ManagedClusterAddonProfileOutput) Enabled() pulumi.BoolOutput { - return o.ApplyT(func(v ManagedClusterAddonProfile) bool { return v.Enabled }).(pulumi.BoolOutput) +func (o IstioComponentsOutput) ToIstioComponentsPtrOutputWithContext(ctx context.Context) IstioComponentsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IstioComponents) *IstioComponents { + return &v + }).(IstioComponentsPtrOutput) } -type ManagedClusterAddonProfileMapOutput struct{ *pulumi.OutputState } +// Istio egress gateways. +func (o IstioComponentsOutput) EgressGateways() IstioEgressGatewayArrayOutput { + return o.ApplyT(func(v IstioComponents) []IstioEgressGateway { return v.EgressGateways }).(IstioEgressGatewayArrayOutput) +} -func (ManagedClusterAddonProfileMapOutput) ElementType() reflect.Type { - return reflect.TypeOf((*map[string]ManagedClusterAddonProfile)(nil)).Elem() +// Istio ingress gateways. +func (o IstioComponentsOutput) IngressGateways() IstioIngressGatewayArrayOutput { + return o.ApplyT(func(v IstioComponents) []IstioIngressGateway { return v.IngressGateways }).(IstioIngressGatewayArrayOutput) } -func (o ManagedClusterAddonProfileMapOutput) ToManagedClusterAddonProfileMapOutput() ManagedClusterAddonProfileMapOutput { +type IstioComponentsPtrOutput struct{ *pulumi.OutputState } + +func (IstioComponentsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioComponents)(nil)).Elem() +} + +func (o IstioComponentsPtrOutput) ToIstioComponentsPtrOutput() IstioComponentsPtrOutput { return o } -func (o ManagedClusterAddonProfileMapOutput) ToManagedClusterAddonProfileMapOutputWithContext(ctx context.Context) ManagedClusterAddonProfileMapOutput { +func (o IstioComponentsPtrOutput) ToIstioComponentsPtrOutputWithContext(ctx context.Context) IstioComponentsPtrOutput { return o } -func (o ManagedClusterAddonProfileMapOutput) MapIndex(k pulumi.StringInput) ManagedClusterAddonProfileOutput { - return pulumi.All(o, k).ApplyT(func(vs []interface{}) ManagedClusterAddonProfile { - return vs[0].(map[string]ManagedClusterAddonProfile)[vs[1].(string)] - }).(ManagedClusterAddonProfileOutput) +func (o IstioComponentsPtrOutput) Elem() IstioComponentsOutput { + return o.ApplyT(func(v *IstioComponents) IstioComponents { + if v != nil { + return *v + } + var ret IstioComponents + return ret + }).(IstioComponentsOutput) } -// A Kubernetes add-on profile for a managed cluster. -type ManagedClusterAddonProfileResponse struct { - // Key-value pairs for configuring an add-on. - Config map[string]string `pulumi:"config"` - // Whether the add-on is enabled or not. - Enabled bool `pulumi:"enabled"` - // Information of user assigned identity used by this add-on. - Identity ManagedClusterAddonProfileResponseIdentity `pulumi:"identity"` +// Istio egress gateways. +func (o IstioComponentsPtrOutput) EgressGateways() IstioEgressGatewayArrayOutput { + return o.ApplyT(func(v *IstioComponents) []IstioEgressGateway { + if v == nil { + return nil + } + return v.EgressGateways + }).(IstioEgressGatewayArrayOutput) } -// A Kubernetes add-on profile for a managed cluster. -type ManagedClusterAddonProfileResponseOutput struct{ *pulumi.OutputState } +// Istio ingress gateways. +func (o IstioComponentsPtrOutput) IngressGateways() IstioIngressGatewayArrayOutput { + return o.ApplyT(func(v *IstioComponents) []IstioIngressGateway { + if v == nil { + return nil + } + return v.IngressGateways + }).(IstioIngressGatewayArrayOutput) +} -func (ManagedClusterAddonProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAddonProfileResponse)(nil)).Elem() +// Istio components configuration. +type IstioComponentsResponse struct { + // Istio egress gateways. + EgressGateways []IstioEgressGatewayResponse `pulumi:"egressGateways"` + // Istio ingress gateways. + IngressGateways []IstioIngressGatewayResponse `pulumi:"ingressGateways"` } -func (o ManagedClusterAddonProfileResponseOutput) ToManagedClusterAddonProfileResponseOutput() ManagedClusterAddonProfileResponseOutput { - return o +// Istio components configuration. +type IstioComponentsResponseOutput struct{ *pulumi.OutputState } + +func (IstioComponentsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioComponentsResponse)(nil)).Elem() } -func (o ManagedClusterAddonProfileResponseOutput) ToManagedClusterAddonProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAddonProfileResponseOutput { +func (o IstioComponentsResponseOutput) ToIstioComponentsResponseOutput() IstioComponentsResponseOutput { return o } -// Key-value pairs for configuring an add-on. -func (o ManagedClusterAddonProfileResponseOutput) Config() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterAddonProfileResponse) map[string]string { return v.Config }).(pulumi.StringMapOutput) +func (o IstioComponentsResponseOutput) ToIstioComponentsResponseOutputWithContext(ctx context.Context) IstioComponentsResponseOutput { + return o } -// Whether the add-on is enabled or not. -func (o ManagedClusterAddonProfileResponseOutput) Enabled() pulumi.BoolOutput { - return o.ApplyT(func(v ManagedClusterAddonProfileResponse) bool { return v.Enabled }).(pulumi.BoolOutput) +// Istio egress gateways. +func (o IstioComponentsResponseOutput) EgressGateways() IstioEgressGatewayResponseArrayOutput { + return o.ApplyT(func(v IstioComponentsResponse) []IstioEgressGatewayResponse { return v.EgressGateways }).(IstioEgressGatewayResponseArrayOutput) } -// Information of user assigned identity used by this add-on. -func (o ManagedClusterAddonProfileResponseOutput) Identity() ManagedClusterAddonProfileResponseIdentityOutput { - return o.ApplyT(func(v ManagedClusterAddonProfileResponse) ManagedClusterAddonProfileResponseIdentity { - return v.Identity - }).(ManagedClusterAddonProfileResponseIdentityOutput) +// Istio ingress gateways. +func (o IstioComponentsResponseOutput) IngressGateways() IstioIngressGatewayResponseArrayOutput { + return o.ApplyT(func(v IstioComponentsResponse) []IstioIngressGatewayResponse { return v.IngressGateways }).(IstioIngressGatewayResponseArrayOutput) } -type ManagedClusterAddonProfileResponseMapOutput struct{ *pulumi.OutputState } +type IstioComponentsResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterAddonProfileResponseMapOutput) ElementType() reflect.Type { - return reflect.TypeOf((*map[string]ManagedClusterAddonProfileResponse)(nil)).Elem() +func (IstioComponentsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioComponentsResponse)(nil)).Elem() } -func (o ManagedClusterAddonProfileResponseMapOutput) ToManagedClusterAddonProfileResponseMapOutput() ManagedClusterAddonProfileResponseMapOutput { +func (o IstioComponentsResponsePtrOutput) ToIstioComponentsResponsePtrOutput() IstioComponentsResponsePtrOutput { return o } -func (o ManagedClusterAddonProfileResponseMapOutput) ToManagedClusterAddonProfileResponseMapOutputWithContext(ctx context.Context) ManagedClusterAddonProfileResponseMapOutput { +func (o IstioComponentsResponsePtrOutput) ToIstioComponentsResponsePtrOutputWithContext(ctx context.Context) IstioComponentsResponsePtrOutput { return o } -func (o ManagedClusterAddonProfileResponseMapOutput) MapIndex(k pulumi.StringInput) ManagedClusterAddonProfileResponseOutput { - return pulumi.All(o, k).ApplyT(func(vs []interface{}) ManagedClusterAddonProfileResponse { - return vs[0].(map[string]ManagedClusterAddonProfileResponse)[vs[1].(string)] - }).(ManagedClusterAddonProfileResponseOutput) +func (o IstioComponentsResponsePtrOutput) Elem() IstioComponentsResponseOutput { + return o.ApplyT(func(v *IstioComponentsResponse) IstioComponentsResponse { + if v != nil { + return *v + } + var ret IstioComponentsResponse + return ret + }).(IstioComponentsResponseOutput) } -// Information of user assigned identity used by this add-on. -type ManagedClusterAddonProfileResponseIdentity struct { - // The client ID of the user assigned identity. - ClientId *string `pulumi:"clientId"` - // The object ID of the user assigned identity. - ObjectId *string `pulumi:"objectId"` - // The resource ID of the user assigned identity. - ResourceId *string `pulumi:"resourceId"` +// Istio egress gateways. +func (o IstioComponentsResponsePtrOutput) EgressGateways() IstioEgressGatewayResponseArrayOutput { + return o.ApplyT(func(v *IstioComponentsResponse) []IstioEgressGatewayResponse { + if v == nil { + return nil + } + return v.EgressGateways + }).(IstioEgressGatewayResponseArrayOutput) } -// Information of user assigned identity used by this add-on. -type ManagedClusterAddonProfileResponseIdentityOutput struct{ *pulumi.OutputState } +// Istio ingress gateways. +func (o IstioComponentsResponsePtrOutput) IngressGateways() IstioIngressGatewayResponseArrayOutput { + return o.ApplyT(func(v *IstioComponentsResponse) []IstioIngressGatewayResponse { + if v == nil { + return nil + } + return v.IngressGateways + }).(IstioIngressGatewayResponseArrayOutput) +} -func (ManagedClusterAddonProfileResponseIdentityOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAddonProfileResponseIdentity)(nil)).Elem() +// Istio egress gateway configuration. +type IstioEgressGateway struct { + // Whether to enable the egress gateway. + Enabled bool `pulumi:"enabled"` } -func (o ManagedClusterAddonProfileResponseIdentityOutput) ToManagedClusterAddonProfileResponseIdentityOutput() ManagedClusterAddonProfileResponseIdentityOutput { - return o +// IstioEgressGatewayInput is an input type that accepts IstioEgressGatewayArgs and IstioEgressGatewayOutput values. +// You can construct a concrete instance of `IstioEgressGatewayInput` via: +// +// IstioEgressGatewayArgs{...} +type IstioEgressGatewayInput interface { + pulumi.Input + + ToIstioEgressGatewayOutput() IstioEgressGatewayOutput + ToIstioEgressGatewayOutputWithContext(context.Context) IstioEgressGatewayOutput } -func (o ManagedClusterAddonProfileResponseIdentityOutput) ToManagedClusterAddonProfileResponseIdentityOutputWithContext(ctx context.Context) ManagedClusterAddonProfileResponseIdentityOutput { - return o +// Istio egress gateway configuration. +type IstioEgressGatewayArgs struct { + // Whether to enable the egress gateway. + Enabled pulumi.BoolInput `pulumi:"enabled"` } -// The client ID of the user assigned identity. -func (o ManagedClusterAddonProfileResponseIdentityOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAddonProfileResponseIdentity) *string { return v.ClientId }).(pulumi.StringPtrOutput) +func (IstioEgressGatewayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IstioEgressGateway)(nil)).Elem() } -// The object ID of the user assigned identity. -func (o ManagedClusterAddonProfileResponseIdentityOutput) ObjectId() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAddonProfileResponseIdentity) *string { return v.ObjectId }).(pulumi.StringPtrOutput) +func (i IstioEgressGatewayArgs) ToIstioEgressGatewayOutput() IstioEgressGatewayOutput { + return i.ToIstioEgressGatewayOutputWithContext(context.Background()) } -// The resource ID of the user assigned identity. -func (o ManagedClusterAddonProfileResponseIdentityOutput) ResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAddonProfileResponseIdentity) *string { return v.ResourceId }).(pulumi.StringPtrOutput) +func (i IstioEgressGatewayArgs) ToIstioEgressGatewayOutputWithContext(ctx context.Context) IstioEgressGatewayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioEgressGatewayOutput) } -// Profile for the container service agent pool. -type ManagedClusterAgentPoolProfile struct { - // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. - AvailabilityZones []string `pulumi:"availabilityZones"` - // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. - Count *int `pulumi:"count"` - // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. - CreationData *CreationData `pulumi:"creationData"` - // Whether to enable auto-scaler - EnableAutoScaling *bool `pulumi:"enableAutoScaling"` - // This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption - EnableEncryptionAtHost *bool `pulumi:"enableEncryptionAtHost"` - // See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. - EnableFIPS *bool `pulumi:"enableFIPS"` - // Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. - EnableNodePublicIP *bool `pulumi:"enableNodePublicIP"` - // Whether to enable UltraSSD - EnableUltraSSD *bool `pulumi:"enableUltraSSD"` - // GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. - GpuInstanceProfile *string `pulumi:"gpuInstanceProfile"` - // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). - HostGroupID *string `pulumi:"hostGroupID"` - // The Kubelet configuration on the agent pool nodes. - KubeletConfig *KubeletConfig `pulumi:"kubeletConfig"` - // Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. - KubeletDiskType *string `pulumi:"kubeletDiskType"` - // The OS configuration of Linux agent nodes. - LinuxOSConfig *LinuxOSConfig `pulumi:"linuxOSConfig"` - // The maximum number of nodes for auto-scaling - MaxCount *int `pulumi:"maxCount"` - // The maximum number of pods that can run on a node. - MaxPods *int `pulumi:"maxPods"` - // The minimum number of nodes for auto-scaling - MinCount *int `pulumi:"minCount"` - // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools - Mode *string `pulumi:"mode"` - // Windows agent pool names must be 6 characters or less. - Name string `pulumi:"name"` - // The node labels to be persisted across all nodes in agent pool. - NodeLabels map[string]string `pulumi:"nodeLabels"` - // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} - NodePublicIPPrefixID *string `pulumi:"nodePublicIPPrefixID"` - // The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. - NodeTaints []string `pulumi:"nodeTaints"` - // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). - OrchestratorVersion *string `pulumi:"orchestratorVersion"` - // OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. - OsDiskSizeGB *int `pulumi:"osDiskSizeGB"` - // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). - OsDiskType *string `pulumi:"osDiskType"` - // Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. - OsSKU *string `pulumi:"osSKU"` - // The operating system type. The default is Linux. - OsType *string `pulumi:"osType"` - // If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} - PodSubnetID *string `pulumi:"podSubnetID"` - // When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded - PowerState *PowerState `pulumi:"powerState"` - // The ID for Proximity Placement Group. - ProximityPlacementGroupID *string `pulumi:"proximityPlacementGroupID"` - // This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. - ScaleDownMode *string `pulumi:"scaleDownMode"` - // This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. - ScaleSetEvictionPolicy *string `pulumi:"scaleSetEvictionPolicy"` - // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. - ScaleSetPriority *string `pulumi:"scaleSetPriority"` - // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) - SpotMaxPrice *float64 `pulumi:"spotMaxPrice"` - // The tags to be persisted on the agent pool virtual machine scale set. - Tags map[string]string `pulumi:"tags"` - // The type of Agent Pool. - Type *string `pulumi:"type"` - // Settings for upgrading the agentpool - UpgradeSettings *AgentPoolUpgradeSettings `pulumi:"upgradeSettings"` - // VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions - VmSize *string `pulumi:"vmSize"` - // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} - VnetSubnetID *string `pulumi:"vnetSubnetID"` - // Determines the type of workload a node can run. - WorkloadRuntime *string `pulumi:"workloadRuntime"` -} - -// ManagedClusterAgentPoolProfileInput is an input type that accepts ManagedClusterAgentPoolProfileArgs and ManagedClusterAgentPoolProfileOutput values. -// You can construct a concrete instance of `ManagedClusterAgentPoolProfileInput` via: +// IstioEgressGatewayArrayInput is an input type that accepts IstioEgressGatewayArray and IstioEgressGatewayArrayOutput values. +// You can construct a concrete instance of `IstioEgressGatewayArrayInput` via: // -// ManagedClusterAgentPoolProfileArgs{...} -type ManagedClusterAgentPoolProfileInput interface { +// IstioEgressGatewayArray{ IstioEgressGatewayArgs{...} } +type IstioEgressGatewayArrayInput interface { pulumi.Input - ToManagedClusterAgentPoolProfileOutput() ManagedClusterAgentPoolProfileOutput - ToManagedClusterAgentPoolProfileOutputWithContext(context.Context) ManagedClusterAgentPoolProfileOutput + ToIstioEgressGatewayArrayOutput() IstioEgressGatewayArrayOutput + ToIstioEgressGatewayArrayOutputWithContext(context.Context) IstioEgressGatewayArrayOutput } -// Profile for the container service agent pool. -type ManagedClusterAgentPoolProfileArgs struct { - // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. - AvailabilityZones pulumi.StringArrayInput `pulumi:"availabilityZones"` - // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. - Count pulumi.IntPtrInput `pulumi:"count"` - // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. - CreationData CreationDataPtrInput `pulumi:"creationData"` - // Whether to enable auto-scaler - EnableAutoScaling pulumi.BoolPtrInput `pulumi:"enableAutoScaling"` - // This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption - EnableEncryptionAtHost pulumi.BoolPtrInput `pulumi:"enableEncryptionAtHost"` - // See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. - EnableFIPS pulumi.BoolPtrInput `pulumi:"enableFIPS"` - // Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. - EnableNodePublicIP pulumi.BoolPtrInput `pulumi:"enableNodePublicIP"` - // Whether to enable UltraSSD - EnableUltraSSD pulumi.BoolPtrInput `pulumi:"enableUltraSSD"` - // GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. - GpuInstanceProfile pulumi.StringPtrInput `pulumi:"gpuInstanceProfile"` - // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). - HostGroupID pulumi.StringPtrInput `pulumi:"hostGroupID"` - // The Kubelet configuration on the agent pool nodes. - KubeletConfig KubeletConfigPtrInput `pulumi:"kubeletConfig"` - // Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. - KubeletDiskType pulumi.StringPtrInput `pulumi:"kubeletDiskType"` - // The OS configuration of Linux agent nodes. - LinuxOSConfig LinuxOSConfigPtrInput `pulumi:"linuxOSConfig"` - // The maximum number of nodes for auto-scaling - MaxCount pulumi.IntPtrInput `pulumi:"maxCount"` - // The maximum number of pods that can run on a node. - MaxPods pulumi.IntPtrInput `pulumi:"maxPods"` - // The minimum number of nodes for auto-scaling - MinCount pulumi.IntPtrInput `pulumi:"minCount"` - // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools - Mode pulumi.StringPtrInput `pulumi:"mode"` - // Windows agent pool names must be 6 characters or less. - Name pulumi.StringInput `pulumi:"name"` - // The node labels to be persisted across all nodes in agent pool. - NodeLabels pulumi.StringMapInput `pulumi:"nodeLabels"` - // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} - NodePublicIPPrefixID pulumi.StringPtrInput `pulumi:"nodePublicIPPrefixID"` - // The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. - NodeTaints pulumi.StringArrayInput `pulumi:"nodeTaints"` - // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). - OrchestratorVersion pulumi.StringPtrInput `pulumi:"orchestratorVersion"` - // OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. - OsDiskSizeGB pulumi.IntPtrInput `pulumi:"osDiskSizeGB"` - // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). - OsDiskType pulumi.StringPtrInput `pulumi:"osDiskType"` - // Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. - OsSKU pulumi.StringPtrInput `pulumi:"osSKU"` - // The operating system type. The default is Linux. - OsType pulumi.StringPtrInput `pulumi:"osType"` - // If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} - PodSubnetID pulumi.StringPtrInput `pulumi:"podSubnetID"` - // When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded - PowerState PowerStatePtrInput `pulumi:"powerState"` - // The ID for Proximity Placement Group. - ProximityPlacementGroupID pulumi.StringPtrInput `pulumi:"proximityPlacementGroupID"` - // This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. - ScaleDownMode pulumi.StringPtrInput `pulumi:"scaleDownMode"` - // This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. - ScaleSetEvictionPolicy pulumi.StringPtrInput `pulumi:"scaleSetEvictionPolicy"` - // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. - ScaleSetPriority pulumi.StringPtrInput `pulumi:"scaleSetPriority"` - // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) - SpotMaxPrice pulumi.Float64PtrInput `pulumi:"spotMaxPrice"` - // The tags to be persisted on the agent pool virtual machine scale set. - Tags pulumi.StringMapInput `pulumi:"tags"` - // The type of Agent Pool. - Type pulumi.StringPtrInput `pulumi:"type"` - // Settings for upgrading the agentpool - UpgradeSettings AgentPoolUpgradeSettingsPtrInput `pulumi:"upgradeSettings"` - // VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions - VmSize pulumi.StringPtrInput `pulumi:"vmSize"` - // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} - VnetSubnetID pulumi.StringPtrInput `pulumi:"vnetSubnetID"` - // Determines the type of workload a node can run. - WorkloadRuntime pulumi.StringPtrInput `pulumi:"workloadRuntime"` -} +type IstioEgressGatewayArray []IstioEgressGatewayInput -func (ManagedClusterAgentPoolProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAgentPoolProfile)(nil)).Elem() +func (IstioEgressGatewayArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]IstioEgressGateway)(nil)).Elem() } -func (i ManagedClusterAgentPoolProfileArgs) ToManagedClusterAgentPoolProfileOutput() ManagedClusterAgentPoolProfileOutput { - return i.ToManagedClusterAgentPoolProfileOutputWithContext(context.Background()) +func (i IstioEgressGatewayArray) ToIstioEgressGatewayArrayOutput() IstioEgressGatewayArrayOutput { + return i.ToIstioEgressGatewayArrayOutputWithContext(context.Background()) } -func (i ManagedClusterAgentPoolProfileArgs) ToManagedClusterAgentPoolProfileOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAgentPoolProfileOutput) +func (i IstioEgressGatewayArray) ToIstioEgressGatewayArrayOutputWithContext(ctx context.Context) IstioEgressGatewayArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioEgressGatewayArrayOutput) } -// ManagedClusterAgentPoolProfileArrayInput is an input type that accepts ManagedClusterAgentPoolProfileArray and ManagedClusterAgentPoolProfileArrayOutput values. -// You can construct a concrete instance of `ManagedClusterAgentPoolProfileArrayInput` via: -// -// ManagedClusterAgentPoolProfileArray{ ManagedClusterAgentPoolProfileArgs{...} } -type ManagedClusterAgentPoolProfileArrayInput interface { - pulumi.Input +// Istio egress gateway configuration. +type IstioEgressGatewayOutput struct{ *pulumi.OutputState } - ToManagedClusterAgentPoolProfileArrayOutput() ManagedClusterAgentPoolProfileArrayOutput - ToManagedClusterAgentPoolProfileArrayOutputWithContext(context.Context) ManagedClusterAgentPoolProfileArrayOutput +func (IstioEgressGatewayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioEgressGateway)(nil)).Elem() } -type ManagedClusterAgentPoolProfileArray []ManagedClusterAgentPoolProfileInput - -func (ManagedClusterAgentPoolProfileArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterAgentPoolProfile)(nil)).Elem() +func (o IstioEgressGatewayOutput) ToIstioEgressGatewayOutput() IstioEgressGatewayOutput { + return o } -func (i ManagedClusterAgentPoolProfileArray) ToManagedClusterAgentPoolProfileArrayOutput() ManagedClusterAgentPoolProfileArrayOutput { - return i.ToManagedClusterAgentPoolProfileArrayOutputWithContext(context.Background()) +func (o IstioEgressGatewayOutput) ToIstioEgressGatewayOutputWithContext(ctx context.Context) IstioEgressGatewayOutput { + return o } -func (i ManagedClusterAgentPoolProfileArray) ToManagedClusterAgentPoolProfileArrayOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAgentPoolProfileArrayOutput) +// Whether to enable the egress gateway. +func (o IstioEgressGatewayOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v IstioEgressGateway) bool { return v.Enabled }).(pulumi.BoolOutput) } -// Profile for the container service agent pool. -type ManagedClusterAgentPoolProfileOutput struct{ *pulumi.OutputState } +type IstioEgressGatewayArrayOutput struct{ *pulumi.OutputState } -func (ManagedClusterAgentPoolProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAgentPoolProfile)(nil)).Elem() +func (IstioEgressGatewayArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IstioEgressGateway)(nil)).Elem() } -func (o ManagedClusterAgentPoolProfileOutput) ToManagedClusterAgentPoolProfileOutput() ManagedClusterAgentPoolProfileOutput { +func (o IstioEgressGatewayArrayOutput) ToIstioEgressGatewayArrayOutput() IstioEgressGatewayArrayOutput { return o } -func (o ManagedClusterAgentPoolProfileOutput) ToManagedClusterAgentPoolProfileOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileOutput { +func (o IstioEgressGatewayArrayOutput) ToIstioEgressGatewayArrayOutputWithContext(ctx context.Context) IstioEgressGatewayArrayOutput { return o } -// The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. -func (o ManagedClusterAgentPoolProfileOutput) AvailabilityZones() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) +func (o IstioEgressGatewayArrayOutput) Index(i pulumi.IntInput) IstioEgressGatewayOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IstioEgressGateway { + return vs[0].([]IstioEgressGateway)[vs[1].(int)] + }).(IstioEgressGatewayOutput) } -// Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. -func (o ManagedClusterAgentPoolProfileOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.Count }).(pulumi.IntPtrOutput) +// Istio egress gateway configuration. +type IstioEgressGatewayResponse struct { + // Whether to enable the egress gateway. + Enabled bool `pulumi:"enabled"` } -// CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. -func (o ManagedClusterAgentPoolProfileOutput) CreationData() CreationDataPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *CreationData { return v.CreationData }).(CreationDataPtrOutput) -} +// Istio egress gateway configuration. +type IstioEgressGatewayResponseOutput struct{ *pulumi.OutputState } -// Whether to enable auto-scaler -func (o ManagedClusterAgentPoolProfileOutput) EnableAutoScaling() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableAutoScaling }).(pulumi.BoolPtrOutput) +func (IstioEgressGatewayResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioEgressGatewayResponse)(nil)).Elem() } -// This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption -func (o ManagedClusterAgentPoolProfileOutput) EnableEncryptionAtHost() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableEncryptionAtHost }).(pulumi.BoolPtrOutput) +func (o IstioEgressGatewayResponseOutput) ToIstioEgressGatewayResponseOutput() IstioEgressGatewayResponseOutput { + return o } -// See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. -func (o ManagedClusterAgentPoolProfileOutput) EnableFIPS() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableFIPS }).(pulumi.BoolPtrOutput) +func (o IstioEgressGatewayResponseOutput) ToIstioEgressGatewayResponseOutputWithContext(ctx context.Context) IstioEgressGatewayResponseOutput { + return o } -// Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. -func (o ManagedClusterAgentPoolProfileOutput) EnableNodePublicIP() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableNodePublicIP }).(pulumi.BoolPtrOutput) +// Whether to enable the egress gateway. +func (o IstioEgressGatewayResponseOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v IstioEgressGatewayResponse) bool { return v.Enabled }).(pulumi.BoolOutput) } -// Whether to enable UltraSSD -func (o ManagedClusterAgentPoolProfileOutput) EnableUltraSSD() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableUltraSSD }).(pulumi.BoolPtrOutput) -} +type IstioEgressGatewayResponseArrayOutput struct{ *pulumi.OutputState } -// GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. -func (o ManagedClusterAgentPoolProfileOutput) GpuInstanceProfile() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.GpuInstanceProfile }).(pulumi.StringPtrOutput) +func (IstioEgressGatewayResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IstioEgressGatewayResponse)(nil)).Elem() } -// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). -func (o ManagedClusterAgentPoolProfileOutput) HostGroupID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.HostGroupID }).(pulumi.StringPtrOutput) +func (o IstioEgressGatewayResponseArrayOutput) ToIstioEgressGatewayResponseArrayOutput() IstioEgressGatewayResponseArrayOutput { + return o } -// The Kubelet configuration on the agent pool nodes. -func (o ManagedClusterAgentPoolProfileOutput) KubeletConfig() KubeletConfigPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *KubeletConfig { return v.KubeletConfig }).(KubeletConfigPtrOutput) +func (o IstioEgressGatewayResponseArrayOutput) ToIstioEgressGatewayResponseArrayOutputWithContext(ctx context.Context) IstioEgressGatewayResponseArrayOutput { + return o } -// Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. -func (o ManagedClusterAgentPoolProfileOutput) KubeletDiskType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.KubeletDiskType }).(pulumi.StringPtrOutput) +func (o IstioEgressGatewayResponseArrayOutput) Index(i pulumi.IntInput) IstioEgressGatewayResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IstioEgressGatewayResponse { + return vs[0].([]IstioEgressGatewayResponse)[vs[1].(int)] + }).(IstioEgressGatewayResponseOutput) } -// The OS configuration of Linux agent nodes. -func (o ManagedClusterAgentPoolProfileOutput) LinuxOSConfig() LinuxOSConfigPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *LinuxOSConfig { return v.LinuxOSConfig }).(LinuxOSConfigPtrOutput) +// Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`. +type IstioIngressGateway struct { + // Whether to enable the ingress gateway. + Enabled bool `pulumi:"enabled"` + // Mode of an ingress gateway. + Mode string `pulumi:"mode"` } -// The maximum number of nodes for auto-scaling -func (o ManagedClusterAgentPoolProfileOutput) MaxCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.MaxCount }).(pulumi.IntPtrOutput) +// IstioIngressGatewayInput is an input type that accepts IstioIngressGatewayArgs and IstioIngressGatewayOutput values. +// You can construct a concrete instance of `IstioIngressGatewayInput` via: +// +// IstioIngressGatewayArgs{...} +type IstioIngressGatewayInput interface { + pulumi.Input + + ToIstioIngressGatewayOutput() IstioIngressGatewayOutput + ToIstioIngressGatewayOutputWithContext(context.Context) IstioIngressGatewayOutput } -// The maximum number of pods that can run on a node. -func (o ManagedClusterAgentPoolProfileOutput) MaxPods() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.MaxPods }).(pulumi.IntPtrOutput) +// Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`. +type IstioIngressGatewayArgs struct { + // Whether to enable the ingress gateway. + Enabled pulumi.BoolInput `pulumi:"enabled"` + // Mode of an ingress gateway. + Mode pulumi.StringInput `pulumi:"mode"` } -// The minimum number of nodes for auto-scaling -func (o ManagedClusterAgentPoolProfileOutput) MinCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.MinCount }).(pulumi.IntPtrOutput) +func (IstioIngressGatewayArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IstioIngressGateway)(nil)).Elem() } -// A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools -func (o ManagedClusterAgentPoolProfileOutput) Mode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.Mode }).(pulumi.StringPtrOutput) +func (i IstioIngressGatewayArgs) ToIstioIngressGatewayOutput() IstioIngressGatewayOutput { + return i.ToIstioIngressGatewayOutputWithContext(context.Background()) } -// Windows agent pool names must be 6 characters or less. -func (o ManagedClusterAgentPoolProfileOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) string { return v.Name }).(pulumi.StringOutput) +func (i IstioIngressGatewayArgs) ToIstioIngressGatewayOutputWithContext(ctx context.Context) IstioIngressGatewayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioIngressGatewayOutput) } -// The node labels to be persisted across all nodes in agent pool. -func (o ManagedClusterAgentPoolProfileOutput) NodeLabels() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) map[string]string { return v.NodeLabels }).(pulumi.StringMapOutput) -} +// IstioIngressGatewayArrayInput is an input type that accepts IstioIngressGatewayArray and IstioIngressGatewayArrayOutput values. +// You can construct a concrete instance of `IstioIngressGatewayArrayInput` via: +// +// IstioIngressGatewayArray{ IstioIngressGatewayArgs{...} } +type IstioIngressGatewayArrayInput interface { + pulumi.Input -// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} -func (o ManagedClusterAgentPoolProfileOutput) NodePublicIPPrefixID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.NodePublicIPPrefixID }).(pulumi.StringPtrOutput) + ToIstioIngressGatewayArrayOutput() IstioIngressGatewayArrayOutput + ToIstioIngressGatewayArrayOutputWithContext(context.Context) IstioIngressGatewayArrayOutput } -// The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. -func (o ManagedClusterAgentPoolProfileOutput) NodeTaints() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) []string { return v.NodeTaints }).(pulumi.StringArrayOutput) -} +type IstioIngressGatewayArray []IstioIngressGatewayInput -// Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). -func (o ManagedClusterAgentPoolProfileOutput) OrchestratorVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OrchestratorVersion }).(pulumi.StringPtrOutput) +func (IstioIngressGatewayArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]IstioIngressGateway)(nil)).Elem() } -// OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. -func (o ManagedClusterAgentPoolProfileOutput) OsDiskSizeGB() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.OsDiskSizeGB }).(pulumi.IntPtrOutput) +func (i IstioIngressGatewayArray) ToIstioIngressGatewayArrayOutput() IstioIngressGatewayArrayOutput { + return i.ToIstioIngressGatewayArrayOutputWithContext(context.Background()) } -// The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). -func (o ManagedClusterAgentPoolProfileOutput) OsDiskType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OsDiskType }).(pulumi.StringPtrOutput) +func (i IstioIngressGatewayArray) ToIstioIngressGatewayArrayOutputWithContext(ctx context.Context) IstioIngressGatewayArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioIngressGatewayArrayOutput) } -// Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. -func (o ManagedClusterAgentPoolProfileOutput) OsSKU() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OsSKU }).(pulumi.StringPtrOutput) +// Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`. +type IstioIngressGatewayOutput struct{ *pulumi.OutputState } + +func (IstioIngressGatewayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioIngressGateway)(nil)).Elem() } -// The operating system type. The default is Linux. -func (o ManagedClusterAgentPoolProfileOutput) OsType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OsType }).(pulumi.StringPtrOutput) +func (o IstioIngressGatewayOutput) ToIstioIngressGatewayOutput() IstioIngressGatewayOutput { + return o } -// If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} -func (o ManagedClusterAgentPoolProfileOutput) PodSubnetID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.PodSubnetID }).(pulumi.StringPtrOutput) +func (o IstioIngressGatewayOutput) ToIstioIngressGatewayOutputWithContext(ctx context.Context) IstioIngressGatewayOutput { + return o } -// When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded -func (o ManagedClusterAgentPoolProfileOutput) PowerState() PowerStatePtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *PowerState { return v.PowerState }).(PowerStatePtrOutput) +// Whether to enable the ingress gateway. +func (o IstioIngressGatewayOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v IstioIngressGateway) bool { return v.Enabled }).(pulumi.BoolOutput) } -// The ID for Proximity Placement Group. -func (o ManagedClusterAgentPoolProfileOutput) ProximityPlacementGroupID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ProximityPlacementGroupID }).(pulumi.StringPtrOutput) +// Mode of an ingress gateway. +func (o IstioIngressGatewayOutput) Mode() pulumi.StringOutput { + return o.ApplyT(func(v IstioIngressGateway) string { return v.Mode }).(pulumi.StringOutput) } -// This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. -func (o ManagedClusterAgentPoolProfileOutput) ScaleDownMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ScaleDownMode }).(pulumi.StringPtrOutput) +type IstioIngressGatewayArrayOutput struct{ *pulumi.OutputState } + +func (IstioIngressGatewayArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IstioIngressGateway)(nil)).Elem() } -// This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. -func (o ManagedClusterAgentPoolProfileOutput) ScaleSetEvictionPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ScaleSetEvictionPolicy }).(pulumi.StringPtrOutput) +func (o IstioIngressGatewayArrayOutput) ToIstioIngressGatewayArrayOutput() IstioIngressGatewayArrayOutput { + return o } -// The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. -func (o ManagedClusterAgentPoolProfileOutput) ScaleSetPriority() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ScaleSetPriority }).(pulumi.StringPtrOutput) +func (o IstioIngressGatewayArrayOutput) ToIstioIngressGatewayArrayOutputWithContext(ctx context.Context) IstioIngressGatewayArrayOutput { + return o } -// Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) -func (o ManagedClusterAgentPoolProfileOutput) SpotMaxPrice() pulumi.Float64PtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *float64 { return v.SpotMaxPrice }).(pulumi.Float64PtrOutput) +func (o IstioIngressGatewayArrayOutput) Index(i pulumi.IntInput) IstioIngressGatewayOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IstioIngressGateway { + return vs[0].([]IstioIngressGateway)[vs[1].(int)] + }).(IstioIngressGatewayOutput) } -// The tags to be persisted on the agent pool virtual machine scale set. -func (o ManagedClusterAgentPoolProfileOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +// Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`. +type IstioIngressGatewayResponse struct { + // Whether to enable the ingress gateway. + Enabled bool `pulumi:"enabled"` + // Mode of an ingress gateway. + Mode string `pulumi:"mode"` } -// The type of Agent Pool. -func (o ManagedClusterAgentPoolProfileOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.Type }).(pulumi.StringPtrOutput) +// Istio ingress gateway configuration. For now, we support up to one external ingress gateway named `aks-istio-ingressgateway-external` and one internal ingress gateway named `aks-istio-ingressgateway-internal`. +type IstioIngressGatewayResponseOutput struct{ *pulumi.OutputState } + +func (IstioIngressGatewayResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioIngressGatewayResponse)(nil)).Elem() } -// Settings for upgrading the agentpool -func (o ManagedClusterAgentPoolProfileOutput) UpgradeSettings() AgentPoolUpgradeSettingsPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *AgentPoolUpgradeSettings { return v.UpgradeSettings }).(AgentPoolUpgradeSettingsPtrOutput) +func (o IstioIngressGatewayResponseOutput) ToIstioIngressGatewayResponseOutput() IstioIngressGatewayResponseOutput { + return o } -// VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions -func (o ManagedClusterAgentPoolProfileOutput) VmSize() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.VmSize }).(pulumi.StringPtrOutput) +func (o IstioIngressGatewayResponseOutput) ToIstioIngressGatewayResponseOutputWithContext(ctx context.Context) IstioIngressGatewayResponseOutput { + return o } -// If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} -func (o ManagedClusterAgentPoolProfileOutput) VnetSubnetID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.VnetSubnetID }).(pulumi.StringPtrOutput) +// Whether to enable the ingress gateway. +func (o IstioIngressGatewayResponseOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v IstioIngressGatewayResponse) bool { return v.Enabled }).(pulumi.BoolOutput) } -// Determines the type of workload a node can run. -func (o ManagedClusterAgentPoolProfileOutput) WorkloadRuntime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.WorkloadRuntime }).(pulumi.StringPtrOutput) +// Mode of an ingress gateway. +func (o IstioIngressGatewayResponseOutput) Mode() pulumi.StringOutput { + return o.ApplyT(func(v IstioIngressGatewayResponse) string { return v.Mode }).(pulumi.StringOutput) } -type ManagedClusterAgentPoolProfileArrayOutput struct{ *pulumi.OutputState } +type IstioIngressGatewayResponseArrayOutput struct{ *pulumi.OutputState } -func (ManagedClusterAgentPoolProfileArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterAgentPoolProfile)(nil)).Elem() +func (IstioIngressGatewayResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]IstioIngressGatewayResponse)(nil)).Elem() } -func (o ManagedClusterAgentPoolProfileArrayOutput) ToManagedClusterAgentPoolProfileArrayOutput() ManagedClusterAgentPoolProfileArrayOutput { +func (o IstioIngressGatewayResponseArrayOutput) ToIstioIngressGatewayResponseArrayOutput() IstioIngressGatewayResponseArrayOutput { return o } -func (o ManagedClusterAgentPoolProfileArrayOutput) ToManagedClusterAgentPoolProfileArrayOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileArrayOutput { +func (o IstioIngressGatewayResponseArrayOutput) ToIstioIngressGatewayResponseArrayOutputWithContext(ctx context.Context) IstioIngressGatewayResponseArrayOutput { return o } -func (o ManagedClusterAgentPoolProfileArrayOutput) Index(i pulumi.IntInput) ManagedClusterAgentPoolProfileOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterAgentPoolProfile { - return vs[0].([]ManagedClusterAgentPoolProfile)[vs[1].(int)] - }).(ManagedClusterAgentPoolProfileOutput) +func (o IstioIngressGatewayResponseArrayOutput) Index(i pulumi.IntInput) IstioIngressGatewayResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) IstioIngressGatewayResponse { + return vs[0].([]IstioIngressGatewayResponse)[vs[1].(int)] + }).(IstioIngressGatewayResponseOutput) } -// Profile for the container service agent pool. -type ManagedClusterAgentPoolProfileResponse struct { - // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. - AvailabilityZones []string `pulumi:"availabilityZones"` - // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. - Count *int `pulumi:"count"` - // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. - CreationData *CreationDataResponse `pulumi:"creationData"` - // If orchestratorVersion is a fully specified version , this field will be exactly equal to it. If orchestratorVersion is , this field will contain the full version being used. - CurrentOrchestratorVersion string `pulumi:"currentOrchestratorVersion"` - // Whether to enable auto-scaler - EnableAutoScaling *bool `pulumi:"enableAutoScaling"` - // This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption - EnableEncryptionAtHost *bool `pulumi:"enableEncryptionAtHost"` - // See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. - EnableFIPS *bool `pulumi:"enableFIPS"` - // Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. - EnableNodePublicIP *bool `pulumi:"enableNodePublicIP"` - // Whether to enable UltraSSD - EnableUltraSSD *bool `pulumi:"enableUltraSSD"` - // GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. - GpuInstanceProfile *string `pulumi:"gpuInstanceProfile"` - // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). - HostGroupID *string `pulumi:"hostGroupID"` - // The Kubelet configuration on the agent pool nodes. - KubeletConfig *KubeletConfigResponse `pulumi:"kubeletConfig"` - // Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. - KubeletDiskType *string `pulumi:"kubeletDiskType"` - // The OS configuration of Linux agent nodes. - LinuxOSConfig *LinuxOSConfigResponse `pulumi:"linuxOSConfig"` - // The maximum number of nodes for auto-scaling - MaxCount *int `pulumi:"maxCount"` - // The maximum number of pods that can run on a node. - MaxPods *int `pulumi:"maxPods"` - // The minimum number of nodes for auto-scaling - MinCount *int `pulumi:"minCount"` - // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools - Mode *string `pulumi:"mode"` - // Windows agent pool names must be 6 characters or less. - Name string `pulumi:"name"` - // The version of node image - NodeImageVersion string `pulumi:"nodeImageVersion"` - // The node labels to be persisted across all nodes in agent pool. - NodeLabels map[string]string `pulumi:"nodeLabels"` - // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} - NodePublicIPPrefixID *string `pulumi:"nodePublicIPPrefixID"` - // The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. - NodeTaints []string `pulumi:"nodeTaints"` - // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). - OrchestratorVersion *string `pulumi:"orchestratorVersion"` - // OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. - OsDiskSizeGB *int `pulumi:"osDiskSizeGB"` - // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). - OsDiskType *string `pulumi:"osDiskType"` - // Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. - OsSKU *string `pulumi:"osSKU"` - // The operating system type. The default is Linux. - OsType *string `pulumi:"osType"` - // If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} - PodSubnetID *string `pulumi:"podSubnetID"` - // When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded - PowerState *PowerStateResponse `pulumi:"powerState"` - // The current deployment or provisioning state. - ProvisioningState string `pulumi:"provisioningState"` - // The ID for Proximity Placement Group. - ProximityPlacementGroupID *string `pulumi:"proximityPlacementGroupID"` - // This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. - ScaleDownMode *string `pulumi:"scaleDownMode"` - // This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. - ScaleSetEvictionPolicy *string `pulumi:"scaleSetEvictionPolicy"` - // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. - ScaleSetPriority *string `pulumi:"scaleSetPriority"` - // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) - SpotMaxPrice *float64 `pulumi:"spotMaxPrice"` - // The tags to be persisted on the agent pool virtual machine scale set. - Tags map[string]string `pulumi:"tags"` - // The type of Agent Pool. - Type *string `pulumi:"type"` - // Settings for upgrading the agentpool - UpgradeSettings *AgentPoolUpgradeSettingsResponse `pulumi:"upgradeSettings"` - // VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions - VmSize *string `pulumi:"vmSize"` - // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} - VnetSubnetID *string `pulumi:"vnetSubnetID"` - // Determines the type of workload a node can run. - WorkloadRuntime *string `pulumi:"workloadRuntime"` +// Plugin certificates information for Service Mesh. +type IstioPluginCertificateAuthority struct { + // Certificate chain object name in Azure Key Vault. + CertChainObjectName *string `pulumi:"certChainObjectName"` + // Intermediate certificate object name in Azure Key Vault. + CertObjectName *string `pulumi:"certObjectName"` + // Intermediate certificate private key object name in Azure Key Vault. + KeyObjectName *string `pulumi:"keyObjectName"` + // The resource ID of the Key Vault. + KeyVaultId *string `pulumi:"keyVaultId"` + // Root certificate object name in Azure Key Vault. + RootCertObjectName *string `pulumi:"rootCertObjectName"` } -// Profile for the container service agent pool. -type ManagedClusterAgentPoolProfileResponseOutput struct{ *pulumi.OutputState } +// IstioPluginCertificateAuthorityInput is an input type that accepts IstioPluginCertificateAuthorityArgs and IstioPluginCertificateAuthorityOutput values. +// You can construct a concrete instance of `IstioPluginCertificateAuthorityInput` via: +// +// IstioPluginCertificateAuthorityArgs{...} +type IstioPluginCertificateAuthorityInput interface { + pulumi.Input -func (ManagedClusterAgentPoolProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAgentPoolProfileResponse)(nil)).Elem() + ToIstioPluginCertificateAuthorityOutput() IstioPluginCertificateAuthorityOutput + ToIstioPluginCertificateAuthorityOutputWithContext(context.Context) IstioPluginCertificateAuthorityOutput } -func (o ManagedClusterAgentPoolProfileResponseOutput) ToManagedClusterAgentPoolProfileResponseOutput() ManagedClusterAgentPoolProfileResponseOutput { - return o +// Plugin certificates information for Service Mesh. +type IstioPluginCertificateAuthorityArgs struct { + // Certificate chain object name in Azure Key Vault. + CertChainObjectName pulumi.StringPtrInput `pulumi:"certChainObjectName"` + // Intermediate certificate object name in Azure Key Vault. + CertObjectName pulumi.StringPtrInput `pulumi:"certObjectName"` + // Intermediate certificate private key object name in Azure Key Vault. + KeyObjectName pulumi.StringPtrInput `pulumi:"keyObjectName"` + // The resource ID of the Key Vault. + KeyVaultId pulumi.StringPtrInput `pulumi:"keyVaultId"` + // Root certificate object name in Azure Key Vault. + RootCertObjectName pulumi.StringPtrInput `pulumi:"rootCertObjectName"` } -func (o ManagedClusterAgentPoolProfileResponseOutput) ToManagedClusterAgentPoolProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileResponseOutput { - return o +func (IstioPluginCertificateAuthorityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IstioPluginCertificateAuthority)(nil)).Elem() } -// The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. -func (o ManagedClusterAgentPoolProfileResponseOutput) AvailabilityZones() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) +func (i IstioPluginCertificateAuthorityArgs) ToIstioPluginCertificateAuthorityOutput() IstioPluginCertificateAuthorityOutput { + return i.ToIstioPluginCertificateAuthorityOutputWithContext(context.Background()) } -// Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. -func (o ManagedClusterAgentPoolProfileResponseOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.Count }).(pulumi.IntPtrOutput) +func (i IstioPluginCertificateAuthorityArgs) ToIstioPluginCertificateAuthorityOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioPluginCertificateAuthorityOutput) } -// CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. -func (o ManagedClusterAgentPoolProfileResponseOutput) CreationData() CreationDataResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *CreationDataResponse { return v.CreationData }).(CreationDataResponsePtrOutput) +func (i IstioPluginCertificateAuthorityArgs) ToIstioPluginCertificateAuthorityPtrOutput() IstioPluginCertificateAuthorityPtrOutput { + return i.ToIstioPluginCertificateAuthorityPtrOutputWithContext(context.Background()) } -// If orchestratorVersion is a fully specified version , this field will be exactly equal to it. If orchestratorVersion is , this field will contain the full version being used. -func (o ManagedClusterAgentPoolProfileResponseOutput) CurrentOrchestratorVersion() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.CurrentOrchestratorVersion }).(pulumi.StringOutput) +func (i IstioPluginCertificateAuthorityArgs) ToIstioPluginCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioPluginCertificateAuthorityOutput).ToIstioPluginCertificateAuthorityPtrOutputWithContext(ctx) } -// Whether to enable auto-scaler -func (o ManagedClusterAgentPoolProfileResponseOutput) EnableAutoScaling() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableAutoScaling }).(pulumi.BoolPtrOutput) -} +// IstioPluginCertificateAuthorityPtrInput is an input type that accepts IstioPluginCertificateAuthorityArgs, IstioPluginCertificateAuthorityPtr and IstioPluginCertificateAuthorityPtrOutput values. +// You can construct a concrete instance of `IstioPluginCertificateAuthorityPtrInput` via: +// +// IstioPluginCertificateAuthorityArgs{...} +// +// or: +// +// nil +type IstioPluginCertificateAuthorityPtrInput interface { + pulumi.Input -// This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption -func (o ManagedClusterAgentPoolProfileResponseOutput) EnableEncryptionAtHost() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableEncryptionAtHost }).(pulumi.BoolPtrOutput) + ToIstioPluginCertificateAuthorityPtrOutput() IstioPluginCertificateAuthorityPtrOutput + ToIstioPluginCertificateAuthorityPtrOutputWithContext(context.Context) IstioPluginCertificateAuthorityPtrOutput } -// See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. -func (o ManagedClusterAgentPoolProfileResponseOutput) EnableFIPS() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableFIPS }).(pulumi.BoolPtrOutput) -} +type istioPluginCertificateAuthorityPtrType IstioPluginCertificateAuthorityArgs -// Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. -func (o ManagedClusterAgentPoolProfileResponseOutput) EnableNodePublicIP() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableNodePublicIP }).(pulumi.BoolPtrOutput) +func IstioPluginCertificateAuthorityPtr(v *IstioPluginCertificateAuthorityArgs) IstioPluginCertificateAuthorityPtrInput { + return (*istioPluginCertificateAuthorityPtrType)(v) } -// Whether to enable UltraSSD -func (o ManagedClusterAgentPoolProfileResponseOutput) EnableUltraSSD() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableUltraSSD }).(pulumi.BoolPtrOutput) +func (*istioPluginCertificateAuthorityPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IstioPluginCertificateAuthority)(nil)).Elem() } -// GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. -func (o ManagedClusterAgentPoolProfileResponseOutput) GpuInstanceProfile() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.GpuInstanceProfile }).(pulumi.StringPtrOutput) +func (i *istioPluginCertificateAuthorityPtrType) ToIstioPluginCertificateAuthorityPtrOutput() IstioPluginCertificateAuthorityPtrOutput { + return i.ToIstioPluginCertificateAuthorityPtrOutputWithContext(context.Background()) } -// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). -func (o ManagedClusterAgentPoolProfileResponseOutput) HostGroupID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.HostGroupID }).(pulumi.StringPtrOutput) +func (i *istioPluginCertificateAuthorityPtrType) ToIstioPluginCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioPluginCertificateAuthorityPtrOutput) } -// The Kubelet configuration on the agent pool nodes. -func (o ManagedClusterAgentPoolProfileResponseOutput) KubeletConfig() KubeletConfigResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *KubeletConfigResponse { return v.KubeletConfig }).(KubeletConfigResponsePtrOutput) +// Plugin certificates information for Service Mesh. +type IstioPluginCertificateAuthorityOutput struct{ *pulumi.OutputState } + +func (IstioPluginCertificateAuthorityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioPluginCertificateAuthority)(nil)).Elem() } -// Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. -func (o ManagedClusterAgentPoolProfileResponseOutput) KubeletDiskType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.KubeletDiskType }).(pulumi.StringPtrOutput) +func (o IstioPluginCertificateAuthorityOutput) ToIstioPluginCertificateAuthorityOutput() IstioPluginCertificateAuthorityOutput { + return o } -// The OS configuration of Linux agent nodes. -func (o ManagedClusterAgentPoolProfileResponseOutput) LinuxOSConfig() LinuxOSConfigResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *LinuxOSConfigResponse { return v.LinuxOSConfig }).(LinuxOSConfigResponsePtrOutput) +func (o IstioPluginCertificateAuthorityOutput) ToIstioPluginCertificateAuthorityOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityOutput { + return o } -// The maximum number of nodes for auto-scaling -func (o ManagedClusterAgentPoolProfileResponseOutput) MaxCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.MaxCount }).(pulumi.IntPtrOutput) +func (o IstioPluginCertificateAuthorityOutput) ToIstioPluginCertificateAuthorityPtrOutput() IstioPluginCertificateAuthorityPtrOutput { + return o.ToIstioPluginCertificateAuthorityPtrOutputWithContext(context.Background()) } -// The maximum number of pods that can run on a node. -func (o ManagedClusterAgentPoolProfileResponseOutput) MaxPods() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.MaxPods }).(pulumi.IntPtrOutput) +func (o IstioPluginCertificateAuthorityOutput) ToIstioPluginCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IstioPluginCertificateAuthority) *IstioPluginCertificateAuthority { + return &v + }).(IstioPluginCertificateAuthorityPtrOutput) } -// The minimum number of nodes for auto-scaling -func (o ManagedClusterAgentPoolProfileResponseOutput) MinCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.MinCount }).(pulumi.IntPtrOutput) +// Certificate chain object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityOutput) CertChainObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthority) *string { return v.CertChainObjectName }).(pulumi.StringPtrOutput) } -// A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools -func (o ManagedClusterAgentPoolProfileResponseOutput) Mode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.Mode }).(pulumi.StringPtrOutput) +// Intermediate certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityOutput) CertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthority) *string { return v.CertObjectName }).(pulumi.StringPtrOutput) } -// Windows agent pool names must be 6 characters or less. -func (o ManagedClusterAgentPoolProfileResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.Name }).(pulumi.StringOutput) +// Intermediate certificate private key object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityOutput) KeyObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthority) *string { return v.KeyObjectName }).(pulumi.StringPtrOutput) } -// The version of node image -func (o ManagedClusterAgentPoolProfileResponseOutput) NodeImageVersion() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.NodeImageVersion }).(pulumi.StringOutput) +// The resource ID of the Key Vault. +func (o IstioPluginCertificateAuthorityOutput) KeyVaultId() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthority) *string { return v.KeyVaultId }).(pulumi.StringPtrOutput) } -// The node labels to be persisted across all nodes in agent pool. -func (o ManagedClusterAgentPoolProfileResponseOutput) NodeLabels() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) map[string]string { return v.NodeLabels }).(pulumi.StringMapOutput) +// Root certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityOutput) RootCertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthority) *string { return v.RootCertObjectName }).(pulumi.StringPtrOutput) } -// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} -func (o ManagedClusterAgentPoolProfileResponseOutput) NodePublicIPPrefixID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.NodePublicIPPrefixID }).(pulumi.StringPtrOutput) +type IstioPluginCertificateAuthorityPtrOutput struct{ *pulumi.OutputState } + +func (IstioPluginCertificateAuthorityPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioPluginCertificateAuthority)(nil)).Elem() } -// The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. -func (o ManagedClusterAgentPoolProfileResponseOutput) NodeTaints() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) []string { return v.NodeTaints }).(pulumi.StringArrayOutput) +func (o IstioPluginCertificateAuthorityPtrOutput) ToIstioPluginCertificateAuthorityPtrOutput() IstioPluginCertificateAuthorityPtrOutput { + return o } -// Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). -func (o ManagedClusterAgentPoolProfileResponseOutput) OrchestratorVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OrchestratorVersion }).(pulumi.StringPtrOutput) +func (o IstioPluginCertificateAuthorityPtrOutput) ToIstioPluginCertificateAuthorityPtrOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityPtrOutput { + return o } -// OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. -func (o ManagedClusterAgentPoolProfileResponseOutput) OsDiskSizeGB() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.OsDiskSizeGB }).(pulumi.IntPtrOutput) +func (o IstioPluginCertificateAuthorityPtrOutput) Elem() IstioPluginCertificateAuthorityOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthority) IstioPluginCertificateAuthority { + if v != nil { + return *v + } + var ret IstioPluginCertificateAuthority + return ret + }).(IstioPluginCertificateAuthorityOutput) } -// The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). -func (o ManagedClusterAgentPoolProfileResponseOutput) OsDiskType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OsDiskType }).(pulumi.StringPtrOutput) +// Certificate chain object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityPtrOutput) CertChainObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthority) *string { + if v == nil { + return nil + } + return v.CertChainObjectName + }).(pulumi.StringPtrOutput) } -// Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. -func (o ManagedClusterAgentPoolProfileResponseOutput) OsSKU() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OsSKU }).(pulumi.StringPtrOutput) +// Intermediate certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityPtrOutput) CertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthority) *string { + if v == nil { + return nil + } + return v.CertObjectName + }).(pulumi.StringPtrOutput) } -// The operating system type. The default is Linux. -func (o ManagedClusterAgentPoolProfileResponseOutput) OsType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OsType }).(pulumi.StringPtrOutput) +// Intermediate certificate private key object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityPtrOutput) KeyObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthority) *string { + if v == nil { + return nil + } + return v.KeyObjectName + }).(pulumi.StringPtrOutput) } -// If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} -func (o ManagedClusterAgentPoolProfileResponseOutput) PodSubnetID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.PodSubnetID }).(pulumi.StringPtrOutput) +// The resource ID of the Key Vault. +func (o IstioPluginCertificateAuthorityPtrOutput) KeyVaultId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthority) *string { + if v == nil { + return nil + } + return v.KeyVaultId + }).(pulumi.StringPtrOutput) } -// When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded -func (o ManagedClusterAgentPoolProfileResponseOutput) PowerState() PowerStateResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *PowerStateResponse { return v.PowerState }).(PowerStateResponsePtrOutput) +// Root certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityPtrOutput) RootCertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthority) *string { + if v == nil { + return nil + } + return v.RootCertObjectName + }).(pulumi.StringPtrOutput) } -// The current deployment or provisioning state. -func (o ManagedClusterAgentPoolProfileResponseOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +// Plugin certificates information for Service Mesh. +type IstioPluginCertificateAuthorityResponse struct { + // Certificate chain object name in Azure Key Vault. + CertChainObjectName *string `pulumi:"certChainObjectName"` + // Intermediate certificate object name in Azure Key Vault. + CertObjectName *string `pulumi:"certObjectName"` + // Intermediate certificate private key object name in Azure Key Vault. + KeyObjectName *string `pulumi:"keyObjectName"` + // The resource ID of the Key Vault. + KeyVaultId *string `pulumi:"keyVaultId"` + // Root certificate object name in Azure Key Vault. + RootCertObjectName *string `pulumi:"rootCertObjectName"` } -// The ID for Proximity Placement Group. -func (o ManagedClusterAgentPoolProfileResponseOutput) ProximityPlacementGroupID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ProximityPlacementGroupID }).(pulumi.StringPtrOutput) +// Plugin certificates information for Service Mesh. +type IstioPluginCertificateAuthorityResponseOutput struct{ *pulumi.OutputState } + +func (IstioPluginCertificateAuthorityResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioPluginCertificateAuthorityResponse)(nil)).Elem() } -// This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. -func (o ManagedClusterAgentPoolProfileResponseOutput) ScaleDownMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ScaleDownMode }).(pulumi.StringPtrOutput) +func (o IstioPluginCertificateAuthorityResponseOutput) ToIstioPluginCertificateAuthorityResponseOutput() IstioPluginCertificateAuthorityResponseOutput { + return o } -// This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. -func (o ManagedClusterAgentPoolProfileResponseOutput) ScaleSetEvictionPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ScaleSetEvictionPolicy }).(pulumi.StringPtrOutput) +func (o IstioPluginCertificateAuthorityResponseOutput) ToIstioPluginCertificateAuthorityResponseOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityResponseOutput { + return o } -// The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. -func (o ManagedClusterAgentPoolProfileResponseOutput) ScaleSetPriority() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ScaleSetPriority }).(pulumi.StringPtrOutput) +// Certificate chain object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponseOutput) CertChainObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthorityResponse) *string { return v.CertChainObjectName }).(pulumi.StringPtrOutput) } -// Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) -func (o ManagedClusterAgentPoolProfileResponseOutput) SpotMaxPrice() pulumi.Float64PtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *float64 { return v.SpotMaxPrice }).(pulumi.Float64PtrOutput) +// Intermediate certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponseOutput) CertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthorityResponse) *string { return v.CertObjectName }).(pulumi.StringPtrOutput) } -// The tags to be persisted on the agent pool virtual machine scale set. -func (o ManagedClusterAgentPoolProfileResponseOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +// Intermediate certificate private key object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponseOutput) KeyObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthorityResponse) *string { return v.KeyObjectName }).(pulumi.StringPtrOutput) } -// The type of Agent Pool. -func (o ManagedClusterAgentPoolProfileResponseOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +// The resource ID of the Key Vault. +func (o IstioPluginCertificateAuthorityResponseOutput) KeyVaultId() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthorityResponse) *string { return v.KeyVaultId }).(pulumi.StringPtrOutput) } -// Settings for upgrading the agentpool -func (o ManagedClusterAgentPoolProfileResponseOutput) UpgradeSettings() AgentPoolUpgradeSettingsResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *AgentPoolUpgradeSettingsResponse { - return v.UpgradeSettings - }).(AgentPoolUpgradeSettingsResponsePtrOutput) +// Root certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponseOutput) RootCertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IstioPluginCertificateAuthorityResponse) *string { return v.RootCertObjectName }).(pulumi.StringPtrOutput) } -// VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions -func (o ManagedClusterAgentPoolProfileResponseOutput) VmSize() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.VmSize }).(pulumi.StringPtrOutput) +type IstioPluginCertificateAuthorityResponsePtrOutput struct{ *pulumi.OutputState } + +func (IstioPluginCertificateAuthorityResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioPluginCertificateAuthorityResponse)(nil)).Elem() } -// If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} -func (o ManagedClusterAgentPoolProfileResponseOutput) VnetSubnetID() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.VnetSubnetID }).(pulumi.StringPtrOutput) +func (o IstioPluginCertificateAuthorityResponsePtrOutput) ToIstioPluginCertificateAuthorityResponsePtrOutput() IstioPluginCertificateAuthorityResponsePtrOutput { + return o } -// Determines the type of workload a node can run. -func (o ManagedClusterAgentPoolProfileResponseOutput) WorkloadRuntime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.WorkloadRuntime }).(pulumi.StringPtrOutput) +func (o IstioPluginCertificateAuthorityResponsePtrOutput) ToIstioPluginCertificateAuthorityResponsePtrOutputWithContext(ctx context.Context) IstioPluginCertificateAuthorityResponsePtrOutput { + return o } -type ManagedClusterAgentPoolProfileResponseArrayOutput struct{ *pulumi.OutputState } +func (o IstioPluginCertificateAuthorityResponsePtrOutput) Elem() IstioPluginCertificateAuthorityResponseOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthorityResponse) IstioPluginCertificateAuthorityResponse { + if v != nil { + return *v + } + var ret IstioPluginCertificateAuthorityResponse + return ret + }).(IstioPluginCertificateAuthorityResponseOutput) +} -func (ManagedClusterAgentPoolProfileResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterAgentPoolProfileResponse)(nil)).Elem() +// Certificate chain object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponsePtrOutput) CertChainObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthorityResponse) *string { + if v == nil { + return nil + } + return v.CertChainObjectName + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAgentPoolProfileResponseArrayOutput) ToManagedClusterAgentPoolProfileResponseArrayOutput() ManagedClusterAgentPoolProfileResponseArrayOutput { - return o +// Intermediate certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponsePtrOutput) CertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthorityResponse) *string { + if v == nil { + return nil + } + return v.CertObjectName + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAgentPoolProfileResponseArrayOutput) ToManagedClusterAgentPoolProfileResponseArrayOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileResponseArrayOutput { - return o +// Intermediate certificate private key object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponsePtrOutput) KeyObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthorityResponse) *string { + if v == nil { + return nil + } + return v.KeyObjectName + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAgentPoolProfileResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterAgentPoolProfileResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterAgentPoolProfileResponse { - return vs[0].([]ManagedClusterAgentPoolProfileResponse)[vs[1].(int)] - }).(ManagedClusterAgentPoolProfileResponseOutput) +// The resource ID of the Key Vault. +func (o IstioPluginCertificateAuthorityResponsePtrOutput) KeyVaultId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthorityResponse) *string { + if v == nil { + return nil + } + return v.KeyVaultId + }).(pulumi.StringPtrOutput) } -// Auto upgrade profile for a managed cluster. -type ManagedClusterAutoUpgradeProfile struct { - // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). - UpgradeChannel *string `pulumi:"upgradeChannel"` +// Root certificate object name in Azure Key Vault. +func (o IstioPluginCertificateAuthorityResponsePtrOutput) RootCertObjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IstioPluginCertificateAuthorityResponse) *string { + if v == nil { + return nil + } + return v.RootCertObjectName + }).(pulumi.StringPtrOutput) } -// ManagedClusterAutoUpgradeProfileInput is an input type that accepts ManagedClusterAutoUpgradeProfileArgs and ManagedClusterAutoUpgradeProfileOutput values. -// You can construct a concrete instance of `ManagedClusterAutoUpgradeProfileInput` via: +// Istio service mesh configuration. +type IstioServiceMesh struct { + // Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca + CertificateAuthority *IstioCertificateAuthority `pulumi:"certificateAuthority"` + // Istio components configuration. + Components *IstioComponents `pulumi:"components"` + // The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade + Revisions []string `pulumi:"revisions"` +} + +// IstioServiceMeshInput is an input type that accepts IstioServiceMeshArgs and IstioServiceMeshOutput values. +// You can construct a concrete instance of `IstioServiceMeshInput` via: // -// ManagedClusterAutoUpgradeProfileArgs{...} -type ManagedClusterAutoUpgradeProfileInput interface { +// IstioServiceMeshArgs{...} +type IstioServiceMeshInput interface { pulumi.Input - ToManagedClusterAutoUpgradeProfileOutput() ManagedClusterAutoUpgradeProfileOutput - ToManagedClusterAutoUpgradeProfileOutputWithContext(context.Context) ManagedClusterAutoUpgradeProfileOutput + ToIstioServiceMeshOutput() IstioServiceMeshOutput + ToIstioServiceMeshOutputWithContext(context.Context) IstioServiceMeshOutput } -// Auto upgrade profile for a managed cluster. -type ManagedClusterAutoUpgradeProfileArgs struct { - // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). - UpgradeChannel pulumi.StringPtrInput `pulumi:"upgradeChannel"` +// Istio service mesh configuration. +type IstioServiceMeshArgs struct { + // Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca + CertificateAuthority IstioCertificateAuthorityPtrInput `pulumi:"certificateAuthority"` + // Istio components configuration. + Components IstioComponentsPtrInput `pulumi:"components"` + // The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade + Revisions pulumi.StringArrayInput `pulumi:"revisions"` } -func (ManagedClusterAutoUpgradeProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAutoUpgradeProfile)(nil)).Elem() +func (IstioServiceMeshArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IstioServiceMesh)(nil)).Elem() } -func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfileOutput() ManagedClusterAutoUpgradeProfileOutput { - return i.ToManagedClusterAutoUpgradeProfileOutputWithContext(context.Background()) +func (i IstioServiceMeshArgs) ToIstioServiceMeshOutput() IstioServiceMeshOutput { + return i.ToIstioServiceMeshOutputWithContext(context.Background()) } -func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfileOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAutoUpgradeProfileOutput) +func (i IstioServiceMeshArgs) ToIstioServiceMeshOutputWithContext(ctx context.Context) IstioServiceMeshOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioServiceMeshOutput) } -func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { - return i.ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Background()) +func (i IstioServiceMeshArgs) ToIstioServiceMeshPtrOutput() IstioServiceMeshPtrOutput { + return i.ToIstioServiceMeshPtrOutputWithContext(context.Background()) } -func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAutoUpgradeProfileOutput).ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx) +func (i IstioServiceMeshArgs) ToIstioServiceMeshPtrOutputWithContext(ctx context.Context) IstioServiceMeshPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioServiceMeshOutput).ToIstioServiceMeshPtrOutputWithContext(ctx) } -// ManagedClusterAutoUpgradeProfilePtrInput is an input type that accepts ManagedClusterAutoUpgradeProfileArgs, ManagedClusterAutoUpgradeProfilePtr and ManagedClusterAutoUpgradeProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterAutoUpgradeProfilePtrInput` via: +// IstioServiceMeshPtrInput is an input type that accepts IstioServiceMeshArgs, IstioServiceMeshPtr and IstioServiceMeshPtrOutput values. +// You can construct a concrete instance of `IstioServiceMeshPtrInput` via: // -// ManagedClusterAutoUpgradeProfileArgs{...} +// IstioServiceMeshArgs{...} // // or: // // nil -type ManagedClusterAutoUpgradeProfilePtrInput interface { +type IstioServiceMeshPtrInput interface { pulumi.Input - ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput - ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Context) ManagedClusterAutoUpgradeProfilePtrOutput + ToIstioServiceMeshPtrOutput() IstioServiceMeshPtrOutput + ToIstioServiceMeshPtrOutputWithContext(context.Context) IstioServiceMeshPtrOutput } -type managedClusterAutoUpgradeProfilePtrType ManagedClusterAutoUpgradeProfileArgs +type istioServiceMeshPtrType IstioServiceMeshArgs -func ManagedClusterAutoUpgradeProfilePtr(v *ManagedClusterAutoUpgradeProfileArgs) ManagedClusterAutoUpgradeProfilePtrInput { - return (*managedClusterAutoUpgradeProfilePtrType)(v) +func IstioServiceMeshPtr(v *IstioServiceMeshArgs) IstioServiceMeshPtrInput { + return (*istioServiceMeshPtrType)(v) } -func (*managedClusterAutoUpgradeProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAutoUpgradeProfile)(nil)).Elem() +func (*istioServiceMeshPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IstioServiceMesh)(nil)).Elem() } -func (i *managedClusterAutoUpgradeProfilePtrType) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { - return i.ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Background()) +func (i *istioServiceMeshPtrType) ToIstioServiceMeshPtrOutput() IstioServiceMeshPtrOutput { + return i.ToIstioServiceMeshPtrOutputWithContext(context.Background()) } -func (i *managedClusterAutoUpgradeProfilePtrType) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAutoUpgradeProfilePtrOutput) +func (i *istioServiceMeshPtrType) ToIstioServiceMeshPtrOutputWithContext(ctx context.Context) IstioServiceMeshPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IstioServiceMeshPtrOutput) } -// Auto upgrade profile for a managed cluster. -type ManagedClusterAutoUpgradeProfileOutput struct{ *pulumi.OutputState } +// Istio service mesh configuration. +type IstioServiceMeshOutput struct{ *pulumi.OutputState } -func (ManagedClusterAutoUpgradeProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAutoUpgradeProfile)(nil)).Elem() +func (IstioServiceMeshOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioServiceMesh)(nil)).Elem() } -func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfileOutput() ManagedClusterAutoUpgradeProfileOutput { +func (o IstioServiceMeshOutput) ToIstioServiceMeshOutput() IstioServiceMeshOutput { return o } -func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfileOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileOutput { +func (o IstioServiceMeshOutput) ToIstioServiceMeshOutputWithContext(ctx context.Context) IstioServiceMeshOutput { return o } -func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { - return o.ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Background()) +func (o IstioServiceMeshOutput) ToIstioServiceMeshPtrOutput() IstioServiceMeshPtrOutput { + return o.ToIstioServiceMeshPtrOutputWithContext(context.Background()) } -func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAutoUpgradeProfile) *ManagedClusterAutoUpgradeProfile { +func (o IstioServiceMeshOutput) ToIstioServiceMeshPtrOutputWithContext(ctx context.Context) IstioServiceMeshPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IstioServiceMesh) *IstioServiceMesh { return &v - }).(ManagedClusterAutoUpgradeProfilePtrOutput) + }).(IstioServiceMeshPtrOutput) } -// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). -func (o ManagedClusterAutoUpgradeProfileOutput) UpgradeChannel() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAutoUpgradeProfile) *string { return v.UpgradeChannel }).(pulumi.StringPtrOutput) +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +func (o IstioServiceMeshOutput) CertificateAuthority() IstioCertificateAuthorityPtrOutput { + return o.ApplyT(func(v IstioServiceMesh) *IstioCertificateAuthority { return v.CertificateAuthority }).(IstioCertificateAuthorityPtrOutput) } -type ManagedClusterAutoUpgradeProfilePtrOutput struct{ *pulumi.OutputState } +// Istio components configuration. +func (o IstioServiceMeshOutput) Components() IstioComponentsPtrOutput { + return o.ApplyT(func(v IstioServiceMesh) *IstioComponents { return v.Components }).(IstioComponentsPtrOutput) +} -func (ManagedClusterAutoUpgradeProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAutoUpgradeProfile)(nil)).Elem() +// The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade +func (o IstioServiceMeshOutput) Revisions() pulumi.StringArrayOutput { + return o.ApplyT(func(v IstioServiceMesh) []string { return v.Revisions }).(pulumi.StringArrayOutput) } -func (o ManagedClusterAutoUpgradeProfilePtrOutput) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { +type IstioServiceMeshPtrOutput struct{ *pulumi.OutputState } + +func (IstioServiceMeshPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioServiceMesh)(nil)).Elem() +} + +func (o IstioServiceMeshPtrOutput) ToIstioServiceMeshPtrOutput() IstioServiceMeshPtrOutput { return o } -func (o ManagedClusterAutoUpgradeProfilePtrOutput) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { +func (o IstioServiceMeshPtrOutput) ToIstioServiceMeshPtrOutputWithContext(ctx context.Context) IstioServiceMeshPtrOutput { return o } -func (o ManagedClusterAutoUpgradeProfilePtrOutput) Elem() ManagedClusterAutoUpgradeProfileOutput { - return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfile) ManagedClusterAutoUpgradeProfile { +func (o IstioServiceMeshPtrOutput) Elem() IstioServiceMeshOutput { + return o.ApplyT(func(v *IstioServiceMesh) IstioServiceMesh { if v != nil { return *v } - var ret ManagedClusterAutoUpgradeProfile + var ret IstioServiceMesh return ret - }).(ManagedClusterAutoUpgradeProfileOutput) + }).(IstioServiceMeshOutput) } -// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). -func (o ManagedClusterAutoUpgradeProfilePtrOutput) UpgradeChannel() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfile) *string { +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +func (o IstioServiceMeshPtrOutput) CertificateAuthority() IstioCertificateAuthorityPtrOutput { + return o.ApplyT(func(v *IstioServiceMesh) *IstioCertificateAuthority { if v == nil { return nil } - return v.UpgradeChannel - }).(pulumi.StringPtrOutput) + return v.CertificateAuthority + }).(IstioCertificateAuthorityPtrOutput) } -// Auto upgrade profile for a managed cluster. -type ManagedClusterAutoUpgradeProfileResponse struct { - // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). - UpgradeChannel *string `pulumi:"upgradeChannel"` +// Istio components configuration. +func (o IstioServiceMeshPtrOutput) Components() IstioComponentsPtrOutput { + return o.ApplyT(func(v *IstioServiceMesh) *IstioComponents { + if v == nil { + return nil + } + return v.Components + }).(IstioComponentsPtrOutput) } -// Auto upgrade profile for a managed cluster. -type ManagedClusterAutoUpgradeProfileResponseOutput struct{ *pulumi.OutputState } +// The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade +func (o IstioServiceMeshPtrOutput) Revisions() pulumi.StringArrayOutput { + return o.ApplyT(func(v *IstioServiceMesh) []string { + if v == nil { + return nil + } + return v.Revisions + }).(pulumi.StringArrayOutput) +} -func (ManagedClusterAutoUpgradeProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAutoUpgradeProfileResponse)(nil)).Elem() +// Istio service mesh configuration. +type IstioServiceMeshResponse struct { + // Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca + CertificateAuthority *IstioCertificateAuthorityResponse `pulumi:"certificateAuthority"` + // Istio components configuration. + Components *IstioComponentsResponse `pulumi:"components"` + // The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade + Revisions []string `pulumi:"revisions"` } -func (o ManagedClusterAutoUpgradeProfileResponseOutput) ToManagedClusterAutoUpgradeProfileResponseOutput() ManagedClusterAutoUpgradeProfileResponseOutput { +// Istio service mesh configuration. +type IstioServiceMeshResponseOutput struct{ *pulumi.OutputState } + +func (IstioServiceMeshResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IstioServiceMeshResponse)(nil)).Elem() +} + +func (o IstioServiceMeshResponseOutput) ToIstioServiceMeshResponseOutput() IstioServiceMeshResponseOutput { return o } -func (o ManagedClusterAutoUpgradeProfileResponseOutput) ToManagedClusterAutoUpgradeProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileResponseOutput { +func (o IstioServiceMeshResponseOutput) ToIstioServiceMeshResponseOutputWithContext(ctx context.Context) IstioServiceMeshResponseOutput { return o } -// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). -func (o ManagedClusterAutoUpgradeProfileResponseOutput) UpgradeChannel() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAutoUpgradeProfileResponse) *string { return v.UpgradeChannel }).(pulumi.StringPtrOutput) +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +func (o IstioServiceMeshResponseOutput) CertificateAuthority() IstioCertificateAuthorityResponsePtrOutput { + return o.ApplyT(func(v IstioServiceMeshResponse) *IstioCertificateAuthorityResponse { return v.CertificateAuthority }).(IstioCertificateAuthorityResponsePtrOutput) } -type ManagedClusterAutoUpgradeProfileResponsePtrOutput struct{ *pulumi.OutputState } +// Istio components configuration. +func (o IstioServiceMeshResponseOutput) Components() IstioComponentsResponsePtrOutput { + return o.ApplyT(func(v IstioServiceMeshResponse) *IstioComponentsResponse { return v.Components }).(IstioComponentsResponsePtrOutput) +} -func (ManagedClusterAutoUpgradeProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAutoUpgradeProfileResponse)(nil)).Elem() +// The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade +func (o IstioServiceMeshResponseOutput) Revisions() pulumi.StringArrayOutput { + return o.ApplyT(func(v IstioServiceMeshResponse) []string { return v.Revisions }).(pulumi.StringArrayOutput) } -func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) ToManagedClusterAutoUpgradeProfileResponsePtrOutput() ManagedClusterAutoUpgradeProfileResponsePtrOutput { +type IstioServiceMeshResponsePtrOutput struct{ *pulumi.OutputState } + +func (IstioServiceMeshResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IstioServiceMeshResponse)(nil)).Elem() +} + +func (o IstioServiceMeshResponsePtrOutput) ToIstioServiceMeshResponsePtrOutput() IstioServiceMeshResponsePtrOutput { return o } -func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) ToManagedClusterAutoUpgradeProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileResponsePtrOutput { +func (o IstioServiceMeshResponsePtrOutput) ToIstioServiceMeshResponsePtrOutputWithContext(ctx context.Context) IstioServiceMeshResponsePtrOutput { return o } -func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) Elem() ManagedClusterAutoUpgradeProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfileResponse) ManagedClusterAutoUpgradeProfileResponse { +func (o IstioServiceMeshResponsePtrOutput) Elem() IstioServiceMeshResponseOutput { + return o.ApplyT(func(v *IstioServiceMeshResponse) IstioServiceMeshResponse { if v != nil { return *v } - var ret ManagedClusterAutoUpgradeProfileResponse + var ret IstioServiceMeshResponse return ret - }).(ManagedClusterAutoUpgradeProfileResponseOutput) + }).(IstioServiceMeshResponseOutput) } -// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). -func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) UpgradeChannel() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfileResponse) *string { +// Istio Service Mesh Certificate Authority (CA) configuration. For now, we only support plugin certificates as described here https://aka.ms/asm-plugin-ca +func (o IstioServiceMeshResponsePtrOutput) CertificateAuthority() IstioCertificateAuthorityResponsePtrOutput { + return o.ApplyT(func(v *IstioServiceMeshResponse) *IstioCertificateAuthorityResponse { if v == nil { return nil } - return v.UpgradeChannel - }).(pulumi.StringPtrOutput) + return v.CertificateAuthority + }).(IstioCertificateAuthorityResponsePtrOutput) } -// Azure Monitor addon profiles for monitoring the managed cluster. -type ManagedClusterAzureMonitorProfile struct { - // Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. - Metrics *ManagedClusterAzureMonitorProfileMetrics `pulumi:"metrics"` +// Istio components configuration. +func (o IstioServiceMeshResponsePtrOutput) Components() IstioComponentsResponsePtrOutput { + return o.ApplyT(func(v *IstioServiceMeshResponse) *IstioComponentsResponse { + if v == nil { + return nil + } + return v.Components + }).(IstioComponentsResponsePtrOutput) } -// ManagedClusterAzureMonitorProfileInput is an input type that accepts ManagedClusterAzureMonitorProfileArgs and ManagedClusterAzureMonitorProfileOutput values. -// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileInput` via: +// The list of revisions of the Istio control plane. When an upgrade is not in progress, this holds one value. When canary upgrade is in progress, this can only hold two consecutive values. For more information, see: https://learn.microsoft.com/en-us/azure/aks/istio-upgrade +func (o IstioServiceMeshResponsePtrOutput) Revisions() pulumi.StringArrayOutput { + return o.ApplyT(func(v *IstioServiceMeshResponse) []string { + if v == nil { + return nil + } + return v.Revisions + }).(pulumi.StringArrayOutput) +} + +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type KubeletConfig struct { + // Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). + AllowedUnsafeSysctls []string `pulumi:"allowedUnsafeSysctls"` + // The maximum number of container log files that can be present for a container. The number must be ≥ 2. + ContainerLogMaxFiles *int `pulumi:"containerLogMaxFiles"` + // The maximum size (e.g. 10Mi) of container log file before it is rotated. + ContainerLogMaxSizeMB *int `pulumi:"containerLogMaxSizeMB"` + // The default is true. + CpuCfsQuota *bool `pulumi:"cpuCfsQuota"` + // The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. + CpuCfsQuotaPeriod *string `pulumi:"cpuCfsQuotaPeriod"` + // The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. + CpuManagerPolicy *string `pulumi:"cpuManagerPolicy"` + // If set to true it will make the Kubelet fail to start if swap is enabled on the node. + FailSwapOn *bool `pulumi:"failSwapOn"` + // To disable image garbage collection, set to 100. The default is 85% + ImageGcHighThreshold *int `pulumi:"imageGcHighThreshold"` + // This cannot be set higher than imageGcHighThreshold. The default is 80% + ImageGcLowThreshold *int `pulumi:"imageGcLowThreshold"` + // The maximum number of processes per pod. + PodMaxPids *int `pulumi:"podMaxPids"` + // For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. + TopologyManagerPolicy *string `pulumi:"topologyManagerPolicy"` +} + +// KubeletConfigInput is an input type that accepts KubeletConfigArgs and KubeletConfigOutput values. +// You can construct a concrete instance of `KubeletConfigInput` via: // -// ManagedClusterAzureMonitorProfileArgs{...} -type ManagedClusterAzureMonitorProfileInput interface { +// KubeletConfigArgs{...} +type KubeletConfigInput interface { pulumi.Input - ToManagedClusterAzureMonitorProfileOutput() ManagedClusterAzureMonitorProfileOutput - ToManagedClusterAzureMonitorProfileOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileOutput + ToKubeletConfigOutput() KubeletConfigOutput + ToKubeletConfigOutputWithContext(context.Context) KubeletConfigOutput } -// Azure Monitor addon profiles for monitoring the managed cluster. -type ManagedClusterAzureMonitorProfileArgs struct { - // Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. - Metrics ManagedClusterAzureMonitorProfileMetricsPtrInput `pulumi:"metrics"` +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type KubeletConfigArgs struct { + // Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). + AllowedUnsafeSysctls pulumi.StringArrayInput `pulumi:"allowedUnsafeSysctls"` + // The maximum number of container log files that can be present for a container. The number must be ≥ 2. + ContainerLogMaxFiles pulumi.IntPtrInput `pulumi:"containerLogMaxFiles"` + // The maximum size (e.g. 10Mi) of container log file before it is rotated. + ContainerLogMaxSizeMB pulumi.IntPtrInput `pulumi:"containerLogMaxSizeMB"` + // The default is true. + CpuCfsQuota pulumi.BoolPtrInput `pulumi:"cpuCfsQuota"` + // The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. + CpuCfsQuotaPeriod pulumi.StringPtrInput `pulumi:"cpuCfsQuotaPeriod"` + // The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. + CpuManagerPolicy pulumi.StringPtrInput `pulumi:"cpuManagerPolicy"` + // If set to true it will make the Kubelet fail to start if swap is enabled on the node. + FailSwapOn pulumi.BoolPtrInput `pulumi:"failSwapOn"` + // To disable image garbage collection, set to 100. The default is 85% + ImageGcHighThreshold pulumi.IntPtrInput `pulumi:"imageGcHighThreshold"` + // This cannot be set higher than imageGcHighThreshold. The default is 80% + ImageGcLowThreshold pulumi.IntPtrInput `pulumi:"imageGcLowThreshold"` + // The maximum number of processes per pod. + PodMaxPids pulumi.IntPtrInput `pulumi:"podMaxPids"` + // For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. + TopologyManagerPolicy pulumi.StringPtrInput `pulumi:"topologyManagerPolicy"` } -func (ManagedClusterAzureMonitorProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfile)(nil)).Elem() +func (KubeletConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*KubeletConfig)(nil)).Elem() } -func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfileOutput() ManagedClusterAzureMonitorProfileOutput { - return i.ToManagedClusterAzureMonitorProfileOutputWithContext(context.Background()) +func (i KubeletConfigArgs) ToKubeletConfigOutput() KubeletConfigOutput { + return i.ToKubeletConfigOutputWithContext(context.Background()) } -func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfileOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileOutput) +func (i KubeletConfigArgs) ToKubeletConfigOutputWithContext(ctx context.Context) KubeletConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(KubeletConfigOutput) } -func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { - return i.ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Background()) +func (i KubeletConfigArgs) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { + return i.ToKubeletConfigPtrOutputWithContext(context.Background()) } -func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileOutput).ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx) +func (i KubeletConfigArgs) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(KubeletConfigOutput).ToKubeletConfigPtrOutputWithContext(ctx) } -// ManagedClusterAzureMonitorProfilePtrInput is an input type that accepts ManagedClusterAzureMonitorProfileArgs, ManagedClusterAzureMonitorProfilePtr and ManagedClusterAzureMonitorProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterAzureMonitorProfilePtrInput` via: +// KubeletConfigPtrInput is an input type that accepts KubeletConfigArgs, KubeletConfigPtr and KubeletConfigPtrOutput values. +// You can construct a concrete instance of `KubeletConfigPtrInput` via: // -// ManagedClusterAzureMonitorProfileArgs{...} +// KubeletConfigArgs{...} // // or: // // nil -type ManagedClusterAzureMonitorProfilePtrInput interface { +type KubeletConfigPtrInput interface { pulumi.Input - ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput - ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Context) ManagedClusterAzureMonitorProfilePtrOutput + ToKubeletConfigPtrOutput() KubeletConfigPtrOutput + ToKubeletConfigPtrOutputWithContext(context.Context) KubeletConfigPtrOutput } -type managedClusterAzureMonitorProfilePtrType ManagedClusterAzureMonitorProfileArgs +type kubeletConfigPtrType KubeletConfigArgs -func ManagedClusterAzureMonitorProfilePtr(v *ManagedClusterAzureMonitorProfileArgs) ManagedClusterAzureMonitorProfilePtrInput { - return (*managedClusterAzureMonitorProfilePtrType)(v) +func KubeletConfigPtr(v *KubeletConfigArgs) KubeletConfigPtrInput { + return (*kubeletConfigPtrType)(v) } -func (*managedClusterAzureMonitorProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfile)(nil)).Elem() +func (*kubeletConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**KubeletConfig)(nil)).Elem() } -func (i *managedClusterAzureMonitorProfilePtrType) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { - return i.ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Background()) +func (i *kubeletConfigPtrType) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { + return i.ToKubeletConfigPtrOutputWithContext(context.Background()) } -func (i *managedClusterAzureMonitorProfilePtrType) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfilePtrOutput) +func (i *kubeletConfigPtrType) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(KubeletConfigPtrOutput) } -// Azure Monitor addon profiles for monitoring the managed cluster. -type ManagedClusterAzureMonitorProfileOutput struct{ *pulumi.OutputState } +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type KubeletConfigOutput struct{ *pulumi.OutputState } -func (ManagedClusterAzureMonitorProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfile)(nil)).Elem() +func (KubeletConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*KubeletConfig)(nil)).Elem() } -func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfileOutput() ManagedClusterAzureMonitorProfileOutput { +func (o KubeletConfigOutput) ToKubeletConfigOutput() KubeletConfigOutput { return o } -func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfileOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileOutput { +func (o KubeletConfigOutput) ToKubeletConfigOutputWithContext(ctx context.Context) KubeletConfigOutput { return o } -func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { - return o.ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Background()) +func (o KubeletConfigOutput) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { + return o.ToKubeletConfigPtrOutputWithContext(context.Background()) } -func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAzureMonitorProfile) *ManagedClusterAzureMonitorProfile { +func (o KubeletConfigOutput) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v KubeletConfig) *KubeletConfig { return &v - }).(ManagedClusterAzureMonitorProfilePtrOutput) + }).(KubeletConfigPtrOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -func (o ManagedClusterAzureMonitorProfileOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfile) *ManagedClusterAzureMonitorProfileMetrics { return v.Metrics }).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) +// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). +func (o KubeletConfigOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { + return o.ApplyT(func(v KubeletConfig) []string { return v.AllowedUnsafeSysctls }).(pulumi.StringArrayOutput) } -type ManagedClusterAzureMonitorProfilePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterAzureMonitorProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfile)(nil)).Elem() +// The maximum number of container log files that can be present for a container. The number must be ≥ 2. +func (o KubeletConfigOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfig) *int { return v.ContainerLogMaxFiles }).(pulumi.IntPtrOutput) } -func (o ManagedClusterAzureMonitorProfilePtrOutput) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { - return o +// The maximum size (e.g. 10Mi) of container log file before it is rotated. +func (o KubeletConfigOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfig) *int { return v.ContainerLogMaxSizeMB }).(pulumi.IntPtrOutput) } -func (o ManagedClusterAzureMonitorProfilePtrOutput) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { - return o +// The default is true. +func (o KubeletConfigOutput) CpuCfsQuota() pulumi.BoolPtrOutput { + return o.ApplyT(func(v KubeletConfig) *bool { return v.CpuCfsQuota }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterAzureMonitorProfilePtrOutput) Elem() ManagedClusterAzureMonitorProfileOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfile) ManagedClusterAzureMonitorProfile { - if v != nil { - return *v - } - var ret ManagedClusterAzureMonitorProfile - return ret - }).(ManagedClusterAzureMonitorProfileOutput) +// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. +func (o KubeletConfigOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { + return o.ApplyT(func(v KubeletConfig) *string { return v.CpuCfsQuotaPeriod }).(pulumi.StringPtrOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -func (o ManagedClusterAzureMonitorProfilePtrOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfile) *ManagedClusterAzureMonitorProfileMetrics { - if v == nil { - return nil - } - return v.Metrics - }).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) +// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. +func (o KubeletConfigOutput) CpuManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v KubeletConfig) *string { return v.CpuManagerPolicy }).(pulumi.StringPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -type ManagedClusterAzureMonitorProfileKubeStateMetrics struct { - // Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. - MetricAnnotationsAllowList *string `pulumi:"metricAnnotationsAllowList"` - // Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. - MetricLabelsAllowlist *string `pulumi:"metricLabelsAllowlist"` +// If set to true it will make the Kubelet fail to start if swap is enabled on the node. +func (o KubeletConfigOutput) FailSwapOn() pulumi.BoolPtrOutput { + return o.ApplyT(func(v KubeletConfig) *bool { return v.FailSwapOn }).(pulumi.BoolPtrOutput) } -// ManagedClusterAzureMonitorProfileKubeStateMetricsInput is an input type that accepts ManagedClusterAzureMonitorProfileKubeStateMetricsArgs and ManagedClusterAzureMonitorProfileKubeStateMetricsOutput values. -// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileKubeStateMetricsInput` via: -// -// ManagedClusterAzureMonitorProfileKubeStateMetricsArgs{...} -type ManagedClusterAzureMonitorProfileKubeStateMetricsInput interface { - pulumi.Input - - ToManagedClusterAzureMonitorProfileKubeStateMetricsOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput - ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsOutput +// To disable image garbage collection, set to 100. The default is 85% +func (o KubeletConfigOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfig) *int { return v.ImageGcHighThreshold }).(pulumi.IntPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -type ManagedClusterAzureMonitorProfileKubeStateMetricsArgs struct { - // Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. - MetricAnnotationsAllowList pulumi.StringPtrInput `pulumi:"metricAnnotationsAllowList"` - // Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. - MetricLabelsAllowlist pulumi.StringPtrInput `pulumi:"metricLabelsAllowlist"` +// This cannot be set higher than imageGcHighThreshold. The default is 80% +func (o KubeletConfigOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfig) *int { return v.ImageGcLowThreshold }).(pulumi.IntPtrOutput) } -func (ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +// The maximum number of processes per pod. +func (o KubeletConfigOutput) PodMaxPids() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfig) *int { return v.PodMaxPids }).(pulumi.IntPtrOutput) } -func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { - return i.ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(context.Background()) +// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. +func (o KubeletConfigOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v KubeletConfig) *string { return v.TopologyManagerPolicy }).(pulumi.StringPtrOutput) } -func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) -} +type KubeletConfigPtrOutput struct{ *pulumi.OutputState } -func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return i.ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Background()) +func (KubeletConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**KubeletConfig)(nil)).Elem() } -func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileKubeStateMetricsOutput).ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx) +func (o KubeletConfigPtrOutput) ToKubeletConfigPtrOutput() KubeletConfigPtrOutput { + return o } -// ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput is an input type that accepts ManagedClusterAzureMonitorProfileKubeStateMetricsArgs, ManagedClusterAzureMonitorProfileKubeStateMetricsPtr and ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput values. -// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput` via: -// -// ManagedClusterAzureMonitorProfileKubeStateMetricsArgs{...} -// -// or: -// -// nil -type ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput interface { - pulumi.Input - - ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput - ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput +func (o KubeletConfigPtrOutput) ToKubeletConfigPtrOutputWithContext(ctx context.Context) KubeletConfigPtrOutput { + return o } -type managedClusterAzureMonitorProfileKubeStateMetricsPtrType ManagedClusterAzureMonitorProfileKubeStateMetricsArgs +func (o KubeletConfigPtrOutput) Elem() KubeletConfigOutput { + return o.ApplyT(func(v *KubeletConfig) KubeletConfig { + if v != nil { + return *v + } + var ret KubeletConfig + return ret + }).(KubeletConfigOutput) +} -func ManagedClusterAzureMonitorProfileKubeStateMetricsPtr(v *ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput { - return (*managedClusterAzureMonitorProfileKubeStateMetricsPtrType)(v) +// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). +func (o KubeletConfigPtrOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { + return o.ApplyT(func(v *KubeletConfig) []string { + if v == nil { + return nil + } + return v.AllowedUnsafeSysctls + }).(pulumi.StringArrayOutput) } -func (*managedClusterAzureMonitorProfileKubeStateMetricsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +// The maximum number of container log files that can be present for a container. The number must be ≥ 2. +func (o KubeletConfigPtrOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *int { + if v == nil { + return nil + } + return v.ContainerLogMaxFiles + }).(pulumi.IntPtrOutput) } -func (i *managedClusterAzureMonitorProfileKubeStateMetricsPtrType) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return i.ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Background()) +// The maximum size (e.g. 10Mi) of container log file before it is rotated. +func (o KubeletConfigPtrOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *int { + if v == nil { + return nil + } + return v.ContainerLogMaxSizeMB + }).(pulumi.IntPtrOutput) } -func (i *managedClusterAzureMonitorProfileKubeStateMetricsPtrType) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) +// The default is true. +func (o KubeletConfigPtrOutput) CpuCfsQuota() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *bool { + if v == nil { + return nil + } + return v.CpuCfsQuota + }).(pulumi.BoolPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -type ManagedClusterAzureMonitorProfileKubeStateMetricsOutput struct{ *pulumi.OutputState } +// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. +func (o KubeletConfigPtrOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *string { + if v == nil { + return nil + } + return v.CpuCfsQuotaPeriod + }).(pulumi.StringPtrOutput) +} -func (ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. +func (o KubeletConfigPtrOutput) CpuManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *string { + if v == nil { + return nil + } + return v.CpuManagerPolicy + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { - return o +// If set to true it will make the Kubelet fail to start if swap is enabled on the node. +func (o KubeletConfigPtrOutput) FailSwapOn() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *bool { + if v == nil { + return nil + } + return v.FailSwapOn + }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { - return o +// To disable image garbage collection, set to 100. The default is 85% +func (o KubeletConfigPtrOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *int { + if v == nil { + return nil + } + return v.ImageGcHighThreshold + }).(pulumi.IntPtrOutput) } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return o.ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Background()) +// This cannot be set higher than imageGcHighThreshold. The default is 80% +func (o KubeletConfigPtrOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *int { + if v == nil { + return nil + } + return v.ImageGcLowThreshold + }).(pulumi.IntPtrOutput) } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAzureMonitorProfileKubeStateMetrics) *ManagedClusterAzureMonitorProfileKubeStateMetrics { - return &v - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) +// The maximum number of processes per pod. +func (o KubeletConfigPtrOutput) PodMaxPids() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *int { + if v == nil { + return nil + } + return v.PodMaxPids + }).(pulumi.IntPtrOutput) } -// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { return v.MetricAnnotationsAllowList }).(pulumi.StringPtrOutput) +// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. +func (o KubeletConfigPtrOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KubeletConfig) *string { + if v == nil { + return nil + } + return v.TopologyManagerPolicy + }).(pulumi.StringPtrOutput) } -// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { return v.MetricLabelsAllowlist }).(pulumi.StringPtrOutput) +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type KubeletConfigResponse struct { + // Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). + AllowedUnsafeSysctls []string `pulumi:"allowedUnsafeSysctls"` + // The maximum number of container log files that can be present for a container. The number must be ≥ 2. + ContainerLogMaxFiles *int `pulumi:"containerLogMaxFiles"` + // The maximum size (e.g. 10Mi) of container log file before it is rotated. + ContainerLogMaxSizeMB *int `pulumi:"containerLogMaxSizeMB"` + // The default is true. + CpuCfsQuota *bool `pulumi:"cpuCfsQuota"` + // The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. + CpuCfsQuotaPeriod *string `pulumi:"cpuCfsQuotaPeriod"` + // The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. + CpuManagerPolicy *string `pulumi:"cpuManagerPolicy"` + // If set to true it will make the Kubelet fail to start if swap is enabled on the node. + FailSwapOn *bool `pulumi:"failSwapOn"` + // To disable image garbage collection, set to 100. The default is 85% + ImageGcHighThreshold *int `pulumi:"imageGcHighThreshold"` + // This cannot be set higher than imageGcHighThreshold. The default is 80% + ImageGcLowThreshold *int `pulumi:"imageGcLowThreshold"` + // The maximum number of processes per pod. + PodMaxPids *int `pulumi:"podMaxPids"` + // For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. + TopologyManagerPolicy *string `pulumi:"topologyManagerPolicy"` } -type ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput struct{ *pulumi.OutputState } +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type KubeletConfigResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +func (KubeletConfigResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*KubeletConfigResponse)(nil)).Elem() } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { +func (o KubeletConfigResponseOutput) ToKubeletConfigResponseOutput() KubeletConfigResponseOutput { return o } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { +func (o KubeletConfigResponseOutput) ToKubeletConfigResponseOutputWithContext(ctx context.Context) KubeletConfigResponseOutput { return o } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) Elem() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetrics) ManagedClusterAzureMonitorProfileKubeStateMetrics { - if v != nil { - return *v - } - var ret ManagedClusterAzureMonitorProfileKubeStateMetrics - return ret - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) +// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). +func (o KubeletConfigResponseOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { + return o.ApplyT(func(v KubeletConfigResponse) []string { return v.AllowedUnsafeSysctls }).(pulumi.StringArrayOutput) } -// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { - if v == nil { - return nil - } - return v.MetricAnnotationsAllowList - }).(pulumi.StringPtrOutput) +// The maximum number of container log files that can be present for a container. The number must be ≥ 2. +func (o KubeletConfigResponseOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ContainerLogMaxFiles }).(pulumi.IntPtrOutput) } -// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { - if v == nil { - return nil - } - return v.MetricLabelsAllowlist - }).(pulumi.StringPtrOutput) +// The maximum size (e.g. 10Mi) of container log file before it is rotated. +func (o KubeletConfigResponseOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ContainerLogMaxSizeMB }).(pulumi.IntPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -type ManagedClusterAzureMonitorProfileKubeStateMetricsResponse struct { - // Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. - MetricAnnotationsAllowList *string `pulumi:"metricAnnotationsAllowList"` - // Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. - MetricLabelsAllowlist *string `pulumi:"metricLabelsAllowlist"` +// The default is true. +func (o KubeletConfigResponseOutput) CpuCfsQuota() pulumi.BoolPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *bool { return v.CpuCfsQuota }).(pulumi.BoolPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -type ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput struct{ *pulumi.OutputState } +// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. +func (o KubeletConfigResponseOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *string { return v.CpuCfsQuotaPeriod }).(pulumi.StringPtrOutput) +} -func (ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileKubeStateMetricsResponse)(nil)).Elem() +// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. +func (o KubeletConfigResponseOutput) CpuManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *string { return v.CpuManagerPolicy }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput { - return o +// If set to true it will make the Kubelet fail to start if swap is enabled on the node. +func (o KubeletConfigResponseOutput) FailSwapOn() pulumi.BoolPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *bool { return v.FailSwapOn }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput { - return o +// To disable image garbage collection, set to 100. The default is 85% +func (o KubeletConfigResponseOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ImageGcHighThreshold }).(pulumi.IntPtrOutput) } -// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { - return v.MetricAnnotationsAllowList - }).(pulumi.StringPtrOutput) +// This cannot be set higher than imageGcHighThreshold. The default is 80% +func (o KubeletConfigResponseOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *int { return v.ImageGcLowThreshold }).(pulumi.IntPtrOutput) } -// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { - return v.MetricLabelsAllowlist - }).(pulumi.StringPtrOutput) +// The maximum number of processes per pod. +func (o KubeletConfigResponseOutput) PodMaxPids() pulumi.IntPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *int { return v.PodMaxPids }).(pulumi.IntPtrOutput) } -type ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput struct{ *pulumi.OutputState } +// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. +func (o KubeletConfigResponseOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v KubeletConfigResponse) *string { return v.TopologyManagerPolicy }).(pulumi.StringPtrOutput) +} -func (ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileKubeStateMetricsResponse)(nil)).Elem() +type KubeletConfigResponsePtrOutput struct{ *pulumi.OutputState } + +func (KubeletConfigResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**KubeletConfigResponse)(nil)).Elem() } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { +func (o KubeletConfigResponsePtrOutput) ToKubeletConfigResponsePtrOutput() KubeletConfigResponsePtrOutput { return o } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { +func (o KubeletConfigResponsePtrOutput) ToKubeletConfigResponsePtrOutputWithContext(ctx context.Context) KubeletConfigResponsePtrOutput { return o } -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) Elem() ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) ManagedClusterAzureMonitorProfileKubeStateMetricsResponse { +func (o KubeletConfigResponsePtrOutput) Elem() KubeletConfigResponseOutput { + return o.ApplyT(func(v *KubeletConfigResponse) KubeletConfigResponse { if v != nil { return *v } - var ret ManagedClusterAzureMonitorProfileKubeStateMetricsResponse + var ret KubeletConfigResponse return ret - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) + }).(KubeletConfigResponseOutput) } -// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { +// Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`). +func (o KubeletConfigResponsePtrOutput) AllowedUnsafeSysctls() pulumi.StringArrayOutput { + return o.ApplyT(func(v *KubeletConfigResponse) []string { if v == nil { return nil } - return v.MetricAnnotationsAllowList + return v.AllowedUnsafeSysctls + }).(pulumi.StringArrayOutput) +} + +// The maximum number of container log files that can be present for a container. The number must be ≥ 2. +func (o KubeletConfigResponsePtrOutput) ContainerLogMaxFiles() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *int { + if v == nil { + return nil + } + return v.ContainerLogMaxFiles + }).(pulumi.IntPtrOutput) +} + +// The maximum size (e.g. 10Mi) of container log file before it is rotated. +func (o KubeletConfigResponsePtrOutput) ContainerLogMaxSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *int { + if v == nil { + return nil + } + return v.ContainerLogMaxSizeMB + }).(pulumi.IntPtrOutput) +} + +// The default is true. +func (o KubeletConfigResponsePtrOutput) CpuCfsQuota() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *bool { + if v == nil { + return nil + } + return v.CpuCfsQuota + }).(pulumi.BoolPtrOutput) +} + +// The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'. +func (o KubeletConfigResponsePtrOutput) CpuCfsQuotaPeriod() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *string { + if v == nil { + return nil + } + return v.CpuCfsQuotaPeriod }).(pulumi.StringPtrOutput) } -// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. -func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { +// The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'. +func (o KubeletConfigResponsePtrOutput) CpuManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *string { if v == nil { return nil } - return v.MetricLabelsAllowlist + return v.CpuManagerPolicy }).(pulumi.StringPtrOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -type ManagedClusterAzureMonitorProfileMetrics struct { - // Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. - Enabled bool `pulumi:"enabled"` - // Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. - KubeStateMetrics *ManagedClusterAzureMonitorProfileKubeStateMetrics `pulumi:"kubeStateMetrics"` +// If set to true it will make the Kubelet fail to start if swap is enabled on the node. +func (o KubeletConfigResponsePtrOutput) FailSwapOn() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *bool { + if v == nil { + return nil + } + return v.FailSwapOn + }).(pulumi.BoolPtrOutput) } -// ManagedClusterAzureMonitorProfileMetricsInput is an input type that accepts ManagedClusterAzureMonitorProfileMetricsArgs and ManagedClusterAzureMonitorProfileMetricsOutput values. -// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileMetricsInput` via: +// To disable image garbage collection, set to 100. The default is 85% +func (o KubeletConfigResponsePtrOutput) ImageGcHighThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *int { + if v == nil { + return nil + } + return v.ImageGcHighThreshold + }).(pulumi.IntPtrOutput) +} + +// This cannot be set higher than imageGcHighThreshold. The default is 80% +func (o KubeletConfigResponsePtrOutput) ImageGcLowThreshold() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *int { + if v == nil { + return nil + } + return v.ImageGcLowThreshold + }).(pulumi.IntPtrOutput) +} + +// The maximum number of processes per pod. +func (o KubeletConfigResponsePtrOutput) PodMaxPids() pulumi.IntPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *int { + if v == nil { + return nil + } + return v.PodMaxPids + }).(pulumi.IntPtrOutput) +} + +// For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'. +func (o KubeletConfigResponsePtrOutput) TopologyManagerPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KubeletConfigResponse) *string { + if v == nil { + return nil + } + return v.TopologyManagerPolicy + }).(pulumi.StringPtrOutput) +} + +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type LinuxOSConfig struct { + // The size in MB of a swap file that will be created on each node. + SwapFileSizeMB *int `pulumi:"swapFileSizeMB"` + // Sysctl settings for Linux agent nodes. + Sysctls *SysctlConfig `pulumi:"sysctls"` + // Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). + TransparentHugePageDefrag *string `pulumi:"transparentHugePageDefrag"` + // Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). + TransparentHugePageEnabled *string `pulumi:"transparentHugePageEnabled"` +} + +// LinuxOSConfigInput is an input type that accepts LinuxOSConfigArgs and LinuxOSConfigOutput values. +// You can construct a concrete instance of `LinuxOSConfigInput` via: // -// ManagedClusterAzureMonitorProfileMetricsArgs{...} -type ManagedClusterAzureMonitorProfileMetricsInput interface { +// LinuxOSConfigArgs{...} +type LinuxOSConfigInput interface { pulumi.Input - ToManagedClusterAzureMonitorProfileMetricsOutput() ManagedClusterAzureMonitorProfileMetricsOutput - ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileMetricsOutput + ToLinuxOSConfigOutput() LinuxOSConfigOutput + ToLinuxOSConfigOutputWithContext(context.Context) LinuxOSConfigOutput } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -type ManagedClusterAzureMonitorProfileMetricsArgs struct { - // Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. - Enabled pulumi.BoolInput `pulumi:"enabled"` - // Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. - KubeStateMetrics ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput `pulumi:"kubeStateMetrics"` +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type LinuxOSConfigArgs struct { + // The size in MB of a swap file that will be created on each node. + SwapFileSizeMB pulumi.IntPtrInput `pulumi:"swapFileSizeMB"` + // Sysctl settings for Linux agent nodes. + Sysctls SysctlConfigPtrInput `pulumi:"sysctls"` + // Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). + TransparentHugePageDefrag pulumi.StringPtrInput `pulumi:"transparentHugePageDefrag"` + // Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). + TransparentHugePageEnabled pulumi.StringPtrInput `pulumi:"transparentHugePageEnabled"` } -func (ManagedClusterAzureMonitorProfileMetricsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +func (LinuxOSConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LinuxOSConfig)(nil)).Elem() } -func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsOutput() ManagedClusterAzureMonitorProfileMetricsOutput { - return i.ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(context.Background()) +func (i LinuxOSConfigArgs) ToLinuxOSConfigOutput() LinuxOSConfigOutput { + return i.ToLinuxOSConfigOutputWithContext(context.Background()) } -func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileMetricsOutput) +func (i LinuxOSConfigArgs) ToLinuxOSConfigOutputWithContext(ctx context.Context) LinuxOSConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(LinuxOSConfigOutput) } -func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return i.ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Background()) +func (i LinuxOSConfigArgs) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { + return i.ToLinuxOSConfigPtrOutputWithContext(context.Background()) } -func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileMetricsOutput).ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx) +func (i LinuxOSConfigArgs) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(LinuxOSConfigOutput).ToLinuxOSConfigPtrOutputWithContext(ctx) } -// ManagedClusterAzureMonitorProfileMetricsPtrInput is an input type that accepts ManagedClusterAzureMonitorProfileMetricsArgs, ManagedClusterAzureMonitorProfileMetricsPtr and ManagedClusterAzureMonitorProfileMetricsPtrOutput values. -// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileMetricsPtrInput` via: +// LinuxOSConfigPtrInput is an input type that accepts LinuxOSConfigArgs, LinuxOSConfigPtr and LinuxOSConfigPtrOutput values. +// You can construct a concrete instance of `LinuxOSConfigPtrInput` via: // -// ManagedClusterAzureMonitorProfileMetricsArgs{...} +// LinuxOSConfigArgs{...} // // or: // // nil -type ManagedClusterAzureMonitorProfileMetricsPtrInput interface { +type LinuxOSConfigPtrInput interface { pulumi.Input - ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput - ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput + ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput + ToLinuxOSConfigPtrOutputWithContext(context.Context) LinuxOSConfigPtrOutput } -type managedClusterAzureMonitorProfileMetricsPtrType ManagedClusterAzureMonitorProfileMetricsArgs +type linuxOSConfigPtrType LinuxOSConfigArgs -func ManagedClusterAzureMonitorProfileMetricsPtr(v *ManagedClusterAzureMonitorProfileMetricsArgs) ManagedClusterAzureMonitorProfileMetricsPtrInput { - return (*managedClusterAzureMonitorProfileMetricsPtrType)(v) +func LinuxOSConfigPtr(v *LinuxOSConfigArgs) LinuxOSConfigPtrInput { + return (*linuxOSConfigPtrType)(v) } -func (*managedClusterAzureMonitorProfileMetricsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +func (*linuxOSConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**LinuxOSConfig)(nil)).Elem() } -func (i *managedClusterAzureMonitorProfileMetricsPtrType) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return i.ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Background()) +func (i *linuxOSConfigPtrType) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { + return i.ToLinuxOSConfigPtrOutputWithContext(context.Background()) } -func (i *managedClusterAzureMonitorProfileMetricsPtrType) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) +func (i *linuxOSConfigPtrType) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(LinuxOSConfigPtrOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -type ManagedClusterAzureMonitorProfileMetricsOutput struct{ *pulumi.OutputState } +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type LinuxOSConfigOutput struct{ *pulumi.OutputState } -func (ManagedClusterAzureMonitorProfileMetricsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +func (LinuxOSConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LinuxOSConfig)(nil)).Elem() } -func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsOutput() ManagedClusterAzureMonitorProfileMetricsOutput { +func (o LinuxOSConfigOutput) ToLinuxOSConfigOutput() LinuxOSConfigOutput { return o } -func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsOutput { +func (o LinuxOSConfigOutput) ToLinuxOSConfigOutputWithContext(ctx context.Context) LinuxOSConfigOutput { return o } -func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return o.ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Background()) +func (o LinuxOSConfigOutput) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { + return o.ToLinuxOSConfigPtrOutputWithContext(context.Background()) } -func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAzureMonitorProfileMetrics) *ManagedClusterAzureMonitorProfileMetrics { +func (o LinuxOSConfigOutput) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v LinuxOSConfig) *LinuxOSConfig { return &v - }).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) + }).(LinuxOSConfigPtrOutput) } -// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. -func (o ManagedClusterAzureMonitorProfileMetricsOutput) Enabled() pulumi.BoolOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetrics) bool { return v.Enabled }).(pulumi.BoolOutput) +// The size in MB of a swap file that will be created on each node. +func (o LinuxOSConfigOutput) SwapFileSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v LinuxOSConfig) *int { return v.SwapFileSizeMB }).(pulumi.IntPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -func (o ManagedClusterAzureMonitorProfileMetricsOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetrics) *ManagedClusterAzureMonitorProfileKubeStateMetrics { - return v.KubeStateMetrics - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) +// Sysctl settings for Linux agent nodes. +func (o LinuxOSConfigOutput) Sysctls() SysctlConfigPtrOutput { + return o.ApplyT(func(v LinuxOSConfig) *SysctlConfig { return v.Sysctls }).(SysctlConfigPtrOutput) } -type ManagedClusterAzureMonitorProfileMetricsPtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterAzureMonitorProfileMetricsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { + return o.ApplyT(func(v LinuxOSConfig) *string { return v.TransparentHugePageDefrag }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { - return o +// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { + return o.ApplyT(func(v LinuxOSConfig) *string { return v.TransparentHugePageEnabled }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { +type LinuxOSConfigPtrOutput struct{ *pulumi.OutputState } + +func (LinuxOSConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LinuxOSConfig)(nil)).Elem() +} + +func (o LinuxOSConfigPtrOutput) ToLinuxOSConfigPtrOutput() LinuxOSConfigPtrOutput { return o } -func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) Elem() ManagedClusterAzureMonitorProfileMetricsOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetrics) ManagedClusterAzureMonitorProfileMetrics { +func (o LinuxOSConfigPtrOutput) ToLinuxOSConfigPtrOutputWithContext(ctx context.Context) LinuxOSConfigPtrOutput { + return o +} + +func (o LinuxOSConfigPtrOutput) Elem() LinuxOSConfigOutput { + return o.ApplyT(func(v *LinuxOSConfig) LinuxOSConfig { if v != nil { return *v } - var ret ManagedClusterAzureMonitorProfileMetrics + var ret LinuxOSConfig return ret - }).(ManagedClusterAzureMonitorProfileMetricsOutput) + }).(LinuxOSConfigOutput) } -// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. -func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetrics) *bool { +// The size in MB of a swap file that will be created on each node. +func (o LinuxOSConfigPtrOutput) SwapFileSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v *LinuxOSConfig) *int { if v == nil { return nil } - return &v.Enabled - }).(pulumi.BoolPtrOutput) + return v.SwapFileSizeMB + }).(pulumi.IntPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetrics) *ManagedClusterAzureMonitorProfileKubeStateMetrics { +// Sysctl settings for Linux agent nodes. +func (o LinuxOSConfigPtrOutput) Sysctls() SysctlConfigPtrOutput { + return o.ApplyT(func(v *LinuxOSConfig) *SysctlConfig { if v == nil { return nil } - return v.KubeStateMetrics - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) + return v.Sysctls + }).(SysctlConfigPtrOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -type ManagedClusterAzureMonitorProfileMetricsResponse struct { - // Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. - Enabled bool `pulumi:"enabled"` - // Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. - KubeStateMetrics *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse `pulumi:"kubeStateMetrics"` +// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigPtrOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LinuxOSConfig) *string { + if v == nil { + return nil + } + return v.TransparentHugePageDefrag + }).(pulumi.StringPtrOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -type ManagedClusterAzureMonitorProfileMetricsResponseOutput struct{ *pulumi.OutputState } +// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigPtrOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LinuxOSConfig) *string { + if v == nil { + return nil + } + return v.TransparentHugePageEnabled + }).(pulumi.StringPtrOutput) +} -func (ManagedClusterAzureMonitorProfileMetricsResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileMetricsResponse)(nil)).Elem() +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type LinuxOSConfigResponse struct { + // The size in MB of a swap file that will be created on each node. + SwapFileSizeMB *int `pulumi:"swapFileSizeMB"` + // Sysctl settings for Linux agent nodes. + Sysctls *SysctlConfigResponse `pulumi:"sysctls"` + // Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). + TransparentHugePageDefrag *string `pulumi:"transparentHugePageDefrag"` + // Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). + TransparentHugePageEnabled *string `pulumi:"transparentHugePageEnabled"` } -func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) ToManagedClusterAzureMonitorProfileMetricsResponseOutput() ManagedClusterAzureMonitorProfileMetricsResponseOutput { +// See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details. +type LinuxOSConfigResponseOutput struct{ *pulumi.OutputState } + +func (LinuxOSConfigResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LinuxOSConfigResponse)(nil)).Elem() +} + +func (o LinuxOSConfigResponseOutput) ToLinuxOSConfigResponseOutput() LinuxOSConfigResponseOutput { return o } -func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) ToManagedClusterAzureMonitorProfileMetricsResponseOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsResponseOutput { +func (o LinuxOSConfigResponseOutput) ToLinuxOSConfigResponseOutputWithContext(ctx context.Context) LinuxOSConfigResponseOutput { return o } -// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. -func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) Enabled() pulumi.BoolOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetricsResponse) bool { return v.Enabled }).(pulumi.BoolOutput) +// The size in MB of a swap file that will be created on each node. +func (o LinuxOSConfigResponseOutput) SwapFileSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v LinuxOSConfigResponse) *int { return v.SwapFileSizeMB }).(pulumi.IntPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetricsResponse) *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse { - return v.KubeStateMetrics - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) +// Sysctl settings for Linux agent nodes. +func (o LinuxOSConfigResponseOutput) Sysctls() SysctlConfigResponsePtrOutput { + return o.ApplyT(func(v LinuxOSConfigResponse) *SysctlConfigResponse { return v.Sysctls }).(SysctlConfigResponsePtrOutput) } -type ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput struct{ *pulumi.OutputState } +// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigResponseOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { + return o.ApplyT(func(v LinuxOSConfigResponse) *string { return v.TransparentHugePageDefrag }).(pulumi.StringPtrOutput) +} -func (ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileMetricsResponse)(nil)).Elem() +// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigResponseOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { + return o.ApplyT(func(v LinuxOSConfigResponse) *string { return v.TransparentHugePageEnabled }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileMetricsResponsePtrOutput() ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { +type LinuxOSConfigResponsePtrOutput struct{ *pulumi.OutputState } + +func (LinuxOSConfigResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**LinuxOSConfigResponse)(nil)).Elem() +} + +func (o LinuxOSConfigResponsePtrOutput) ToLinuxOSConfigResponsePtrOutput() LinuxOSConfigResponsePtrOutput { return o } -func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileMetricsResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { +func (o LinuxOSConfigResponsePtrOutput) ToLinuxOSConfigResponsePtrOutputWithContext(ctx context.Context) LinuxOSConfigResponsePtrOutput { return o } -func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) Elem() ManagedClusterAzureMonitorProfileMetricsResponseOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetricsResponse) ManagedClusterAzureMonitorProfileMetricsResponse { +func (o LinuxOSConfigResponsePtrOutput) Elem() LinuxOSConfigResponseOutput { + return o.ApplyT(func(v *LinuxOSConfigResponse) LinuxOSConfigResponse { if v != nil { return *v } - var ret ManagedClusterAzureMonitorProfileMetricsResponse + var ret LinuxOSConfigResponse return ret - }).(ManagedClusterAzureMonitorProfileMetricsResponseOutput) + }).(LinuxOSConfigResponseOutput) } -// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. -func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetricsResponse) *bool { +// The size in MB of a swap file that will be created on each node. +func (o LinuxOSConfigResponsePtrOutput) SwapFileSizeMB() pulumi.IntPtrOutput { + return o.ApplyT(func(v *LinuxOSConfigResponse) *int { if v == nil { return nil } - return &v.Enabled - }).(pulumi.BoolPtrOutput) + return v.SwapFileSizeMB + }).(pulumi.IntPtrOutput) } -// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. -func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetricsResponse) *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse { +// Sysctl settings for Linux agent nodes. +func (o LinuxOSConfigResponsePtrOutput) Sysctls() SysctlConfigResponsePtrOutput { + return o.ApplyT(func(v *LinuxOSConfigResponse) *SysctlConfigResponse { if v == nil { return nil } - return v.KubeStateMetrics - }).(ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) + return v.Sysctls + }).(SysctlConfigResponsePtrOutput) } -// Azure Monitor addon profiles for monitoring the managed cluster. -type ManagedClusterAzureMonitorProfileResponse struct { - // Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. - Metrics *ManagedClusterAzureMonitorProfileMetricsResponse `pulumi:"metrics"` +// Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigResponsePtrOutput) TransparentHugePageDefrag() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LinuxOSConfigResponse) *string { + if v == nil { + return nil + } + return v.TransparentHugePageDefrag + }).(pulumi.StringPtrOutput) } -// Azure Monitor addon profiles for monitoring the managed cluster. -type ManagedClusterAzureMonitorProfileResponseOutput struct{ *pulumi.OutputState } - -func (ManagedClusterAzureMonitorProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterAzureMonitorProfileResponse)(nil)).Elem() +// Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge). +func (o LinuxOSConfigResponsePtrOutput) TransparentHugePageEnabled() pulumi.StringPtrOutput { + return o.ApplyT(func(v *LinuxOSConfigResponse) *string { + if v == nil { + return nil + } + return v.TransparentHugePageEnabled + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterAzureMonitorProfileResponseOutput) ToManagedClusterAzureMonitorProfileResponseOutput() ManagedClusterAzureMonitorProfileResponseOutput { - return o +// Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster. +type MaintenanceWindow struct { + // Length of maintenance window range from 4 to 24 hours. + DurationHours int `pulumi:"durationHours"` + // Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. + NotAllowedDates []DateSpan `pulumi:"notAllowedDates"` + // Recurrence schedule for the maintenance window. + Schedule Schedule `pulumi:"schedule"` + // The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. + StartDate *string `pulumi:"startDate"` + // The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. + StartTime string `pulumi:"startTime"` + // The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. + UtcOffset *string `pulumi:"utcOffset"` } -func (o ManagedClusterAzureMonitorProfileResponseOutput) ToManagedClusterAzureMonitorProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileResponseOutput { - return o +// Defaults sets the appropriate defaults for MaintenanceWindow +func (val *MaintenanceWindow) Defaults() *MaintenanceWindow { + if val == nil { + return nil + } + tmp := *val + if utilities.IsZero(tmp.DurationHours) { + tmp.DurationHours = 24 + } + return &tmp } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -func (o ManagedClusterAzureMonitorProfileResponseOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterAzureMonitorProfileResponse) *ManagedClusterAzureMonitorProfileMetricsResponse { - return v.Metrics - }).(ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) -} +// MaintenanceWindowInput is an input type that accepts MaintenanceWindowArgs and MaintenanceWindowOutput values. +// You can construct a concrete instance of `MaintenanceWindowInput` via: +// +// MaintenanceWindowArgs{...} +type MaintenanceWindowInput interface { + pulumi.Input -type ManagedClusterAzureMonitorProfileResponsePtrOutput struct{ *pulumi.OutputState } + ToMaintenanceWindowOutput() MaintenanceWindowOutput + ToMaintenanceWindowOutputWithContext(context.Context) MaintenanceWindowOutput +} -func (ManagedClusterAzureMonitorProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterAzureMonitorProfileResponse)(nil)).Elem() +// Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster. +type MaintenanceWindowArgs struct { + // Length of maintenance window range from 4 to 24 hours. + DurationHours pulumi.IntInput `pulumi:"durationHours"` + // Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. + NotAllowedDates DateSpanArrayInput `pulumi:"notAllowedDates"` + // Recurrence schedule for the maintenance window. + Schedule ScheduleInput `pulumi:"schedule"` + // The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. + StartDate pulumi.StringPtrInput `pulumi:"startDate"` + // The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. + StartTime pulumi.StringInput `pulumi:"startTime"` + // The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. + UtcOffset pulumi.StringPtrInput `pulumi:"utcOffset"` } -func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) ToManagedClusterAzureMonitorProfileResponsePtrOutput() ManagedClusterAzureMonitorProfileResponsePtrOutput { - return o +// Defaults sets the appropriate defaults for MaintenanceWindowArgs +func (val *MaintenanceWindowArgs) Defaults() *MaintenanceWindowArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.DurationHours == nil { + tmp.DurationHours = pulumi.Int(24) + } + return &tmp +} +func (MaintenanceWindowArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MaintenanceWindow)(nil)).Elem() } -func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) ToManagedClusterAzureMonitorProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileResponsePtrOutput { - return o +func (i MaintenanceWindowArgs) ToMaintenanceWindowOutput() MaintenanceWindowOutput { + return i.ToMaintenanceWindowOutputWithContext(context.Background()) } -func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) Elem() ManagedClusterAzureMonitorProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileResponse) ManagedClusterAzureMonitorProfileResponse { - if v != nil { - return *v - } - var ret ManagedClusterAzureMonitorProfileResponse - return ret - }).(ManagedClusterAzureMonitorProfileResponseOutput) +func (i MaintenanceWindowArgs) ToMaintenanceWindowOutputWithContext(ctx context.Context) MaintenanceWindowOutput { + return pulumi.ToOutputWithContext(ctx, i).(MaintenanceWindowOutput) } -// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. -func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileResponse) *ManagedClusterAzureMonitorProfileMetricsResponse { - if v == nil { - return nil - } - return v.Metrics - }).(ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) +func (i MaintenanceWindowArgs) ToMaintenanceWindowPtrOutput() MaintenanceWindowPtrOutput { + return i.ToMaintenanceWindowPtrOutputWithContext(context.Background()) } -// Cluster HTTP proxy configuration. -type ManagedClusterHTTPProxyConfig struct { - // The HTTP proxy server endpoint to use. - HttpProxy *string `pulumi:"httpProxy"` - // The HTTPS proxy server endpoint to use. - HttpsProxy *string `pulumi:"httpsProxy"` - // The endpoints that should not go through proxy. - NoProxy []string `pulumi:"noProxy"` - // Alternative CA cert to use for connecting to proxy servers. - TrustedCa *string `pulumi:"trustedCa"` +func (i MaintenanceWindowArgs) ToMaintenanceWindowPtrOutputWithContext(ctx context.Context) MaintenanceWindowPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MaintenanceWindowOutput).ToMaintenanceWindowPtrOutputWithContext(ctx) } -// ManagedClusterHTTPProxyConfigInput is an input type that accepts ManagedClusterHTTPProxyConfigArgs and ManagedClusterHTTPProxyConfigOutput values. -// You can construct a concrete instance of `ManagedClusterHTTPProxyConfigInput` via: +// MaintenanceWindowPtrInput is an input type that accepts MaintenanceWindowArgs, MaintenanceWindowPtr and MaintenanceWindowPtrOutput values. +// You can construct a concrete instance of `MaintenanceWindowPtrInput` via: // -// ManagedClusterHTTPProxyConfigArgs{...} -type ManagedClusterHTTPProxyConfigInput interface { +// MaintenanceWindowArgs{...} +// +// or: +// +// nil +type MaintenanceWindowPtrInput interface { pulumi.Input - ToManagedClusterHTTPProxyConfigOutput() ManagedClusterHTTPProxyConfigOutput - ToManagedClusterHTTPProxyConfigOutputWithContext(context.Context) ManagedClusterHTTPProxyConfigOutput + ToMaintenanceWindowPtrOutput() MaintenanceWindowPtrOutput + ToMaintenanceWindowPtrOutputWithContext(context.Context) MaintenanceWindowPtrOutput } -// Cluster HTTP proxy configuration. -type ManagedClusterHTTPProxyConfigArgs struct { - // The HTTP proxy server endpoint to use. - HttpProxy pulumi.StringPtrInput `pulumi:"httpProxy"` - // The HTTPS proxy server endpoint to use. - HttpsProxy pulumi.StringPtrInput `pulumi:"httpsProxy"` - // The endpoints that should not go through proxy. - NoProxy pulumi.StringArrayInput `pulumi:"noProxy"` - // Alternative CA cert to use for connecting to proxy servers. - TrustedCa pulumi.StringPtrInput `pulumi:"trustedCa"` +type maintenanceWindowPtrType MaintenanceWindowArgs + +func MaintenanceWindowPtr(v *MaintenanceWindowArgs) MaintenanceWindowPtrInput { + return (*maintenanceWindowPtrType)(v) } -func (ManagedClusterHTTPProxyConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterHTTPProxyConfig)(nil)).Elem() -} - -func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigOutput() ManagedClusterHTTPProxyConfigOutput { - return i.ToManagedClusterHTTPProxyConfigOutputWithContext(context.Background()) -} - -func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterHTTPProxyConfigOutput) -} - -func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { - return i.ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Background()) -} - -func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterHTTPProxyConfigOutput).ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx) +func (*maintenanceWindowPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MaintenanceWindow)(nil)).Elem() } -// ManagedClusterHTTPProxyConfigPtrInput is an input type that accepts ManagedClusterHTTPProxyConfigArgs, ManagedClusterHTTPProxyConfigPtr and ManagedClusterHTTPProxyConfigPtrOutput values. -// You can construct a concrete instance of `ManagedClusterHTTPProxyConfigPtrInput` via: -// -// ManagedClusterHTTPProxyConfigArgs{...} -// -// or: -// -// nil -type ManagedClusterHTTPProxyConfigPtrInput interface { - pulumi.Input - - ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput - ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Context) ManagedClusterHTTPProxyConfigPtrOutput +func (i *maintenanceWindowPtrType) ToMaintenanceWindowPtrOutput() MaintenanceWindowPtrOutput { + return i.ToMaintenanceWindowPtrOutputWithContext(context.Background()) } -type managedClusterHTTPProxyConfigPtrType ManagedClusterHTTPProxyConfigArgs - -func ManagedClusterHTTPProxyConfigPtr(v *ManagedClusterHTTPProxyConfigArgs) ManagedClusterHTTPProxyConfigPtrInput { - return (*managedClusterHTTPProxyConfigPtrType)(v) +func (i *maintenanceWindowPtrType) ToMaintenanceWindowPtrOutputWithContext(ctx context.Context) MaintenanceWindowPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MaintenanceWindowPtrOutput) } -func (*managedClusterHTTPProxyConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterHTTPProxyConfig)(nil)).Elem() -} +// Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster. +type MaintenanceWindowOutput struct{ *pulumi.OutputState } -func (i *managedClusterHTTPProxyConfigPtrType) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { - return i.ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Background()) +func (MaintenanceWindowOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MaintenanceWindow)(nil)).Elem() } -func (i *managedClusterHTTPProxyConfigPtrType) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterHTTPProxyConfigPtrOutput) +func (o MaintenanceWindowOutput) ToMaintenanceWindowOutput() MaintenanceWindowOutput { + return o } -// Cluster HTTP proxy configuration. -type ManagedClusterHTTPProxyConfigOutput struct{ *pulumi.OutputState } - -func (ManagedClusterHTTPProxyConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterHTTPProxyConfig)(nil)).Elem() +func (o MaintenanceWindowOutput) ToMaintenanceWindowOutputWithContext(ctx context.Context) MaintenanceWindowOutput { + return o } -func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigOutput() ManagedClusterHTTPProxyConfigOutput { - return o +func (o MaintenanceWindowOutput) ToMaintenanceWindowPtrOutput() MaintenanceWindowPtrOutput { + return o.ToMaintenanceWindowPtrOutputWithContext(context.Background()) } -func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigOutput { - return o +func (o MaintenanceWindowOutput) ToMaintenanceWindowPtrOutputWithContext(ctx context.Context) MaintenanceWindowPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MaintenanceWindow) *MaintenanceWindow { + return &v + }).(MaintenanceWindowPtrOutput) } -func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { - return o.ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Background()) +// Length of maintenance window range from 4 to 24 hours. +func (o MaintenanceWindowOutput) DurationHours() pulumi.IntOutput { + return o.ApplyT(func(v MaintenanceWindow) int { return v.DurationHours }).(pulumi.IntOutput) } -func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterHTTPProxyConfig) *ManagedClusterHTTPProxyConfig { - return &v - }).(ManagedClusterHTTPProxyConfigPtrOutput) +// Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. +func (o MaintenanceWindowOutput) NotAllowedDates() DateSpanArrayOutput { + return o.ApplyT(func(v MaintenanceWindow) []DateSpan { return v.NotAllowedDates }).(DateSpanArrayOutput) } -// The HTTP proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigOutput) HttpProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) *string { return v.HttpProxy }).(pulumi.StringPtrOutput) +// Recurrence schedule for the maintenance window. +func (o MaintenanceWindowOutput) Schedule() ScheduleOutput { + return o.ApplyT(func(v MaintenanceWindow) Schedule { return v.Schedule }).(ScheduleOutput) } -// The HTTPS proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigOutput) HttpsProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) *string { return v.HttpsProxy }).(pulumi.StringPtrOutput) +// The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. +func (o MaintenanceWindowOutput) StartDate() pulumi.StringPtrOutput { + return o.ApplyT(func(v MaintenanceWindow) *string { return v.StartDate }).(pulumi.StringPtrOutput) } -// The endpoints that should not go through proxy. -func (o ManagedClusterHTTPProxyConfigOutput) NoProxy() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) []string { return v.NoProxy }).(pulumi.StringArrayOutput) +// The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. +func (o MaintenanceWindowOutput) StartTime() pulumi.StringOutput { + return o.ApplyT(func(v MaintenanceWindow) string { return v.StartTime }).(pulumi.StringOutput) } -// Alternative CA cert to use for connecting to proxy servers. -func (o ManagedClusterHTTPProxyConfigOutput) TrustedCa() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) *string { return v.TrustedCa }).(pulumi.StringPtrOutput) +// The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. +func (o MaintenanceWindowOutput) UtcOffset() pulumi.StringPtrOutput { + return o.ApplyT(func(v MaintenanceWindow) *string { return v.UtcOffset }).(pulumi.StringPtrOutput) } -type ManagedClusterHTTPProxyConfigPtrOutput struct{ *pulumi.OutputState } +type MaintenanceWindowPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterHTTPProxyConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterHTTPProxyConfig)(nil)).Elem() +func (MaintenanceWindowPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MaintenanceWindow)(nil)).Elem() } -func (o ManagedClusterHTTPProxyConfigPtrOutput) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { +func (o MaintenanceWindowPtrOutput) ToMaintenanceWindowPtrOutput() MaintenanceWindowPtrOutput { return o } -func (o ManagedClusterHTTPProxyConfigPtrOutput) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { +func (o MaintenanceWindowPtrOutput) ToMaintenanceWindowPtrOutputWithContext(ctx context.Context) MaintenanceWindowPtrOutput { return o } -func (o ManagedClusterHTTPProxyConfigPtrOutput) Elem() ManagedClusterHTTPProxyConfigOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) ManagedClusterHTTPProxyConfig { +func (o MaintenanceWindowPtrOutput) Elem() MaintenanceWindowOutput { + return o.ApplyT(func(v *MaintenanceWindow) MaintenanceWindow { if v != nil { return *v } - var ret ManagedClusterHTTPProxyConfig + var ret MaintenanceWindow return ret - }).(ManagedClusterHTTPProxyConfigOutput) + }).(MaintenanceWindowOutput) } -// The HTTP proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigPtrOutput) HttpProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) *string { +// Length of maintenance window range from 4 to 24 hours. +func (o MaintenanceWindowPtrOutput) DurationHours() pulumi.IntPtrOutput { + return o.ApplyT(func(v *MaintenanceWindow) *int { if v == nil { return nil } - return v.HttpProxy - }).(pulumi.StringPtrOutput) + return &v.DurationHours + }).(pulumi.IntPtrOutput) } -// The HTTPS proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigPtrOutput) HttpsProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) *string { +// Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. +func (o MaintenanceWindowPtrOutput) NotAllowedDates() DateSpanArrayOutput { + return o.ApplyT(func(v *MaintenanceWindow) []DateSpan { if v == nil { return nil } - return v.HttpsProxy + return v.NotAllowedDates + }).(DateSpanArrayOutput) +} + +// Recurrence schedule for the maintenance window. +func (o MaintenanceWindowPtrOutput) Schedule() SchedulePtrOutput { + return o.ApplyT(func(v *MaintenanceWindow) *Schedule { + if v == nil { + return nil + } + return &v.Schedule + }).(SchedulePtrOutput) +} + +// The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. +func (o MaintenanceWindowPtrOutput) StartDate() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MaintenanceWindow) *string { + if v == nil { + return nil + } + return v.StartDate }).(pulumi.StringPtrOutput) } -// The endpoints that should not go through proxy. -func (o ManagedClusterHTTPProxyConfigPtrOutput) NoProxy() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) []string { +// The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. +func (o MaintenanceWindowPtrOutput) StartTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MaintenanceWindow) *string { if v == nil { return nil } - return v.NoProxy - }).(pulumi.StringArrayOutput) + return &v.StartTime + }).(pulumi.StringPtrOutput) } -// Alternative CA cert to use for connecting to proxy servers. -func (o ManagedClusterHTTPProxyConfigPtrOutput) TrustedCa() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) *string { +// The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. +func (o MaintenanceWindowPtrOutput) UtcOffset() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MaintenanceWindow) *string { if v == nil { return nil } - return v.TrustedCa + return v.UtcOffset }).(pulumi.StringPtrOutput) } -// Cluster HTTP proxy configuration. -type ManagedClusterHTTPProxyConfigResponse struct { - // The HTTP proxy server endpoint to use. - HttpProxy *string `pulumi:"httpProxy"` - // The HTTPS proxy server endpoint to use. - HttpsProxy *string `pulumi:"httpsProxy"` - // The endpoints that should not go through proxy. - NoProxy []string `pulumi:"noProxy"` - // Alternative CA cert to use for connecting to proxy servers. - TrustedCa *string `pulumi:"trustedCa"` +// Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster. +type MaintenanceWindowResponse struct { + // Length of maintenance window range from 4 to 24 hours. + DurationHours int `pulumi:"durationHours"` + // Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. + NotAllowedDates []DateSpanResponse `pulumi:"notAllowedDates"` + // Recurrence schedule for the maintenance window. + Schedule ScheduleResponse `pulumi:"schedule"` + // The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. + StartDate *string `pulumi:"startDate"` + // The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. + StartTime string `pulumi:"startTime"` + // The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. + UtcOffset *string `pulumi:"utcOffset"` } -// Cluster HTTP proxy configuration. -type ManagedClusterHTTPProxyConfigResponseOutput struct{ *pulumi.OutputState } +// Defaults sets the appropriate defaults for MaintenanceWindowResponse +func (val *MaintenanceWindowResponse) Defaults() *MaintenanceWindowResponse { + if val == nil { + return nil + } + tmp := *val + if utilities.IsZero(tmp.DurationHours) { + tmp.DurationHours = 24 + } + return &tmp +} -func (ManagedClusterHTTPProxyConfigResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterHTTPProxyConfigResponse)(nil)).Elem() +// Maintenance window used to configure scheduled auto-upgrade for a Managed Cluster. +type MaintenanceWindowResponseOutput struct{ *pulumi.OutputState } + +func (MaintenanceWindowResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MaintenanceWindowResponse)(nil)).Elem() } -func (o ManagedClusterHTTPProxyConfigResponseOutput) ToManagedClusterHTTPProxyConfigResponseOutput() ManagedClusterHTTPProxyConfigResponseOutput { +func (o MaintenanceWindowResponseOutput) ToMaintenanceWindowResponseOutput() MaintenanceWindowResponseOutput { return o } -func (o ManagedClusterHTTPProxyConfigResponseOutput) ToManagedClusterHTTPProxyConfigResponseOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigResponseOutput { +func (o MaintenanceWindowResponseOutput) ToMaintenanceWindowResponseOutputWithContext(ctx context.Context) MaintenanceWindowResponseOutput { return o } -// The HTTP proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigResponseOutput) HttpProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) *string { return v.HttpProxy }).(pulumi.StringPtrOutput) +// Length of maintenance window range from 4 to 24 hours. +func (o MaintenanceWindowResponseOutput) DurationHours() pulumi.IntOutput { + return o.ApplyT(func(v MaintenanceWindowResponse) int { return v.DurationHours }).(pulumi.IntOutput) } -// The HTTPS proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigResponseOutput) HttpsProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) *string { return v.HttpsProxy }).(pulumi.StringPtrOutput) +// Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. +func (o MaintenanceWindowResponseOutput) NotAllowedDates() DateSpanResponseArrayOutput { + return o.ApplyT(func(v MaintenanceWindowResponse) []DateSpanResponse { return v.NotAllowedDates }).(DateSpanResponseArrayOutput) } -// The endpoints that should not go through proxy. -func (o ManagedClusterHTTPProxyConfigResponseOutput) NoProxy() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) []string { return v.NoProxy }).(pulumi.StringArrayOutput) +// Recurrence schedule for the maintenance window. +func (o MaintenanceWindowResponseOutput) Schedule() ScheduleResponseOutput { + return o.ApplyT(func(v MaintenanceWindowResponse) ScheduleResponse { return v.Schedule }).(ScheduleResponseOutput) } -// Alternative CA cert to use for connecting to proxy servers. -func (o ManagedClusterHTTPProxyConfigResponseOutput) TrustedCa() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) *string { return v.TrustedCa }).(pulumi.StringPtrOutput) +// The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. +func (o MaintenanceWindowResponseOutput) StartDate() pulumi.StringPtrOutput { + return o.ApplyT(func(v MaintenanceWindowResponse) *string { return v.StartDate }).(pulumi.StringPtrOutput) } -type ManagedClusterHTTPProxyConfigResponsePtrOutput struct{ *pulumi.OutputState } +// The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. +func (o MaintenanceWindowResponseOutput) StartTime() pulumi.StringOutput { + return o.ApplyT(func(v MaintenanceWindowResponse) string { return v.StartTime }).(pulumi.StringOutput) +} -func (ManagedClusterHTTPProxyConfigResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterHTTPProxyConfigResponse)(nil)).Elem() +// The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. +func (o MaintenanceWindowResponseOutput) UtcOffset() pulumi.StringPtrOutput { + return o.ApplyT(func(v MaintenanceWindowResponse) *string { return v.UtcOffset }).(pulumi.StringPtrOutput) } -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) ToManagedClusterHTTPProxyConfigResponsePtrOutput() ManagedClusterHTTPProxyConfigResponsePtrOutput { +type MaintenanceWindowResponsePtrOutput struct{ *pulumi.OutputState } + +func (MaintenanceWindowResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MaintenanceWindowResponse)(nil)).Elem() +} + +func (o MaintenanceWindowResponsePtrOutput) ToMaintenanceWindowResponsePtrOutput() MaintenanceWindowResponsePtrOutput { return o } -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) ToManagedClusterHTTPProxyConfigResponsePtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigResponsePtrOutput { +func (o MaintenanceWindowResponsePtrOutput) ToMaintenanceWindowResponsePtrOutputWithContext(ctx context.Context) MaintenanceWindowResponsePtrOutput { return o } -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) Elem() ManagedClusterHTTPProxyConfigResponseOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) ManagedClusterHTTPProxyConfigResponse { +func (o MaintenanceWindowResponsePtrOutput) Elem() MaintenanceWindowResponseOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) MaintenanceWindowResponse { if v != nil { return *v } - var ret ManagedClusterHTTPProxyConfigResponse + var ret MaintenanceWindowResponse return ret - }).(ManagedClusterHTTPProxyConfigResponseOutput) + }).(MaintenanceWindowResponseOutput) } -// The HTTP proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) HttpProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) *string { +// Length of maintenance window range from 4 to 24 hours. +func (o MaintenanceWindowResponsePtrOutput) DurationHours() pulumi.IntPtrOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) *int { if v == nil { return nil } - return v.HttpProxy - }).(pulumi.StringPtrOutput) + return &v.DurationHours + }).(pulumi.IntPtrOutput) } -// The HTTPS proxy server endpoint to use. -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) HttpsProxy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) *string { +// Date ranges on which upgrade is not allowed. 'utcOffset' applies to this field. For example, with 'utcOffset: +02:00' and 'dateSpan' being '2022-12-23' to '2023-01-03', maintenance will be blocked from '2022-12-22 22:00' to '2023-01-03 22:00' in UTC time. +func (o MaintenanceWindowResponsePtrOutput) NotAllowedDates() DateSpanResponseArrayOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) []DateSpanResponse { if v == nil { return nil } - return v.HttpsProxy + return v.NotAllowedDates + }).(DateSpanResponseArrayOutput) +} + +// Recurrence schedule for the maintenance window. +func (o MaintenanceWindowResponsePtrOutput) Schedule() ScheduleResponsePtrOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) *ScheduleResponse { + if v == nil { + return nil + } + return &v.Schedule + }).(ScheduleResponsePtrOutput) +} + +// The date the maintenance window activates. If the current date is before this date, the maintenance window is inactive and will not be used for upgrades. If not specified, the maintenance window will be active right away. +func (o MaintenanceWindowResponsePtrOutput) StartDate() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) *string { + if v == nil { + return nil + } + return v.StartDate }).(pulumi.StringPtrOutput) } -// The endpoints that should not go through proxy. -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) NoProxy() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) []string { +// The start time of the maintenance window. Accepted values are from '00:00' to '23:59'. 'utcOffset' applies to this field. For example: '02:00' with 'utcOffset: +02:00' means UTC time '00:00'. +func (o MaintenanceWindowResponsePtrOutput) StartTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) *string { if v == nil { return nil } - return v.NoProxy - }).(pulumi.StringArrayOutput) + return &v.StartTime + }).(pulumi.StringPtrOutput) } -// Alternative CA cert to use for connecting to proxy servers. -func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) TrustedCa() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) *string { +// The UTC offset in format +/-HH:mm. For example, '+05:30' for IST and '-07:00' for PST. If not specified, the default is '+00:00'. +func (o MaintenanceWindowResponsePtrOutput) UtcOffset() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MaintenanceWindowResponse) *string { if v == nil { return nil } - return v.TrustedCa + return v.UtcOffset }).(pulumi.StringPtrOutput) } -// Identity for the managed cluster. -type ManagedClusterIdentity struct { - // For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). - Type *ResourceIdentityType `pulumi:"type"` - // The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. - UserAssignedIdentities []string `pulumi:"userAssignedIdentities"` +// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). +type ManagedClusterAADProfile struct { + // The list of AAD group object IDs that will have admin role of the cluster. + AdminGroupObjectIDs []string `pulumi:"adminGroupObjectIDs"` + // (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. + ClientAppID *string `pulumi:"clientAppID"` + // Whether to enable Azure RBAC for Kubernetes authorization. + EnableAzureRBAC *bool `pulumi:"enableAzureRBAC"` + // Whether to enable managed AAD. + Managed *bool `pulumi:"managed"` + // (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. + ServerAppID *string `pulumi:"serverAppID"` + // (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. + ServerAppSecret *string `pulumi:"serverAppSecret"` + // The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. + TenantID *string `pulumi:"tenantID"` } -// ManagedClusterIdentityInput is an input type that accepts ManagedClusterIdentityArgs and ManagedClusterIdentityOutput values. -// You can construct a concrete instance of `ManagedClusterIdentityInput` via: +// ManagedClusterAADProfileInput is an input type that accepts ManagedClusterAADProfileArgs and ManagedClusterAADProfileOutput values. +// You can construct a concrete instance of `ManagedClusterAADProfileInput` via: // -// ManagedClusterIdentityArgs{...} -type ManagedClusterIdentityInput interface { +// ManagedClusterAADProfileArgs{...} +type ManagedClusterAADProfileInput interface { pulumi.Input - ToManagedClusterIdentityOutput() ManagedClusterIdentityOutput - ToManagedClusterIdentityOutputWithContext(context.Context) ManagedClusterIdentityOutput + ToManagedClusterAADProfileOutput() ManagedClusterAADProfileOutput + ToManagedClusterAADProfileOutputWithContext(context.Context) ManagedClusterAADProfileOutput } -// Identity for the managed cluster. -type ManagedClusterIdentityArgs struct { - // For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). - Type ResourceIdentityTypePtrInput `pulumi:"type"` - // The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. - UserAssignedIdentities pulumi.StringArrayInput `pulumi:"userAssignedIdentities"` +// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). +type ManagedClusterAADProfileArgs struct { + // The list of AAD group object IDs that will have admin role of the cluster. + AdminGroupObjectIDs pulumi.StringArrayInput `pulumi:"adminGroupObjectIDs"` + // (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. + ClientAppID pulumi.StringPtrInput `pulumi:"clientAppID"` + // Whether to enable Azure RBAC for Kubernetes authorization. + EnableAzureRBAC pulumi.BoolPtrInput `pulumi:"enableAzureRBAC"` + // Whether to enable managed AAD. + Managed pulumi.BoolPtrInput `pulumi:"managed"` + // (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. + ServerAppID pulumi.StringPtrInput `pulumi:"serverAppID"` + // (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. + ServerAppSecret pulumi.StringPtrInput `pulumi:"serverAppSecret"` + // The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. + TenantID pulumi.StringPtrInput `pulumi:"tenantID"` } -func (ManagedClusterIdentityArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterIdentity)(nil)).Elem() +func (ManagedClusterAADProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAADProfile)(nil)).Elem() } -func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityOutput() ManagedClusterIdentityOutput { - return i.ToManagedClusterIdentityOutputWithContext(context.Background()) +func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfileOutput() ManagedClusterAADProfileOutput { + return i.ToManagedClusterAADProfileOutputWithContext(context.Background()) } -func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityOutputWithContext(ctx context.Context) ManagedClusterIdentityOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIdentityOutput) +func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfileOutputWithContext(ctx context.Context) ManagedClusterAADProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAADProfileOutput) } -func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { - return i.ToManagedClusterIdentityPtrOutputWithContext(context.Background()) +func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { + return i.ToManagedClusterAADProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIdentityOutput).ToManagedClusterIdentityPtrOutputWithContext(ctx) +func (i ManagedClusterAADProfileArgs) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAADProfileOutput).ToManagedClusterAADProfilePtrOutputWithContext(ctx) } -// ManagedClusterIdentityPtrInput is an input type that accepts ManagedClusterIdentityArgs, ManagedClusterIdentityPtr and ManagedClusterIdentityPtrOutput values. -// You can construct a concrete instance of `ManagedClusterIdentityPtrInput` via: +// ManagedClusterAADProfilePtrInput is an input type that accepts ManagedClusterAADProfileArgs, ManagedClusterAADProfilePtr and ManagedClusterAADProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterAADProfilePtrInput` via: // -// ManagedClusterIdentityArgs{...} +// ManagedClusterAADProfileArgs{...} // // or: // // nil -type ManagedClusterIdentityPtrInput interface { +type ManagedClusterAADProfilePtrInput interface { pulumi.Input - ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput - ToManagedClusterIdentityPtrOutputWithContext(context.Context) ManagedClusterIdentityPtrOutput + ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput + ToManagedClusterAADProfilePtrOutputWithContext(context.Context) ManagedClusterAADProfilePtrOutput } -type managedClusterIdentityPtrType ManagedClusterIdentityArgs +type managedClusterAADProfilePtrType ManagedClusterAADProfileArgs -func ManagedClusterIdentityPtr(v *ManagedClusterIdentityArgs) ManagedClusterIdentityPtrInput { - return (*managedClusterIdentityPtrType)(v) +func ManagedClusterAADProfilePtr(v *ManagedClusterAADProfileArgs) ManagedClusterAADProfilePtrInput { + return (*managedClusterAADProfilePtrType)(v) } -func (*managedClusterIdentityPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterIdentity)(nil)).Elem() +func (*managedClusterAADProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAADProfile)(nil)).Elem() } -func (i *managedClusterIdentityPtrType) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { - return i.ToManagedClusterIdentityPtrOutputWithContext(context.Background()) +func (i *managedClusterAADProfilePtrType) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { + return i.ToManagedClusterAADProfilePtrOutputWithContext(context.Background()) } -func (i *managedClusterIdentityPtrType) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIdentityPtrOutput) +func (i *managedClusterAADProfilePtrType) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAADProfilePtrOutput) } -// Identity for the managed cluster. -type ManagedClusterIdentityOutput struct{ *pulumi.OutputState } +// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). +type ManagedClusterAADProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterIdentityOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterIdentity)(nil)).Elem() +func (ManagedClusterAADProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAADProfile)(nil)).Elem() } -func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityOutput() ManagedClusterIdentityOutput { +func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfileOutput() ManagedClusterAADProfileOutput { return o } -func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityOutputWithContext(ctx context.Context) ManagedClusterIdentityOutput { +func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfileOutputWithContext(ctx context.Context) ManagedClusterAADProfileOutput { return o } -func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { - return o.ToManagedClusterIdentityPtrOutputWithContext(context.Background()) +func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { + return o.ToManagedClusterAADProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterIdentity) *ManagedClusterIdentity { +func (o ManagedClusterAADProfileOutput) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAADProfile) *ManagedClusterAADProfile { return &v - }).(ManagedClusterIdentityPtrOutput) -} - -// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). -func (o ManagedClusterIdentityOutput) Type() ResourceIdentityTypePtrOutput { - return o.ApplyT(func(v ManagedClusterIdentity) *ResourceIdentityType { return v.Type }).(ResourceIdentityTypePtrOutput) -} - -// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. -func (o ManagedClusterIdentityOutput) UserAssignedIdentities() pulumi.StringArrayOutput { - return o.ApplyT(func(v ManagedClusterIdentity) []string { return v.UserAssignedIdentities }).(pulumi.StringArrayOutput) -} - -type ManagedClusterIdentityPtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterIdentityPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterIdentity)(nil)).Elem() -} - -func (o ManagedClusterIdentityPtrOutput) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { - return o -} - -func (o ManagedClusterIdentityPtrOutput) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { - return o -} - -func (o ManagedClusterIdentityPtrOutput) Elem() ManagedClusterIdentityOutput { - return o.ApplyT(func(v *ManagedClusterIdentity) ManagedClusterIdentity { - if v != nil { - return *v - } - var ret ManagedClusterIdentity - return ret - }).(ManagedClusterIdentityOutput) -} - -// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). -func (o ManagedClusterIdentityPtrOutput) Type() ResourceIdentityTypePtrOutput { - return o.ApplyT(func(v *ManagedClusterIdentity) *ResourceIdentityType { - if v == nil { - return nil - } - return v.Type - }).(ResourceIdentityTypePtrOutput) -} - -// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. -func (o ManagedClusterIdentityPtrOutput) UserAssignedIdentities() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ManagedClusterIdentity) []string { - if v == nil { - return nil - } - return v.UserAssignedIdentities - }).(pulumi.StringArrayOutput) -} - -// Identity for the managed cluster. -type ManagedClusterIdentityResponse struct { - // The principal id of the system assigned identity which is used by master components. - PrincipalId string `pulumi:"principalId"` - // The tenant id of the system assigned identity which is used by master components. - TenantId string `pulumi:"tenantId"` - // For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). - Type *string `pulumi:"type"` - // The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. - UserAssignedIdentities map[string]ManagedClusterIdentityResponseUserAssignedIdentities `pulumi:"userAssignedIdentities"` + }).(ManagedClusterAADProfilePtrOutput) } -// Identity for the managed cluster. -type ManagedClusterIdentityResponseOutput struct{ *pulumi.OutputState } - -func (ManagedClusterIdentityResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterIdentityResponse)(nil)).Elem() +// The list of AAD group object IDs that will have admin role of the cluster. +func (o ManagedClusterAADProfileOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) []string { return v.AdminGroupObjectIDs }).(pulumi.StringArrayOutput) } -func (o ManagedClusterIdentityResponseOutput) ToManagedClusterIdentityResponseOutput() ManagedClusterIdentityResponseOutput { - return o +// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileOutput) ClientAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.ClientAppID }).(pulumi.StringPtrOutput) } -func (o ManagedClusterIdentityResponseOutput) ToManagedClusterIdentityResponseOutputWithContext(ctx context.Context) ManagedClusterIdentityResponseOutput { - return o +// Whether to enable Azure RBAC for Kubernetes authorization. +func (o ManagedClusterAADProfileOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) *bool { return v.EnableAzureRBAC }).(pulumi.BoolPtrOutput) } -// The principal id of the system assigned identity which is used by master components. -func (o ManagedClusterIdentityResponseOutput) PrincipalId() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterIdentityResponse) string { return v.PrincipalId }).(pulumi.StringOutput) +// Whether to enable managed AAD. +func (o ManagedClusterAADProfileOutput) Managed() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) *bool { return v.Managed }).(pulumi.BoolPtrOutput) } -// The tenant id of the system assigned identity which is used by master components. -func (o ManagedClusterIdentityResponseOutput) TenantId() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterIdentityResponse) string { return v.TenantId }).(pulumi.StringOutput) +// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileOutput) ServerAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.ServerAppID }).(pulumi.StringPtrOutput) } -// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). -func (o ManagedClusterIdentityResponseOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterIdentityResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileOutput) ServerAppSecret() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.ServerAppSecret }).(pulumi.StringPtrOutput) } -// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. -func (o ManagedClusterIdentityResponseOutput) UserAssignedIdentities() ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { - return o.ApplyT(func(v ManagedClusterIdentityResponse) map[string]ManagedClusterIdentityResponseUserAssignedIdentities { - return v.UserAssignedIdentities - }).(ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) +// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. +func (o ManagedClusterAADProfileOutput) TenantID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfile) *string { return v.TenantID }).(pulumi.StringPtrOutput) } -type ManagedClusterIdentityResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterAADProfilePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterIdentityResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterIdentityResponse)(nil)).Elem() +func (ManagedClusterAADProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAADProfile)(nil)).Elem() } -func (o ManagedClusterIdentityResponsePtrOutput) ToManagedClusterIdentityResponsePtrOutput() ManagedClusterIdentityResponsePtrOutput { +func (o ManagedClusterAADProfilePtrOutput) ToManagedClusterAADProfilePtrOutput() ManagedClusterAADProfilePtrOutput { return o } -func (o ManagedClusterIdentityResponsePtrOutput) ToManagedClusterIdentityResponsePtrOutputWithContext(ctx context.Context) ManagedClusterIdentityResponsePtrOutput { +func (o ManagedClusterAADProfilePtrOutput) ToManagedClusterAADProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfilePtrOutput { return o } -func (o ManagedClusterIdentityResponsePtrOutput) Elem() ManagedClusterIdentityResponseOutput { - return o.ApplyT(func(v *ManagedClusterIdentityResponse) ManagedClusterIdentityResponse { +func (o ManagedClusterAADProfilePtrOutput) Elem() ManagedClusterAADProfileOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) ManagedClusterAADProfile { if v != nil { return *v } - var ret ManagedClusterIdentityResponse + var ret ManagedClusterAADProfile return ret - }).(ManagedClusterIdentityResponseOutput) + }).(ManagedClusterAADProfileOutput) } -// The principal id of the system assigned identity which is used by master components. -func (o ManagedClusterIdentityResponsePtrOutput) PrincipalId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterIdentityResponse) *string { +// The list of AAD group object IDs that will have admin role of the cluster. +func (o ManagedClusterAADProfilePtrOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) []string { if v == nil { return nil } - return &v.PrincipalId - }).(pulumi.StringPtrOutput) + return v.AdminGroupObjectIDs + }).(pulumi.StringArrayOutput) } -// The tenant id of the system assigned identity which is used by master components. -func (o ManagedClusterIdentityResponsePtrOutput) TenantId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterIdentityResponse) *string { +// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfilePtrOutput) ClientAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) *string { if v == nil { return nil } - return &v.TenantId + return v.ClientAppID }).(pulumi.StringPtrOutput) } -// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). -func (o ManagedClusterIdentityResponsePtrOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterIdentityResponse) *string { +// Whether to enable Azure RBAC for Kubernetes authorization. +func (o ManagedClusterAADProfilePtrOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) *bool { if v == nil { return nil } - return v.Type - }).(pulumi.StringPtrOutput) + return v.EnableAzureRBAC + }).(pulumi.BoolPtrOutput) } -// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. -func (o ManagedClusterIdentityResponsePtrOutput) UserAssignedIdentities() ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { - return o.ApplyT(func(v *ManagedClusterIdentityResponse) map[string]ManagedClusterIdentityResponseUserAssignedIdentities { +// Whether to enable managed AAD. +func (o ManagedClusterAADProfilePtrOutput) Managed() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) *bool { if v == nil { return nil } - return v.UserAssignedIdentities - }).(ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) + return v.Managed + }).(pulumi.BoolPtrOutput) } -type ManagedClusterIdentityResponseUserAssignedIdentities struct { - // The client id of user assigned identity. - ClientId string `pulumi:"clientId"` - // The principal id of user assigned identity. - PrincipalId string `pulumi:"principalId"` +// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfilePtrOutput) ServerAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) *string { + if v == nil { + return nil + } + return v.ServerAppID + }).(pulumi.StringPtrOutput) } -type ManagedClusterIdentityResponseUserAssignedIdentitiesOutput struct{ *pulumi.OutputState } - -func (ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterIdentityResponseUserAssignedIdentities)(nil)).Elem() +// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfilePtrOutput) ServerAppSecret() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) *string { + if v == nil { + return nil + } + return v.ServerAppSecret + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesOutput() ManagedClusterIdentityResponseUserAssignedIdentitiesOutput { - return o -} - -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesOutputWithContext(ctx context.Context) ManagedClusterIdentityResponseUserAssignedIdentitiesOutput { - return o -} - -// The client id of user assigned identity. -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ClientId() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterIdentityResponseUserAssignedIdentities) string { return v.ClientId }).(pulumi.StringOutput) +// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. +func (o ManagedClusterAADProfilePtrOutput) TenantID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfile) *string { + if v == nil { + return nil + } + return v.TenantID + }).(pulumi.StringPtrOutput) } -// The principal id of user assigned identity. -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) PrincipalId() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterIdentityResponseUserAssignedIdentities) string { return v.PrincipalId }).(pulumi.StringOutput) +// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). +type ManagedClusterAADProfileResponse struct { + // The list of AAD group object IDs that will have admin role of the cluster. + AdminGroupObjectIDs []string `pulumi:"adminGroupObjectIDs"` + // (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. + ClientAppID *string `pulumi:"clientAppID"` + // Whether to enable Azure RBAC for Kubernetes authorization. + EnableAzureRBAC *bool `pulumi:"enableAzureRBAC"` + // Whether to enable managed AAD. + Managed *bool `pulumi:"managed"` + // (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. + ServerAppID *string `pulumi:"serverAppID"` + // (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. + ServerAppSecret *string `pulumi:"serverAppSecret"` + // The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. + TenantID *string `pulumi:"tenantID"` } -type ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput struct{ *pulumi.OutputState } +// For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad). +type ManagedClusterAADProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) ElementType() reflect.Type { - return reflect.TypeOf((*map[string]ManagedClusterIdentityResponseUserAssignedIdentities)(nil)).Elem() +func (ManagedClusterAADProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAADProfileResponse)(nil)).Elem() } -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput() ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { +func (o ManagedClusterAADProfileResponseOutput) ToManagedClusterAADProfileResponseOutput() ManagedClusterAADProfileResponseOutput { return o } -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesMapOutputWithContext(ctx context.Context) ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { +func (o ManagedClusterAADProfileResponseOutput) ToManagedClusterAADProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAADProfileResponseOutput { return o } -func (o ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) MapIndex(k pulumi.StringInput) ManagedClusterIdentityResponseUserAssignedIdentitiesOutput { - return pulumi.All(o, k).ApplyT(func(vs []interface{}) ManagedClusterIdentityResponseUserAssignedIdentities { - return vs[0].(map[string]ManagedClusterIdentityResponseUserAssignedIdentities)[vs[1].(string)] - }).(ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) -} - -// Profile of the managed cluster load balancer. -type ManagedClusterLoadBalancerProfile struct { - // The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. - AllocatedOutboundPorts *int `pulumi:"allocatedOutboundPorts"` - // The effective outbound IP resources of the cluster load balancer. - EffectiveOutboundIPs []ResourceReference `pulumi:"effectiveOutboundIPs"` - // Enable multiple standard load balancers per AKS cluster or not. - EnableMultipleStandardLoadBalancers *bool `pulumi:"enableMultipleStandardLoadBalancers"` - // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. - IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` - // Desired managed outbound IPs for the cluster load balancer. - ManagedOutboundIPs *ManagedClusterLoadBalancerProfileManagedOutboundIPs `pulumi:"managedOutboundIPs"` - // Desired outbound IP Prefix resources for the cluster load balancer. - OutboundIPPrefixes *ManagedClusterLoadBalancerProfileOutboundIPPrefixes `pulumi:"outboundIPPrefixes"` - // Desired outbound IP resources for the cluster load balancer. - OutboundIPs *ManagedClusterLoadBalancerProfileOutboundIPs `pulumi:"outboundIPs"` +// The list of AAD group object IDs that will have admin role of the cluster. +func (o ManagedClusterAADProfileResponseOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) []string { return v.AdminGroupObjectIDs }).(pulumi.StringArrayOutput) } -// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfile -func (val *ManagedClusterLoadBalancerProfile) Defaults() *ManagedClusterLoadBalancerProfile { - if val == nil { - return nil - } - tmp := *val - if tmp.AllocatedOutboundPorts == nil { - allocatedOutboundPorts_ := 0 - tmp.AllocatedOutboundPorts = &allocatedOutboundPorts_ - } - if tmp.IdleTimeoutInMinutes == nil { - idleTimeoutInMinutes_ := 30 - tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ - } - tmp.ManagedOutboundIPs = tmp.ManagedOutboundIPs.Defaults() - - return &tmp +// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileResponseOutput) ClientAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.ClientAppID }).(pulumi.StringPtrOutput) } -// ManagedClusterLoadBalancerProfileInput is an input type that accepts ManagedClusterLoadBalancerProfileArgs and ManagedClusterLoadBalancerProfileOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileInput` via: -// -// ManagedClusterLoadBalancerProfileArgs{...} -type ManagedClusterLoadBalancerProfileInput interface { - pulumi.Input - - ToManagedClusterLoadBalancerProfileOutput() ManagedClusterLoadBalancerProfileOutput - ToManagedClusterLoadBalancerProfileOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutput +// Whether to enable Azure RBAC for Kubernetes authorization. +func (o ManagedClusterAADProfileResponseOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) *bool { return v.EnableAzureRBAC }).(pulumi.BoolPtrOutput) } -// Profile of the managed cluster load balancer. -type ManagedClusterLoadBalancerProfileArgs struct { - // The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. - AllocatedOutboundPorts pulumi.IntPtrInput `pulumi:"allocatedOutboundPorts"` - // The effective outbound IP resources of the cluster load balancer. - EffectiveOutboundIPs ResourceReferenceArrayInput `pulumi:"effectiveOutboundIPs"` - // Enable multiple standard load balancers per AKS cluster or not. - EnableMultipleStandardLoadBalancers pulumi.BoolPtrInput `pulumi:"enableMultipleStandardLoadBalancers"` - // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. - IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"` - // Desired managed outbound IPs for the cluster load balancer. - ManagedOutboundIPs ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput `pulumi:"managedOutboundIPs"` - // Desired outbound IP Prefix resources for the cluster load balancer. - OutboundIPPrefixes ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput `pulumi:"outboundIPPrefixes"` - // Desired outbound IP resources for the cluster load balancer. - OutboundIPs ManagedClusterLoadBalancerProfileOutboundIPsPtrInput `pulumi:"outboundIPs"` +// Whether to enable managed AAD. +func (o ManagedClusterAADProfileResponseOutput) Managed() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) *bool { return v.Managed }).(pulumi.BoolPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileArgs -func (val *ManagedClusterLoadBalancerProfileArgs) Defaults() *ManagedClusterLoadBalancerProfileArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.AllocatedOutboundPorts == nil { - tmp.AllocatedOutboundPorts = pulumi.IntPtr(0) - } - if tmp.IdleTimeoutInMinutes == nil { - tmp.IdleTimeoutInMinutes = pulumi.IntPtr(30) - } - - return &tmp -} -func (ManagedClusterLoadBalancerProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfile)(nil)).Elem() +// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileResponseOutput) ServerAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.ServerAppID }).(pulumi.StringPtrOutput) } -func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfileOutput() ManagedClusterLoadBalancerProfileOutput { - return i.ToManagedClusterLoadBalancerProfileOutputWithContext(context.Background()) +// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileResponseOutput) ServerAppSecret() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.ServerAppSecret }).(pulumi.StringPtrOutput) } -func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfileOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutput) +// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. +func (o ManagedClusterAADProfileResponseOutput) TenantID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAADProfileResponse) *string { return v.TenantID }).(pulumi.StringPtrOutput) } -func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { - return i.ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Background()) -} +type ManagedClusterAADProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutput).ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx) +func (ManagedClusterAADProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAADProfileResponse)(nil)).Elem() } -// ManagedClusterLoadBalancerProfilePtrInput is an input type that accepts ManagedClusterLoadBalancerProfileArgs, ManagedClusterLoadBalancerProfilePtr and ManagedClusterLoadBalancerProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfilePtrInput` via: -// -// ManagedClusterLoadBalancerProfileArgs{...} -// -// or: -// -// nil -type ManagedClusterLoadBalancerProfilePtrInput interface { - pulumi.Input - - ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput - ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfilePtrOutput +func (o ManagedClusterAADProfileResponsePtrOutput) ToManagedClusterAADProfileResponsePtrOutput() ManagedClusterAADProfileResponsePtrOutput { + return o } -type managedClusterLoadBalancerProfilePtrType ManagedClusterLoadBalancerProfileArgs - -func ManagedClusterLoadBalancerProfilePtr(v *ManagedClusterLoadBalancerProfileArgs) ManagedClusterLoadBalancerProfilePtrInput { - return (*managedClusterLoadBalancerProfilePtrType)(v) +func (o ManagedClusterAADProfileResponsePtrOutput) ToManagedClusterAADProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAADProfileResponsePtrOutput { + return o } -func (*managedClusterLoadBalancerProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfile)(nil)).Elem() +func (o ManagedClusterAADProfileResponsePtrOutput) Elem() ManagedClusterAADProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) ManagedClusterAADProfileResponse { + if v != nil { + return *v + } + var ret ManagedClusterAADProfileResponse + return ret + }).(ManagedClusterAADProfileResponseOutput) } -func (i *managedClusterLoadBalancerProfilePtrType) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { - return i.ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Background()) +// The list of AAD group object IDs that will have admin role of the cluster. +func (o ManagedClusterAADProfileResponsePtrOutput) AdminGroupObjectIDs() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) []string { + if v == nil { + return nil + } + return v.AdminGroupObjectIDs + }).(pulumi.StringArrayOutput) } -func (i *managedClusterLoadBalancerProfilePtrType) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfilePtrOutput) +// (DEPRECATED) The client AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileResponsePtrOutput) ClientAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { + if v == nil { + return nil + } + return v.ClientAppID + }).(pulumi.StringPtrOutput) } -// Profile of the managed cluster load balancer. -type ManagedClusterLoadBalancerProfileOutput struct{ *pulumi.OutputState } - -func (ManagedClusterLoadBalancerProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfile)(nil)).Elem() +// Whether to enable Azure RBAC for Kubernetes authorization. +func (o ManagedClusterAADProfileResponsePtrOutput) EnableAzureRBAC() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *bool { + if v == nil { + return nil + } + return v.EnableAzureRBAC + }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfileOutput() ManagedClusterLoadBalancerProfileOutput { - return o +// Whether to enable managed AAD. +func (o ManagedClusterAADProfileResponsePtrOutput) Managed() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *bool { + if v == nil { + return nil + } + return v.Managed + }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfileOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutput { - return o +// (DEPRECATED) The server AAD application ID. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileResponsePtrOutput) ServerAppID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { + if v == nil { + return nil + } + return v.ServerAppID + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { - return o.ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Background()) +// (DEPRECATED) The server AAD application secret. Learn more at https://aka.ms/aks/aad-legacy. +func (o ManagedClusterAADProfileResponsePtrOutput) ServerAppSecret() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { + if v == nil { + return nil + } + return v.ServerAppSecret + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfile { - return &v - }).(ManagedClusterLoadBalancerProfilePtrOutput) +// The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription. +func (o ManagedClusterAADProfileResponsePtrOutput) TenantID() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAADProfileResponse) *string { + if v == nil { + return nil + } + return v.TenantID + }).(pulumi.StringPtrOutput) } -// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. -func (o ManagedClusterLoadBalancerProfileOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *int { return v.AllocatedOutboundPorts }).(pulumi.IntPtrOutput) +// Access profile for managed cluster API server. +type ManagedClusterAPIServerAccessProfile struct { + // IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). + AuthorizedIPRanges []string `pulumi:"authorizedIPRanges"` + // Whether to disable run command for the cluster or not. + DisableRunCommand *bool `pulumi:"disableRunCommand"` + // For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). + EnablePrivateCluster *bool `pulumi:"enablePrivateCluster"` + // Whether to create additional public FQDN for private cluster or not. + EnablePrivateClusterPublicFQDN *bool `pulumi:"enablePrivateClusterPublicFQDN"` + // The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. + PrivateDNSZone *string `pulumi:"privateDNSZone"` } -// The effective outbound IP resources of the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) []ResourceReference { return v.EffectiveOutboundIPs }).(ResourceReferenceArrayOutput) +// ManagedClusterAPIServerAccessProfileInput is an input type that accepts ManagedClusterAPIServerAccessProfileArgs and ManagedClusterAPIServerAccessProfileOutput values. +// You can construct a concrete instance of `ManagedClusterAPIServerAccessProfileInput` via: +// +// ManagedClusterAPIServerAccessProfileArgs{...} +type ManagedClusterAPIServerAccessProfileInput interface { + pulumi.Input + + ToManagedClusterAPIServerAccessProfileOutput() ManagedClusterAPIServerAccessProfileOutput + ToManagedClusterAPIServerAccessProfileOutputWithContext(context.Context) ManagedClusterAPIServerAccessProfileOutput } -// Enable multiple standard load balancers per AKS cluster or not. -func (o ManagedClusterLoadBalancerProfileOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *bool { return v.EnableMultipleStandardLoadBalancers }).(pulumi.BoolPtrOutput) +// Access profile for managed cluster API server. +type ManagedClusterAPIServerAccessProfileArgs struct { + // IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). + AuthorizedIPRanges pulumi.StringArrayInput `pulumi:"authorizedIPRanges"` + // Whether to disable run command for the cluster or not. + DisableRunCommand pulumi.BoolPtrInput `pulumi:"disableRunCommand"` + // For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). + EnablePrivateCluster pulumi.BoolPtrInput `pulumi:"enablePrivateCluster"` + // Whether to create additional public FQDN for private cluster or not. + EnablePrivateClusterPublicFQDN pulumi.BoolPtrInput `pulumi:"enablePrivateClusterPublicFQDN"` + // The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. + PrivateDNSZone pulumi.StringPtrInput `pulumi:"privateDNSZone"` } -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. -func (o ManagedClusterLoadBalancerProfileOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) +func (ManagedClusterAPIServerAccessProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAPIServerAccessProfile)(nil)).Elem() } -// Desired managed outbound IPs for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileManagedOutboundIPs { - return v.ManagedOutboundIPs - }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) +func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfileOutput() ManagedClusterAPIServerAccessProfileOutput { + return i.ToManagedClusterAPIServerAccessProfileOutputWithContext(context.Background()) } -// Desired outbound IP Prefix resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPPrefixes { - return v.OutboundIPPrefixes - }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) +func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfileOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAPIServerAccessProfileOutput) } -// Desired outbound IP resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileOutput) OutboundIPs() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPs { - return v.OutboundIPs - }).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) +func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { + return i.ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Background()) } -type ManagedClusterLoadBalancerProfilePtrOutput struct{ *pulumi.OutputState } +func (i ManagedClusterAPIServerAccessProfileArgs) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAPIServerAccessProfileOutput).ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx) +} -func (ManagedClusterLoadBalancerProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfile)(nil)).Elem() +// ManagedClusterAPIServerAccessProfilePtrInput is an input type that accepts ManagedClusterAPIServerAccessProfileArgs, ManagedClusterAPIServerAccessProfilePtr and ManagedClusterAPIServerAccessProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterAPIServerAccessProfilePtrInput` via: +// +// ManagedClusterAPIServerAccessProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterAPIServerAccessProfilePtrInput interface { + pulumi.Input + + ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput + ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Context) ManagedClusterAPIServerAccessProfilePtrOutput } -func (o ManagedClusterLoadBalancerProfilePtrOutput) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { +type managedClusterAPIServerAccessProfilePtrType ManagedClusterAPIServerAccessProfileArgs + +func ManagedClusterAPIServerAccessProfilePtr(v *ManagedClusterAPIServerAccessProfileArgs) ManagedClusterAPIServerAccessProfilePtrInput { + return (*managedClusterAPIServerAccessProfilePtrType)(v) +} + +func (*managedClusterAPIServerAccessProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAPIServerAccessProfile)(nil)).Elem() +} + +func (i *managedClusterAPIServerAccessProfilePtrType) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { + return i.ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Background()) +} + +func (i *managedClusterAPIServerAccessProfilePtrType) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAPIServerAccessProfilePtrOutput) +} + +// Access profile for managed cluster API server. +type ManagedClusterAPIServerAccessProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAPIServerAccessProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAPIServerAccessProfile)(nil)).Elem() +} + +func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfileOutput() ManagedClusterAPIServerAccessProfileOutput { return o } -func (o ManagedClusterLoadBalancerProfilePtrOutput) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { +func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfileOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileOutput { return o } -func (o ManagedClusterLoadBalancerProfilePtrOutput) Elem() ManagedClusterLoadBalancerProfileOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) ManagedClusterLoadBalancerProfile { +func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { + return o.ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterAPIServerAccessProfileOutput) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAPIServerAccessProfile) *ManagedClusterAPIServerAccessProfile { + return &v + }).(ManagedClusterAPIServerAccessProfilePtrOutput) +} + +// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). +func (o ManagedClusterAPIServerAccessProfileOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) []string { return v.AuthorizedIPRanges }).(pulumi.StringArrayOutput) +} + +// Whether to disable run command for the cluster or not. +func (o ManagedClusterAPIServerAccessProfileOutput) DisableRunCommand() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *bool { return v.DisableRunCommand }).(pulumi.BoolPtrOutput) +} + +// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). +func (o ManagedClusterAPIServerAccessProfileOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *bool { return v.EnablePrivateCluster }).(pulumi.BoolPtrOutput) +} + +// Whether to create additional public FQDN for private cluster or not. +func (o ManagedClusterAPIServerAccessProfileOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *bool { return v.EnablePrivateClusterPublicFQDN }).(pulumi.BoolPtrOutput) +} + +// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. +func (o ManagedClusterAPIServerAccessProfileOutput) PrivateDNSZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfile) *string { return v.PrivateDNSZone }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAPIServerAccessProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAPIServerAccessProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAPIServerAccessProfile)(nil)).Elem() +} + +func (o ManagedClusterAPIServerAccessProfilePtrOutput) ToManagedClusterAPIServerAccessProfilePtrOutput() ManagedClusterAPIServerAccessProfilePtrOutput { + return o +} + +func (o ManagedClusterAPIServerAccessProfilePtrOutput) ToManagedClusterAPIServerAccessProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfilePtrOutput { + return o +} + +func (o ManagedClusterAPIServerAccessProfilePtrOutput) Elem() ManagedClusterAPIServerAccessProfileOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) ManagedClusterAPIServerAccessProfile { if v != nil { return *v } - var ret ManagedClusterLoadBalancerProfile + var ret ManagedClusterAPIServerAccessProfile return ret - }).(ManagedClusterLoadBalancerProfileOutput) + }).(ManagedClusterAPIServerAccessProfileOutput) } -// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. -func (o ManagedClusterLoadBalancerProfilePtrOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *int { +// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). +func (o ManagedClusterAPIServerAccessProfilePtrOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) []string { if v == nil { return nil } - return v.AllocatedOutboundPorts - }).(pulumi.IntPtrOutput) + return v.AuthorizedIPRanges + }).(pulumi.StringArrayOutput) } -// The effective outbound IP resources of the cluster load balancer. -func (o ManagedClusterLoadBalancerProfilePtrOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) []ResourceReference { +// Whether to disable run command for the cluster or not. +func (o ManagedClusterAPIServerAccessProfilePtrOutput) DisableRunCommand() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *bool { if v == nil { return nil } - return v.EffectiveOutboundIPs - }).(ResourceReferenceArrayOutput) + return v.DisableRunCommand + }).(pulumi.BoolPtrOutput) } -// Enable multiple standard load balancers per AKS cluster or not. -func (o ManagedClusterLoadBalancerProfilePtrOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *bool { +// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). +func (o ManagedClusterAPIServerAccessProfilePtrOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *bool { if v == nil { return nil } - return v.EnableMultipleStandardLoadBalancers + return v.EnablePrivateCluster }).(pulumi.BoolPtrOutput) } -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. -func (o ManagedClusterLoadBalancerProfilePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *int { +// Whether to create additional public FQDN for private cluster or not. +func (o ManagedClusterAPIServerAccessProfilePtrOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *bool { if v == nil { return nil } - return v.IdleTimeoutInMinutes - }).(pulumi.IntPtrOutput) + return v.EnablePrivateClusterPublicFQDN + }).(pulumi.BoolPtrOutput) } -// Desired managed outbound IPs for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfilePtrOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileManagedOutboundIPs { +// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. +func (o ManagedClusterAPIServerAccessProfilePtrOutput) PrivateDNSZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfile) *string { if v == nil { return nil } - return v.ManagedOutboundIPs - }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) + return v.PrivateDNSZone + }).(pulumi.StringPtrOutput) } -// Desired outbound IP Prefix resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfilePtrOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPPrefixes { - if v == nil { - return nil - } - return v.OutboundIPPrefixes - }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) +// Access profile for managed cluster API server. +type ManagedClusterAPIServerAccessProfileResponse struct { + // IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). + AuthorizedIPRanges []string `pulumi:"authorizedIPRanges"` + // Whether to disable run command for the cluster or not. + DisableRunCommand *bool `pulumi:"disableRunCommand"` + // For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). + EnablePrivateCluster *bool `pulumi:"enablePrivateCluster"` + // Whether to create additional public FQDN for private cluster or not. + EnablePrivateClusterPublicFQDN *bool `pulumi:"enablePrivateClusterPublicFQDN"` + // The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. + PrivateDNSZone *string `pulumi:"privateDNSZone"` } -// Desired outbound IP resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfilePtrOutput) OutboundIPs() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPs { - if v == nil { - return nil - } - return v.OutboundIPs - }).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) +// Access profile for managed cluster API server. +type ManagedClusterAPIServerAccessProfileResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAPIServerAccessProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAPIServerAccessProfileResponse)(nil)).Elem() } -// Desired managed outbound IPs for the cluster load balancer. -type ManagedClusterLoadBalancerProfileManagedOutboundIPs struct { - // The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. - Count *int `pulumi:"count"` - // The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. - CountIPv6 *int `pulumi:"countIPv6"` +func (o ManagedClusterAPIServerAccessProfileResponseOutput) ToManagedClusterAPIServerAccessProfileResponseOutput() ManagedClusterAPIServerAccessProfileResponseOutput { + return o } -// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileManagedOutboundIPs -func (val *ManagedClusterLoadBalancerProfileManagedOutboundIPs) Defaults() *ManagedClusterLoadBalancerProfileManagedOutboundIPs { - if val == nil { - return nil - } - tmp := *val - if tmp.Count == nil { - count_ := 1 - tmp.Count = &count_ - } - if tmp.CountIPv6 == nil { - countIPv6_ := 0 - tmp.CountIPv6 = &countIPv6_ - } - return &tmp +func (o ManagedClusterAPIServerAccessProfileResponseOutput) ToManagedClusterAPIServerAccessProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileResponseOutput { + return o } -// ManagedClusterLoadBalancerProfileManagedOutboundIPsInput is an input type that accepts ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs and ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileManagedOutboundIPsInput` via: -// -// ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs{...} -type ManagedClusterLoadBalancerProfileManagedOutboundIPsInput interface { - pulumi.Input +// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). +func (o ManagedClusterAPIServerAccessProfileResponseOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) []string { return v.AuthorizedIPRanges }).(pulumi.StringArrayOutput) +} - ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput - ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput +// Whether to disable run command for the cluster or not. +func (o ManagedClusterAPIServerAccessProfileResponseOutput) DisableRunCommand() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *bool { return v.DisableRunCommand }).(pulumi.BoolPtrOutput) } -// Desired managed outbound IPs for the cluster load balancer. -type ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs struct { - // The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. - Count pulumi.IntPtrInput `pulumi:"count"` - // The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. - CountIPv6 pulumi.IntPtrInput `pulumi:"countIPv6"` +// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). +func (o ManagedClusterAPIServerAccessProfileResponseOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *bool { return v.EnablePrivateCluster }).(pulumi.BoolPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs -func (val *ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) Defaults() *ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.Count == nil { - tmp.Count = pulumi.IntPtr(1) - } - if tmp.CountIPv6 == nil { - tmp.CountIPv6 = pulumi.IntPtr(0) - } - return &tmp +// Whether to create additional public FQDN for private cluster or not. +func (o ManagedClusterAPIServerAccessProfileResponseOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *bool { return v.EnablePrivateClusterPublicFQDN }).(pulumi.BoolPtrOutput) } -func (ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() + +// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. +func (o ManagedClusterAPIServerAccessProfileResponseOutput) PrivateDNSZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAPIServerAccessProfileResponse) *string { return v.PrivateDNSZone }).(pulumi.StringPtrOutput) } -func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { - return i.ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(context.Background()) +type ManagedClusterAPIServerAccessProfileResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAPIServerAccessProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAPIServerAccessProfileResponse)(nil)).Elem() } -func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) ToManagedClusterAPIServerAccessProfileResponsePtrOutput() ManagedClusterAPIServerAccessProfileResponsePtrOutput { + return o } -func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return i.ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Background()) +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) ToManagedClusterAPIServerAccessProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAPIServerAccessProfileResponsePtrOutput { + return o } -func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput).ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx) +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) Elem() ManagedClusterAPIServerAccessProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) ManagedClusterAPIServerAccessProfileResponse { + if v != nil { + return *v + } + var ret ManagedClusterAPIServerAccessProfileResponse + return ret + }).(ManagedClusterAPIServerAccessProfileResponseOutput) } -// ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput is an input type that accepts ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs, ManagedClusterLoadBalancerProfileManagedOutboundIPsPtr and ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput` via: -// -// ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs{...} -// -// or: -// -// nil -type ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput interface { - pulumi.Input +// IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges). +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) AuthorizedIPRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) []string { + if v == nil { + return nil + } + return v.AuthorizedIPRanges + }).(pulumi.StringArrayOutput) +} - ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput - ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput +// Whether to disable run command for the cluster or not. +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) DisableRunCommand() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *bool { + if v == nil { + return nil + } + return v.DisableRunCommand + }).(pulumi.BoolPtrOutput) } -type managedClusterLoadBalancerProfileManagedOutboundIPsPtrType ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs +// For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters). +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) EnablePrivateCluster() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *bool { + if v == nil { + return nil + } + return v.EnablePrivateCluster + }).(pulumi.BoolPtrOutput) +} -func ManagedClusterLoadBalancerProfileManagedOutboundIPsPtr(v *ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput { - return (*managedClusterLoadBalancerProfileManagedOutboundIPsPtrType)(v) +// Whether to create additional public FQDN for private cluster or not. +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) EnablePrivateClusterPublicFQDN() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *bool { + if v == nil { + return nil + } + return v.EnablePrivateClusterPublicFQDN + }).(pulumi.BoolPtrOutput) } -func (*managedClusterLoadBalancerProfileManagedOutboundIPsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() +// The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'. +func (o ManagedClusterAPIServerAccessProfileResponsePtrOutput) PrivateDNSZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAPIServerAccessProfileResponse) *string { + if v == nil { + return nil + } + return v.PrivateDNSZone + }).(pulumi.StringPtrOutput) } -func (i *managedClusterLoadBalancerProfileManagedOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return i.ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Background()) +// A Kubernetes add-on profile for a managed cluster. +type ManagedClusterAddonProfile struct { + // Key-value pairs for configuring an add-on. + Config map[string]string `pulumi:"config"` + // Whether the add-on is enabled or not. + Enabled bool `pulumi:"enabled"` } -func (i *managedClusterLoadBalancerProfileManagedOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) +// ManagedClusterAddonProfileInput is an input type that accepts ManagedClusterAddonProfileArgs and ManagedClusterAddonProfileOutput values. +// You can construct a concrete instance of `ManagedClusterAddonProfileInput` via: +// +// ManagedClusterAddonProfileArgs{...} +type ManagedClusterAddonProfileInput interface { + pulumi.Input + + ToManagedClusterAddonProfileOutput() ManagedClusterAddonProfileOutput + ToManagedClusterAddonProfileOutputWithContext(context.Context) ManagedClusterAddonProfileOutput } -// Desired managed outbound IPs for the cluster load balancer. -type ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput struct{ *pulumi.OutputState } +// A Kubernetes add-on profile for a managed cluster. +type ManagedClusterAddonProfileArgs struct { + // Key-value pairs for configuring an add-on. + Config pulumi.StringMapInput `pulumi:"config"` + // Whether the add-on is enabled or not. + Enabled pulumi.BoolInput `pulumi:"enabled"` +} -func (ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() +func (ManagedClusterAddonProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAddonProfile)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { - return o +func (i ManagedClusterAddonProfileArgs) ToManagedClusterAddonProfileOutput() ManagedClusterAddonProfileOutput { + return i.ToManagedClusterAddonProfileOutputWithContext(context.Background()) } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { - return o +func (i ManagedClusterAddonProfileArgs) ToManagedClusterAddonProfileOutputWithContext(ctx context.Context) ManagedClusterAddonProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAddonProfileOutput) } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return o.ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Background()) +// ManagedClusterAddonProfileMapInput is an input type that accepts ManagedClusterAddonProfileMap and ManagedClusterAddonProfileMapOutput values. +// You can construct a concrete instance of `ManagedClusterAddonProfileMapInput` via: +// +// ManagedClusterAddonProfileMap{ "key": ManagedClusterAddonProfileArgs{...} } +type ManagedClusterAddonProfileMapInput interface { + pulumi.Input + + ToManagedClusterAddonProfileMapOutput() ManagedClusterAddonProfileMapOutput + ToManagedClusterAddonProfileMapOutputWithContext(context.Context) ManagedClusterAddonProfileMapOutput } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfileManagedOutboundIPs) *ManagedClusterLoadBalancerProfileManagedOutboundIPs { - return &v - }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) +type ManagedClusterAddonProfileMap map[string]ManagedClusterAddonProfileInput + +func (ManagedClusterAddonProfileMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]ManagedClusterAddonProfile)(nil)).Elem() } -// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { return v.Count }).(pulumi.IntPtrOutput) +func (i ManagedClusterAddonProfileMap) ToManagedClusterAddonProfileMapOutput() ManagedClusterAddonProfileMapOutput { + return i.ToManagedClusterAddonProfileMapOutputWithContext(context.Background()) } -// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) CountIPv6() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { return v.CountIPv6 }).(pulumi.IntPtrOutput) +func (i ManagedClusterAddonProfileMap) ToManagedClusterAddonProfileMapOutputWithContext(ctx context.Context) ManagedClusterAddonProfileMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAddonProfileMapOutput) } -type ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput struct{ *pulumi.OutputState } +// A Kubernetes add-on profile for a managed cluster. +type ManagedClusterAddonProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() +func (ManagedClusterAddonProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAddonProfile)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { +func (o ManagedClusterAddonProfileOutput) ToManagedClusterAddonProfileOutput() ManagedClusterAddonProfileOutput { return o } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { +func (o ManagedClusterAddonProfileOutput) ToManagedClusterAddonProfileOutputWithContext(ctx context.Context) ManagedClusterAddonProfileOutput { return o } -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileManagedOutboundIPs) ManagedClusterLoadBalancerProfileManagedOutboundIPs { - if v != nil { - return *v - } - var ret ManagedClusterLoadBalancerProfileManagedOutboundIPs - return ret - }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) +// Key-value pairs for configuring an add-on. +func (o ManagedClusterAddonProfileOutput) Config() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterAddonProfile) map[string]string { return v.Config }).(pulumi.StringMapOutput) } -// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { - if v == nil { - return nil - } - return v.Count - }).(pulumi.IntPtrOutput) -} - -// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. -func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) CountIPv6() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { - if v == nil { - return nil - } - return v.CountIPv6 - }).(pulumi.IntPtrOutput) -} - -// Desired outbound IP Prefix resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileOutboundIPPrefixes struct { - // A list of public IP prefix resources. - PublicIPPrefixes []ResourceReference `pulumi:"publicIPPrefixes"` -} - -// ManagedClusterLoadBalancerProfileOutboundIPPrefixesInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs and ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPPrefixesInput` via: -// -// ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs{...} -type ManagedClusterLoadBalancerProfileOutboundIPPrefixesInput interface { - pulumi.Input - - ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput - ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput -} - -// Desired outbound IP Prefix resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs struct { - // A list of public IP prefix resources. - PublicIPPrefixes ResourceReferenceArrayInput `pulumi:"publicIPPrefixes"` -} - -func (ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() -} - -func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { - return i.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(context.Background()) -} - -func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) -} - -func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return i.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Background()) -} - -func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput).ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx) -} - -// ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs, ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtr and ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput` via: -// -// ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs{...} -// -// or: -// -// nil -type ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput interface { - pulumi.Input - - ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput - ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput -} - -type managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs - -func ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtr(v *ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput { - return (*managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType)(v) -} - -func (*managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() -} - -func (i *managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return i.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Background()) -} - -func (i *managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) +// Whether the add-on is enabled or not. +func (o ManagedClusterAddonProfileOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterAddonProfile) bool { return v.Enabled }).(pulumi.BoolOutput) } -// Desired outbound IP Prefix resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput struct{ *pulumi.OutputState } +type ManagedClusterAddonProfileMapOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() +func (ManagedClusterAddonProfileMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]ManagedClusterAddonProfile)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { +func (o ManagedClusterAddonProfileMapOutput) ToManagedClusterAddonProfileMapOutput() ManagedClusterAddonProfileMapOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { +func (o ManagedClusterAddonProfileMapOutput) ToManagedClusterAddonProfileMapOutputWithContext(ctx context.Context) ManagedClusterAddonProfileMapOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return o.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Background()) -} - -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfileOutboundIPPrefixes) *ManagedClusterLoadBalancerProfileOutboundIPPrefixes { - return &v - }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) +func (o ManagedClusterAddonProfileMapOutput) MapIndex(k pulumi.StringInput) ManagedClusterAddonProfileOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) ManagedClusterAddonProfile { + return vs[0].(map[string]ManagedClusterAddonProfile)[vs[1].(string)] + }).(ManagedClusterAddonProfileOutput) } -// A list of public IP prefix resources. -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) PublicIPPrefixes() ResourceReferenceArrayOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileOutboundIPPrefixes) []ResourceReference { - return v.PublicIPPrefixes - }).(ResourceReferenceArrayOutput) +// A Kubernetes add-on profile for a managed cluster. +type ManagedClusterAddonProfileResponse struct { + // Key-value pairs for configuring an add-on. + Config map[string]string `pulumi:"config"` + // Whether the add-on is enabled or not. + Enabled bool `pulumi:"enabled"` + // Information of user assigned identity used by this add-on. + Identity ManagedClusterAddonProfileResponseIdentity `pulumi:"identity"` } -type ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput struct{ *pulumi.OutputState } +// A Kubernetes add-on profile for a managed cluster. +type ManagedClusterAddonProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() +func (ManagedClusterAddonProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAddonProfileResponse)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { +func (o ManagedClusterAddonProfileResponseOutput) ToManagedClusterAddonProfileResponseOutput() ManagedClusterAddonProfileResponseOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { +func (o ManagedClusterAddonProfileResponseOutput) ToManagedClusterAddonProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAddonProfileResponseOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) Elem() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPPrefixes) ManagedClusterLoadBalancerProfileOutboundIPPrefixes { - if v != nil { - return *v - } - var ret ManagedClusterLoadBalancerProfileOutboundIPPrefixes - return ret - }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) +// Key-value pairs for configuring an add-on. +func (o ManagedClusterAddonProfileResponseOutput) Config() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterAddonProfileResponse) map[string]string { return v.Config }).(pulumi.StringMapOutput) } -// A list of public IP prefix resources. -func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) PublicIPPrefixes() ResourceReferenceArrayOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPPrefixes) []ResourceReference { - if v == nil { - return nil - } - return v.PublicIPPrefixes - }).(ResourceReferenceArrayOutput) +// Whether the add-on is enabled or not. +func (o ManagedClusterAddonProfileResponseOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterAddonProfileResponse) bool { return v.Enabled }).(pulumi.BoolOutput) } -// Desired outbound IP resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileOutboundIPs struct { - // A list of public IP resources. - PublicIPs []ResourceReference `pulumi:"publicIPs"` +// Information of user assigned identity used by this add-on. +func (o ManagedClusterAddonProfileResponseOutput) Identity() ManagedClusterAddonProfileResponseIdentityOutput { + return o.ApplyT(func(v ManagedClusterAddonProfileResponse) ManagedClusterAddonProfileResponseIdentity { + return v.Identity + }).(ManagedClusterAddonProfileResponseIdentityOutput) } -// ManagedClusterLoadBalancerProfileOutboundIPsInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPsArgs and ManagedClusterLoadBalancerProfileOutboundIPsOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPsInput` via: -// -// ManagedClusterLoadBalancerProfileOutboundIPsArgs{...} -type ManagedClusterLoadBalancerProfileOutboundIPsInput interface { - pulumi.Input +type ManagedClusterAddonProfileResponseMapOutput struct{ *pulumi.OutputState } - ToManagedClusterLoadBalancerProfileOutboundIPsOutput() ManagedClusterLoadBalancerProfileOutboundIPsOutput - ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPsOutput +func (ManagedClusterAddonProfileResponseMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]ManagedClusterAddonProfileResponse)(nil)).Elem() } -// Desired outbound IP resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileOutboundIPsArgs struct { - // A list of public IP resources. - PublicIPs ResourceReferenceArrayInput `pulumi:"publicIPs"` +func (o ManagedClusterAddonProfileResponseMapOutput) ToManagedClusterAddonProfileResponseMapOutput() ManagedClusterAddonProfileResponseMapOutput { + return o } -func (ManagedClusterLoadBalancerProfileOutboundIPsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() +func (o ManagedClusterAddonProfileResponseMapOutput) ToManagedClusterAddonProfileResponseMapOutputWithContext(ctx context.Context) ManagedClusterAddonProfileResponseMapOutput { + return o } -func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsOutput() ManagedClusterLoadBalancerProfileOutboundIPsOutput { - return i.ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(context.Background()) +func (o ManagedClusterAddonProfileResponseMapOutput) MapIndex(k pulumi.StringInput) ManagedClusterAddonProfileResponseOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) ManagedClusterAddonProfileResponse { + return vs[0].(map[string]ManagedClusterAddonProfileResponse)[vs[1].(string)] + }).(ManagedClusterAddonProfileResponseOutput) } -func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPsOutput) +// Information of user assigned identity used by this add-on. +type ManagedClusterAddonProfileResponseIdentity struct { + // The client ID of the user assigned identity. + ClientId *string `pulumi:"clientId"` + // The object ID of the user assigned identity. + ObjectId *string `pulumi:"objectId"` + // The resource ID of the user assigned identity. + ResourceId *string `pulumi:"resourceId"` } -func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return i.ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Background()) -} +// Information of user assigned identity used by this add-on. +type ManagedClusterAddonProfileResponseIdentityOutput struct{ *pulumi.OutputState } -func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPsOutput).ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx) +func (ManagedClusterAddonProfileResponseIdentityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAddonProfileResponseIdentity)(nil)).Elem() } -// ManagedClusterLoadBalancerProfileOutboundIPsPtrInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPsArgs, ManagedClusterLoadBalancerProfileOutboundIPsPtr and ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput values. -// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPsPtrInput` via: -// -// ManagedClusterLoadBalancerProfileOutboundIPsArgs{...} -// -// or: -// -// nil -type ManagedClusterLoadBalancerProfileOutboundIPsPtrInput interface { - pulumi.Input - - ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput - ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput +func (o ManagedClusterAddonProfileResponseIdentityOutput) ToManagedClusterAddonProfileResponseIdentityOutput() ManagedClusterAddonProfileResponseIdentityOutput { + return o } -type managedClusterLoadBalancerProfileOutboundIPsPtrType ManagedClusterLoadBalancerProfileOutboundIPsArgs - -func ManagedClusterLoadBalancerProfileOutboundIPsPtr(v *ManagedClusterLoadBalancerProfileOutboundIPsArgs) ManagedClusterLoadBalancerProfileOutboundIPsPtrInput { - return (*managedClusterLoadBalancerProfileOutboundIPsPtrType)(v) +func (o ManagedClusterAddonProfileResponseIdentityOutput) ToManagedClusterAddonProfileResponseIdentityOutputWithContext(ctx context.Context) ManagedClusterAddonProfileResponseIdentityOutput { + return o } -func (*managedClusterLoadBalancerProfileOutboundIPsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() +// The client ID of the user assigned identity. +func (o ManagedClusterAddonProfileResponseIdentityOutput) ClientId() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAddonProfileResponseIdentity) *string { return v.ClientId }).(pulumi.StringPtrOutput) } -func (i *managedClusterLoadBalancerProfileOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return i.ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Background()) +// The object ID of the user assigned identity. +func (o ManagedClusterAddonProfileResponseIdentityOutput) ObjectId() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAddonProfileResponseIdentity) *string { return v.ObjectId }).(pulumi.StringPtrOutput) } -func (i *managedClusterLoadBalancerProfileOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) +// The resource ID of the user assigned identity. +func (o ManagedClusterAddonProfileResponseIdentityOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAddonProfileResponseIdentity) *string { return v.ResourceId }).(pulumi.StringPtrOutput) } -// Desired outbound IP resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileOutboundIPsOutput struct{ *pulumi.OutputState } +// Profile for the container service agent pool. +type ManagedClusterAgentPoolProfile struct { + // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. + AvailabilityZones []string `pulumi:"availabilityZones"` + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID *string `pulumi:"capacityReservationGroupID"` + // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. + Count *int `pulumi:"count"` + // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. + CreationData *CreationData `pulumi:"creationData"` + // Whether to enable auto-scaler + EnableAutoScaling *bool `pulumi:"enableAutoScaling"` + // This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption + EnableEncryptionAtHost *bool `pulumi:"enableEncryptionAtHost"` + // See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. + EnableFIPS *bool `pulumi:"enableFIPS"` + // Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. + EnableNodePublicIP *bool `pulumi:"enableNodePublicIP"` + // Whether to enable UltraSSD + EnableUltraSSD *bool `pulumi:"enableUltraSSD"` + // GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. + GpuInstanceProfile *string `pulumi:"gpuInstanceProfile"` + // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). + HostGroupID *string `pulumi:"hostGroupID"` + // The Kubelet configuration on the agent pool nodes. + KubeletConfig *KubeletConfig `pulumi:"kubeletConfig"` + // Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. + KubeletDiskType *string `pulumi:"kubeletDiskType"` + // The OS configuration of Linux agent nodes. + LinuxOSConfig *LinuxOSConfig `pulumi:"linuxOSConfig"` + // The maximum number of nodes for auto-scaling + MaxCount *int `pulumi:"maxCount"` + // The maximum number of pods that can run on a node. + MaxPods *int `pulumi:"maxPods"` + // The minimum number of nodes for auto-scaling + MinCount *int `pulumi:"minCount"` + // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools + Mode *string `pulumi:"mode"` + // Windows agent pool names must be 6 characters or less. + Name string `pulumi:"name"` + // Network-related settings of an agent pool. + NetworkProfile *AgentPoolNetworkProfile `pulumi:"networkProfile"` + // The node labels to be persisted across all nodes in agent pool. + NodeLabels map[string]string `pulumi:"nodeLabels"` + // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} + NodePublicIPPrefixID *string `pulumi:"nodePublicIPPrefixID"` + // The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. + NodeTaints []string `pulumi:"nodeTaints"` + // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). + OrchestratorVersion *string `pulumi:"orchestratorVersion"` + // OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. + OsDiskSizeGB *int `pulumi:"osDiskSizeGB"` + // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). + OsDiskType *string `pulumi:"osDiskType"` + // Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. + OsSKU *string `pulumi:"osSKU"` + // The operating system type. The default is Linux. + OsType *string `pulumi:"osType"` + // If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} + PodSubnetID *string `pulumi:"podSubnetID"` + // When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded + PowerState *PowerState `pulumi:"powerState"` + // The ID for Proximity Placement Group. + ProximityPlacementGroupID *string `pulumi:"proximityPlacementGroupID"` + // This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. + ScaleDownMode *string `pulumi:"scaleDownMode"` + // This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. + ScaleSetEvictionPolicy *string `pulumi:"scaleSetEvictionPolicy"` + // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. + ScaleSetPriority *string `pulumi:"scaleSetPriority"` + // The security settings of an agent pool. + SecurityProfile *AgentPoolSecurityProfile `pulumi:"securityProfile"` + // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) + SpotMaxPrice *float64 `pulumi:"spotMaxPrice"` + // The tags to be persisted on the agent pool virtual machine scale set. + Tags map[string]string `pulumi:"tags"` + // The type of Agent Pool. + Type *string `pulumi:"type"` + // Settings for upgrading the agentpool + UpgradeSettings *AgentPoolUpgradeSettings `pulumi:"upgradeSettings"` + // VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions + VmSize *string `pulumi:"vmSize"` + // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} + VnetSubnetID *string `pulumi:"vnetSubnetID"` + // The Windows agent pool's specific profile. + WindowsProfile *AgentPoolWindowsProfile `pulumi:"windowsProfile"` + // Determines the type of workload a node can run. + WorkloadRuntime *string `pulumi:"workloadRuntime"` +} + +// ManagedClusterAgentPoolProfileInput is an input type that accepts ManagedClusterAgentPoolProfileArgs and ManagedClusterAgentPoolProfileOutput values. +// You can construct a concrete instance of `ManagedClusterAgentPoolProfileInput` via: +// +// ManagedClusterAgentPoolProfileArgs{...} +type ManagedClusterAgentPoolProfileInput interface { + pulumi.Input + + ToManagedClusterAgentPoolProfileOutput() ManagedClusterAgentPoolProfileOutput + ToManagedClusterAgentPoolProfileOutputWithContext(context.Context) ManagedClusterAgentPoolProfileOutput +} + +// Profile for the container service agent pool. +type ManagedClusterAgentPoolProfileArgs struct { + // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. + AvailabilityZones pulumi.StringArrayInput `pulumi:"availabilityZones"` + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID pulumi.StringPtrInput `pulumi:"capacityReservationGroupID"` + // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. + Count pulumi.IntPtrInput `pulumi:"count"` + // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. + CreationData CreationDataPtrInput `pulumi:"creationData"` + // Whether to enable auto-scaler + EnableAutoScaling pulumi.BoolPtrInput `pulumi:"enableAutoScaling"` + // This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption + EnableEncryptionAtHost pulumi.BoolPtrInput `pulumi:"enableEncryptionAtHost"` + // See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. + EnableFIPS pulumi.BoolPtrInput `pulumi:"enableFIPS"` + // Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. + EnableNodePublicIP pulumi.BoolPtrInput `pulumi:"enableNodePublicIP"` + // Whether to enable UltraSSD + EnableUltraSSD pulumi.BoolPtrInput `pulumi:"enableUltraSSD"` + // GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. + GpuInstanceProfile pulumi.StringPtrInput `pulumi:"gpuInstanceProfile"` + // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). + HostGroupID pulumi.StringPtrInput `pulumi:"hostGroupID"` + // The Kubelet configuration on the agent pool nodes. + KubeletConfig KubeletConfigPtrInput `pulumi:"kubeletConfig"` + // Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. + KubeletDiskType pulumi.StringPtrInput `pulumi:"kubeletDiskType"` + // The OS configuration of Linux agent nodes. + LinuxOSConfig LinuxOSConfigPtrInput `pulumi:"linuxOSConfig"` + // The maximum number of nodes for auto-scaling + MaxCount pulumi.IntPtrInput `pulumi:"maxCount"` + // The maximum number of pods that can run on a node. + MaxPods pulumi.IntPtrInput `pulumi:"maxPods"` + // The minimum number of nodes for auto-scaling + MinCount pulumi.IntPtrInput `pulumi:"minCount"` + // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools + Mode pulumi.StringPtrInput `pulumi:"mode"` + // Windows agent pool names must be 6 characters or less. + Name pulumi.StringInput `pulumi:"name"` + // Network-related settings of an agent pool. + NetworkProfile AgentPoolNetworkProfilePtrInput `pulumi:"networkProfile"` + // The node labels to be persisted across all nodes in agent pool. + NodeLabels pulumi.StringMapInput `pulumi:"nodeLabels"` + // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} + NodePublicIPPrefixID pulumi.StringPtrInput `pulumi:"nodePublicIPPrefixID"` + // The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. + NodeTaints pulumi.StringArrayInput `pulumi:"nodeTaints"` + // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). + OrchestratorVersion pulumi.StringPtrInput `pulumi:"orchestratorVersion"` + // OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. + OsDiskSizeGB pulumi.IntPtrInput `pulumi:"osDiskSizeGB"` + // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). + OsDiskType pulumi.StringPtrInput `pulumi:"osDiskType"` + // Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. + OsSKU pulumi.StringPtrInput `pulumi:"osSKU"` + // The operating system type. The default is Linux. + OsType pulumi.StringPtrInput `pulumi:"osType"` + // If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} + PodSubnetID pulumi.StringPtrInput `pulumi:"podSubnetID"` + // When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded + PowerState PowerStatePtrInput `pulumi:"powerState"` + // The ID for Proximity Placement Group. + ProximityPlacementGroupID pulumi.StringPtrInput `pulumi:"proximityPlacementGroupID"` + // This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. + ScaleDownMode pulumi.StringPtrInput `pulumi:"scaleDownMode"` + // This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. + ScaleSetEvictionPolicy pulumi.StringPtrInput `pulumi:"scaleSetEvictionPolicy"` + // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. + ScaleSetPriority pulumi.StringPtrInput `pulumi:"scaleSetPriority"` + // The security settings of an agent pool. + SecurityProfile AgentPoolSecurityProfilePtrInput `pulumi:"securityProfile"` + // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) + SpotMaxPrice pulumi.Float64PtrInput `pulumi:"spotMaxPrice"` + // The tags to be persisted on the agent pool virtual machine scale set. + Tags pulumi.StringMapInput `pulumi:"tags"` + // The type of Agent Pool. + Type pulumi.StringPtrInput `pulumi:"type"` + // Settings for upgrading the agentpool + UpgradeSettings AgentPoolUpgradeSettingsPtrInput `pulumi:"upgradeSettings"` + // VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions + VmSize pulumi.StringPtrInput `pulumi:"vmSize"` + // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} + VnetSubnetID pulumi.StringPtrInput `pulumi:"vnetSubnetID"` + // The Windows agent pool's specific profile. + WindowsProfile AgentPoolWindowsProfilePtrInput `pulumi:"windowsProfile"` + // Determines the type of workload a node can run. + WorkloadRuntime pulumi.StringPtrInput `pulumi:"workloadRuntime"` +} + +func (ManagedClusterAgentPoolProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAgentPoolProfile)(nil)).Elem() +} + +func (i ManagedClusterAgentPoolProfileArgs) ToManagedClusterAgentPoolProfileOutput() ManagedClusterAgentPoolProfileOutput { + return i.ToManagedClusterAgentPoolProfileOutputWithContext(context.Background()) +} + +func (i ManagedClusterAgentPoolProfileArgs) ToManagedClusterAgentPoolProfileOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAgentPoolProfileOutput) +} + +// ManagedClusterAgentPoolProfileArrayInput is an input type that accepts ManagedClusterAgentPoolProfileArray and ManagedClusterAgentPoolProfileArrayOutput values. +// You can construct a concrete instance of `ManagedClusterAgentPoolProfileArrayInput` via: +// +// ManagedClusterAgentPoolProfileArray{ ManagedClusterAgentPoolProfileArgs{...} } +type ManagedClusterAgentPoolProfileArrayInput interface { + pulumi.Input + + ToManagedClusterAgentPoolProfileArrayOutput() ManagedClusterAgentPoolProfileArrayOutput + ToManagedClusterAgentPoolProfileArrayOutputWithContext(context.Context) ManagedClusterAgentPoolProfileArrayOutput +} + +type ManagedClusterAgentPoolProfileArray []ManagedClusterAgentPoolProfileInput + +func (ManagedClusterAgentPoolProfileArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterAgentPoolProfile)(nil)).Elem() +} + +func (i ManagedClusterAgentPoolProfileArray) ToManagedClusterAgentPoolProfileArrayOutput() ManagedClusterAgentPoolProfileArrayOutput { + return i.ToManagedClusterAgentPoolProfileArrayOutputWithContext(context.Background()) +} + +func (i ManagedClusterAgentPoolProfileArray) ToManagedClusterAgentPoolProfileArrayOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAgentPoolProfileArrayOutput) +} + +// Profile for the container service agent pool. +type ManagedClusterAgentPoolProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAgentPoolProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAgentPoolProfile)(nil)).Elem() +} + +func (o ManagedClusterAgentPoolProfileOutput) ToManagedClusterAgentPoolProfileOutput() ManagedClusterAgentPoolProfileOutput { + return o +} + +func (o ManagedClusterAgentPoolProfileOutput) ToManagedClusterAgentPoolProfileOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileOutput { + return o +} + +// The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. +func (o ManagedClusterAgentPoolProfileOutput) AvailabilityZones() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) +} + +// AKS will associate the specified agent pool with the Capacity Reservation Group. +func (o ManagedClusterAgentPoolProfileOutput) CapacityReservationGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.CapacityReservationGroupID }).(pulumi.StringPtrOutput) +} + +// Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. +func (o ManagedClusterAgentPoolProfileOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.Count }).(pulumi.IntPtrOutput) +} + +// CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. +func (o ManagedClusterAgentPoolProfileOutput) CreationData() CreationDataPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *CreationData { return v.CreationData }).(CreationDataPtrOutput) +} + +// Whether to enable auto-scaler +func (o ManagedClusterAgentPoolProfileOutput) EnableAutoScaling() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableAutoScaling }).(pulumi.BoolPtrOutput) +} + +// This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption +func (o ManagedClusterAgentPoolProfileOutput) EnableEncryptionAtHost() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableEncryptionAtHost }).(pulumi.BoolPtrOutput) +} + +// See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. +func (o ManagedClusterAgentPoolProfileOutput) EnableFIPS() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableFIPS }).(pulumi.BoolPtrOutput) +} + +// Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. +func (o ManagedClusterAgentPoolProfileOutput) EnableNodePublicIP() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableNodePublicIP }).(pulumi.BoolPtrOutput) +} + +// Whether to enable UltraSSD +func (o ManagedClusterAgentPoolProfileOutput) EnableUltraSSD() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *bool { return v.EnableUltraSSD }).(pulumi.BoolPtrOutput) +} + +// GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. +func (o ManagedClusterAgentPoolProfileOutput) GpuInstanceProfile() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.GpuInstanceProfile }).(pulumi.StringPtrOutput) +} + +// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). +func (o ManagedClusterAgentPoolProfileOutput) HostGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.HostGroupID }).(pulumi.StringPtrOutput) +} + +// The Kubelet configuration on the agent pool nodes. +func (o ManagedClusterAgentPoolProfileOutput) KubeletConfig() KubeletConfigPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *KubeletConfig { return v.KubeletConfig }).(KubeletConfigPtrOutput) +} + +// Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. +func (o ManagedClusterAgentPoolProfileOutput) KubeletDiskType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.KubeletDiskType }).(pulumi.StringPtrOutput) +} + +// The OS configuration of Linux agent nodes. +func (o ManagedClusterAgentPoolProfileOutput) LinuxOSConfig() LinuxOSConfigPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *LinuxOSConfig { return v.LinuxOSConfig }).(LinuxOSConfigPtrOutput) +} + +// The maximum number of nodes for auto-scaling +func (o ManagedClusterAgentPoolProfileOutput) MaxCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.MaxCount }).(pulumi.IntPtrOutput) +} + +// The maximum number of pods that can run on a node. +func (o ManagedClusterAgentPoolProfileOutput) MaxPods() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.MaxPods }).(pulumi.IntPtrOutput) +} + +// The minimum number of nodes for auto-scaling +func (o ManagedClusterAgentPoolProfileOutput) MinCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.MinCount }).(pulumi.IntPtrOutput) +} + +// A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools +func (o ManagedClusterAgentPoolProfileOutput) Mode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.Mode }).(pulumi.StringPtrOutput) +} + +// Windows agent pool names must be 6 characters or less. +func (o ManagedClusterAgentPoolProfileOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) string { return v.Name }).(pulumi.StringOutput) +} + +// Network-related settings of an agent pool. +func (o ManagedClusterAgentPoolProfileOutput) NetworkProfile() AgentPoolNetworkProfilePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *AgentPoolNetworkProfile { return v.NetworkProfile }).(AgentPoolNetworkProfilePtrOutput) +} + +// The node labels to be persisted across all nodes in agent pool. +func (o ManagedClusterAgentPoolProfileOutput) NodeLabels() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) map[string]string { return v.NodeLabels }).(pulumi.StringMapOutput) +} + +// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} +func (o ManagedClusterAgentPoolProfileOutput) NodePublicIPPrefixID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.NodePublicIPPrefixID }).(pulumi.StringPtrOutput) +} + +// The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. +func (o ManagedClusterAgentPoolProfileOutput) NodeTaints() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) []string { return v.NodeTaints }).(pulumi.StringArrayOutput) +} + +// Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). +func (o ManagedClusterAgentPoolProfileOutput) OrchestratorVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OrchestratorVersion }).(pulumi.StringPtrOutput) +} + +// OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. +func (o ManagedClusterAgentPoolProfileOutput) OsDiskSizeGB() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *int { return v.OsDiskSizeGB }).(pulumi.IntPtrOutput) +} + +// The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). +func (o ManagedClusterAgentPoolProfileOutput) OsDiskType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OsDiskType }).(pulumi.StringPtrOutput) +} + +// Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. +func (o ManagedClusterAgentPoolProfileOutput) OsSKU() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OsSKU }).(pulumi.StringPtrOutput) +} + +// The operating system type. The default is Linux. +func (o ManagedClusterAgentPoolProfileOutput) OsType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.OsType }).(pulumi.StringPtrOutput) +} + +// If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} +func (o ManagedClusterAgentPoolProfileOutput) PodSubnetID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.PodSubnetID }).(pulumi.StringPtrOutput) +} + +// When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded +func (o ManagedClusterAgentPoolProfileOutput) PowerState() PowerStatePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *PowerState { return v.PowerState }).(PowerStatePtrOutput) +} + +// The ID for Proximity Placement Group. +func (o ManagedClusterAgentPoolProfileOutput) ProximityPlacementGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ProximityPlacementGroupID }).(pulumi.StringPtrOutput) +} + +// This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. +func (o ManagedClusterAgentPoolProfileOutput) ScaleDownMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ScaleDownMode }).(pulumi.StringPtrOutput) +} + +// This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. +func (o ManagedClusterAgentPoolProfileOutput) ScaleSetEvictionPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ScaleSetEvictionPolicy }).(pulumi.StringPtrOutput) +} + +// The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. +func (o ManagedClusterAgentPoolProfileOutput) ScaleSetPriority() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.ScaleSetPriority }).(pulumi.StringPtrOutput) +} + +// The security settings of an agent pool. +func (o ManagedClusterAgentPoolProfileOutput) SecurityProfile() AgentPoolSecurityProfilePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *AgentPoolSecurityProfile { return v.SecurityProfile }).(AgentPoolSecurityProfilePtrOutput) +} + +// Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) +func (o ManagedClusterAgentPoolProfileOutput) SpotMaxPrice() pulumi.Float64PtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *float64 { return v.SpotMaxPrice }).(pulumi.Float64PtrOutput) +} + +// The tags to be persisted on the agent pool virtual machine scale set. +func (o ManagedClusterAgentPoolProfileOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of Agent Pool. +func (o ManagedClusterAgentPoolProfileOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.Type }).(pulumi.StringPtrOutput) +} + +// Settings for upgrading the agentpool +func (o ManagedClusterAgentPoolProfileOutput) UpgradeSettings() AgentPoolUpgradeSettingsPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *AgentPoolUpgradeSettings { return v.UpgradeSettings }).(AgentPoolUpgradeSettingsPtrOutput) +} + +// VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions +func (o ManagedClusterAgentPoolProfileOutput) VmSize() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.VmSize }).(pulumi.StringPtrOutput) +} + +// If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} +func (o ManagedClusterAgentPoolProfileOutput) VnetSubnetID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.VnetSubnetID }).(pulumi.StringPtrOutput) +} + +// The Windows agent pool's specific profile. +func (o ManagedClusterAgentPoolProfileOutput) WindowsProfile() AgentPoolWindowsProfilePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *AgentPoolWindowsProfile { return v.WindowsProfile }).(AgentPoolWindowsProfilePtrOutput) +} + +// Determines the type of workload a node can run. +func (o ManagedClusterAgentPoolProfileOutput) WorkloadRuntime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfile) *string { return v.WorkloadRuntime }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAgentPoolProfileArrayOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAgentPoolProfileArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterAgentPoolProfile)(nil)).Elem() +} + +func (o ManagedClusterAgentPoolProfileArrayOutput) ToManagedClusterAgentPoolProfileArrayOutput() ManagedClusterAgentPoolProfileArrayOutput { + return o +} + +func (o ManagedClusterAgentPoolProfileArrayOutput) ToManagedClusterAgentPoolProfileArrayOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileArrayOutput { + return o +} + +func (o ManagedClusterAgentPoolProfileArrayOutput) Index(i pulumi.IntInput) ManagedClusterAgentPoolProfileOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterAgentPoolProfile { + return vs[0].([]ManagedClusterAgentPoolProfile)[vs[1].(int)] + }).(ManagedClusterAgentPoolProfileOutput) +} + +// Profile for the container service agent pool. +type ManagedClusterAgentPoolProfileResponse struct { + // The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. + AvailabilityZones []string `pulumi:"availabilityZones"` + // AKS will associate the specified agent pool with the Capacity Reservation Group. + CapacityReservationGroupID *string `pulumi:"capacityReservationGroupID"` + // Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. + Count *int `pulumi:"count"` + // CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. + CreationData *CreationDataResponse `pulumi:"creationData"` + // If orchestratorVersion is a fully specified version , this field will be exactly equal to it. If orchestratorVersion is , this field will contain the full version being used. + CurrentOrchestratorVersion string `pulumi:"currentOrchestratorVersion"` + // Whether to enable auto-scaler + EnableAutoScaling *bool `pulumi:"enableAutoScaling"` + // This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption + EnableEncryptionAtHost *bool `pulumi:"enableEncryptionAtHost"` + // See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. + EnableFIPS *bool `pulumi:"enableFIPS"` + // Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. + EnableNodePublicIP *bool `pulumi:"enableNodePublicIP"` + // Whether to enable UltraSSD + EnableUltraSSD *bool `pulumi:"enableUltraSSD"` + // GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. + GpuInstanceProfile *string `pulumi:"gpuInstanceProfile"` + // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). + HostGroupID *string `pulumi:"hostGroupID"` + // The Kubelet configuration on the agent pool nodes. + KubeletConfig *KubeletConfigResponse `pulumi:"kubeletConfig"` + // Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. + KubeletDiskType *string `pulumi:"kubeletDiskType"` + // The OS configuration of Linux agent nodes. + LinuxOSConfig *LinuxOSConfigResponse `pulumi:"linuxOSConfig"` + // The maximum number of nodes for auto-scaling + MaxCount *int `pulumi:"maxCount"` + // The maximum number of pods that can run on a node. + MaxPods *int `pulumi:"maxPods"` + // The minimum number of nodes for auto-scaling + MinCount *int `pulumi:"minCount"` + // A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools + Mode *string `pulumi:"mode"` + // Windows agent pool names must be 6 characters or less. + Name string `pulumi:"name"` + // Network-related settings of an agent pool. + NetworkProfile *AgentPoolNetworkProfileResponse `pulumi:"networkProfile"` + // The version of node image + NodeImageVersion string `pulumi:"nodeImageVersion"` + // The node labels to be persisted across all nodes in agent pool. + NodeLabels map[string]string `pulumi:"nodeLabels"` + // This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} + NodePublicIPPrefixID *string `pulumi:"nodePublicIPPrefixID"` + // The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. + NodeTaints []string `pulumi:"nodeTaints"` + // Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). + OrchestratorVersion *string `pulumi:"orchestratorVersion"` + // OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. + OsDiskSizeGB *int `pulumi:"osDiskSizeGB"` + // The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). + OsDiskType *string `pulumi:"osDiskType"` + // Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. + OsSKU *string `pulumi:"osSKU"` + // The operating system type. The default is Linux. + OsType *string `pulumi:"osType"` + // If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} + PodSubnetID *string `pulumi:"podSubnetID"` + // When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded + PowerState *PowerStateResponse `pulumi:"powerState"` + // The current deployment or provisioning state. + ProvisioningState string `pulumi:"provisioningState"` + // The ID for Proximity Placement Group. + ProximityPlacementGroupID *string `pulumi:"proximityPlacementGroupID"` + // This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. + ScaleDownMode *string `pulumi:"scaleDownMode"` + // This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. + ScaleSetEvictionPolicy *string `pulumi:"scaleSetEvictionPolicy"` + // The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. + ScaleSetPriority *string `pulumi:"scaleSetPriority"` + // The security settings of an agent pool. + SecurityProfile *AgentPoolSecurityProfileResponse `pulumi:"securityProfile"` + // Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) + SpotMaxPrice *float64 `pulumi:"spotMaxPrice"` + // The tags to be persisted on the agent pool virtual machine scale set. + Tags map[string]string `pulumi:"tags"` + // The type of Agent Pool. + Type *string `pulumi:"type"` + // Settings for upgrading the agentpool + UpgradeSettings *AgentPoolUpgradeSettingsResponse `pulumi:"upgradeSettings"` + // VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions + VmSize *string `pulumi:"vmSize"` + // If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} + VnetSubnetID *string `pulumi:"vnetSubnetID"` + // The Windows agent pool's specific profile. + WindowsProfile *AgentPoolWindowsProfileResponse `pulumi:"windowsProfile"` + // Determines the type of workload a node can run. + WorkloadRuntime *string `pulumi:"workloadRuntime"` +} + +// Profile for the container service agent pool. +type ManagedClusterAgentPoolProfileResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAgentPoolProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAgentPoolProfileResponse)(nil)).Elem() +} + +func (o ManagedClusterAgentPoolProfileResponseOutput) ToManagedClusterAgentPoolProfileResponseOutput() ManagedClusterAgentPoolProfileResponseOutput { + return o +} + +func (o ManagedClusterAgentPoolProfileResponseOutput) ToManagedClusterAgentPoolProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileResponseOutput { + return o +} + +// The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'. +func (o ManagedClusterAgentPoolProfileResponseOutput) AvailabilityZones() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) []string { return v.AvailabilityZones }).(pulumi.StringArrayOutput) +} + +// AKS will associate the specified agent pool with the Capacity Reservation Group. +func (o ManagedClusterAgentPoolProfileResponseOutput) CapacityReservationGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.CapacityReservationGroupID }).(pulumi.StringPtrOutput) +} + +// Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1. +func (o ManagedClusterAgentPoolProfileResponseOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.Count }).(pulumi.IntPtrOutput) +} + +// CreationData to be used to specify the source Snapshot ID if the node pool will be created/upgraded using a snapshot. +func (o ManagedClusterAgentPoolProfileResponseOutput) CreationData() CreationDataResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *CreationDataResponse { return v.CreationData }).(CreationDataResponsePtrOutput) +} + +// If orchestratorVersion is a fully specified version , this field will be exactly equal to it. If orchestratorVersion is , this field will contain the full version being used. +func (o ManagedClusterAgentPoolProfileResponseOutput) CurrentOrchestratorVersion() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.CurrentOrchestratorVersion }).(pulumi.StringOutput) +} + +// Whether to enable auto-scaler +func (o ManagedClusterAgentPoolProfileResponseOutput) EnableAutoScaling() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableAutoScaling }).(pulumi.BoolPtrOutput) +} + +// This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption +func (o ManagedClusterAgentPoolProfileResponseOutput) EnableEncryptionAtHost() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableEncryptionAtHost }).(pulumi.BoolPtrOutput) +} + +// See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details. +func (o ManagedClusterAgentPoolProfileResponseOutput) EnableFIPS() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableFIPS }).(pulumi.BoolPtrOutput) +} + +// Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false. +func (o ManagedClusterAgentPoolProfileResponseOutput) EnableNodePublicIP() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableNodePublicIP }).(pulumi.BoolPtrOutput) +} + +// Whether to enable UltraSSD +func (o ManagedClusterAgentPoolProfileResponseOutput) EnableUltraSSD() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *bool { return v.EnableUltraSSD }).(pulumi.BoolPtrOutput) +} + +// GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU. +func (o ManagedClusterAgentPoolProfileResponseOutput) GpuInstanceProfile() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.GpuInstanceProfile }).(pulumi.StringPtrOutput) +} + +// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. For more information see [Azure dedicated hosts](https://docs.microsoft.com/azure/virtual-machines/dedicated-hosts). +func (o ManagedClusterAgentPoolProfileResponseOutput) HostGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.HostGroupID }).(pulumi.StringPtrOutput) +} + +// The Kubelet configuration on the agent pool nodes. +func (o ManagedClusterAgentPoolProfileResponseOutput) KubeletConfig() KubeletConfigResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *KubeletConfigResponse { return v.KubeletConfig }).(KubeletConfigResponsePtrOutput) +} + +// Determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. +func (o ManagedClusterAgentPoolProfileResponseOutput) KubeletDiskType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.KubeletDiskType }).(pulumi.StringPtrOutput) +} + +// The OS configuration of Linux agent nodes. +func (o ManagedClusterAgentPoolProfileResponseOutput) LinuxOSConfig() LinuxOSConfigResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *LinuxOSConfigResponse { return v.LinuxOSConfig }).(LinuxOSConfigResponsePtrOutput) +} + +// The maximum number of nodes for auto-scaling +func (o ManagedClusterAgentPoolProfileResponseOutput) MaxCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.MaxCount }).(pulumi.IntPtrOutput) +} + +// The maximum number of pods that can run on a node. +func (o ManagedClusterAgentPoolProfileResponseOutput) MaxPods() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.MaxPods }).(pulumi.IntPtrOutput) +} + +// The minimum number of nodes for auto-scaling +func (o ManagedClusterAgentPoolProfileResponseOutput) MinCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.MinCount }).(pulumi.IntPtrOutput) +} + +// A cluster must have at least one 'System' Agent Pool at all times. For additional information on agent pool restrictions and best practices, see: https://docs.microsoft.com/azure/aks/use-system-pools +func (o ManagedClusterAgentPoolProfileResponseOutput) Mode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.Mode }).(pulumi.StringPtrOutput) +} + +// Windows agent pool names must be 6 characters or less. +func (o ManagedClusterAgentPoolProfileResponseOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.Name }).(pulumi.StringOutput) +} + +// Network-related settings of an agent pool. +func (o ManagedClusterAgentPoolProfileResponseOutput) NetworkProfile() AgentPoolNetworkProfileResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *AgentPoolNetworkProfileResponse { + return v.NetworkProfile + }).(AgentPoolNetworkProfileResponsePtrOutput) +} + +// The version of node image +func (o ManagedClusterAgentPoolProfileResponseOutput) NodeImageVersion() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.NodeImageVersion }).(pulumi.StringOutput) +} + +// The node labels to be persisted across all nodes in agent pool. +func (o ManagedClusterAgentPoolProfileResponseOutput) NodeLabels() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) map[string]string { return v.NodeLabels }).(pulumi.StringMapOutput) +} + +// This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} +func (o ManagedClusterAgentPoolProfileResponseOutput) NodePublicIPPrefixID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.NodePublicIPPrefixID }).(pulumi.StringPtrOutput) +} + +// The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule. +func (o ManagedClusterAgentPoolProfileResponseOutput) NodeTaints() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) []string { return v.NodeTaints }).(pulumi.StringArrayOutput) +} + +// Both patch version (e.g. 1.20.13) and (e.g. 1.20) are supported. When is specified, the latest supported GA patch version is chosen automatically. Updating the cluster with the same once it has been created (e.g. 1.14.x -> 1.14) will not trigger an upgrade, even if a newer patch version is available. As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool). +func (o ManagedClusterAgentPoolProfileResponseOutput) OrchestratorVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OrchestratorVersion }).(pulumi.StringPtrOutput) +} + +// OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified. +func (o ManagedClusterAgentPoolProfileResponseOutput) OsDiskSizeGB() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *int { return v.OsDiskSizeGB }).(pulumi.IntPtrOutput) +} + +// The default is 'Ephemeral' if the VM supports it and has a cache disk larger than the requested OSDiskSizeGB. Otherwise, defaults to 'Managed'. May not be changed after creation. For more information see [Ephemeral OS](https://docs.microsoft.com/azure/aks/cluster-configuration#ephemeral-os). +func (o ManagedClusterAgentPoolProfileResponseOutput) OsDiskType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OsDiskType }).(pulumi.StringPtrOutput) +} + +// Specifies the OS SKU used by the agent pool. The default is Ubuntu if OSType is Linux. The default is Windows2019 when Kubernetes <= 1.24 or Windows2022 when Kubernetes >= 1.25 if OSType is Windows. +func (o ManagedClusterAgentPoolProfileResponseOutput) OsSKU() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OsSKU }).(pulumi.StringPtrOutput) +} + +// The operating system type. The default is Linux. +func (o ManagedClusterAgentPoolProfileResponseOutput) OsType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.OsType }).(pulumi.StringPtrOutput) +} + +// If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} +func (o ManagedClusterAgentPoolProfileResponseOutput) PodSubnetID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.PodSubnetID }).(pulumi.StringPtrOutput) +} + +// When an Agent Pool is first created it is initially Running. The Agent Pool can be stopped by setting this field to Stopped. A stopped Agent Pool stops all of its VMs and does not accrue billing charges. An Agent Pool can only be stopped if it is Running and provisioning state is Succeeded +func (o ManagedClusterAgentPoolProfileResponseOutput) PowerState() PowerStateResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *PowerStateResponse { return v.PowerState }).(PowerStateResponsePtrOutput) +} + +// The current deployment or provisioning state. +func (o ManagedClusterAgentPoolProfileResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The ID for Proximity Placement Group. +func (o ManagedClusterAgentPoolProfileResponseOutput) ProximityPlacementGroupID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ProximityPlacementGroupID }).(pulumi.StringPtrOutput) +} + +// This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete. +func (o ManagedClusterAgentPoolProfileResponseOutput) ScaleDownMode() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ScaleDownMode }).(pulumi.StringPtrOutput) +} + +// This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'. +func (o ManagedClusterAgentPoolProfileResponseOutput) ScaleSetEvictionPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ScaleSetEvictionPolicy }).(pulumi.StringPtrOutput) +} + +// The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'. +func (o ManagedClusterAgentPoolProfileResponseOutput) ScaleSetPriority() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.ScaleSetPriority }).(pulumi.StringPtrOutput) +} + +// The security settings of an agent pool. +func (o ManagedClusterAgentPoolProfileResponseOutput) SecurityProfile() AgentPoolSecurityProfileResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *AgentPoolSecurityProfileResponse { + return v.SecurityProfile + }).(AgentPoolSecurityProfileResponsePtrOutput) +} + +// Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing) +func (o ManagedClusterAgentPoolProfileResponseOutput) SpotMaxPrice() pulumi.Float64PtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *float64 { return v.SpotMaxPrice }).(pulumi.Float64PtrOutput) +} + +// The tags to be persisted on the agent pool virtual machine scale set. +func (o ManagedClusterAgentPoolProfileResponseOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of Agent Pool. +func (o ManagedClusterAgentPoolProfileResponseOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +} + +// Settings for upgrading the agentpool +func (o ManagedClusterAgentPoolProfileResponseOutput) UpgradeSettings() AgentPoolUpgradeSettingsResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *AgentPoolUpgradeSettingsResponse { + return v.UpgradeSettings + }).(AgentPoolUpgradeSettingsResponsePtrOutput) +} + +// VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions +func (o ManagedClusterAgentPoolProfileResponseOutput) VmSize() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.VmSize }).(pulumi.StringPtrOutput) +} + +// If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} +func (o ManagedClusterAgentPoolProfileResponseOutput) VnetSubnetID() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.VnetSubnetID }).(pulumi.StringPtrOutput) +} + +// The Windows agent pool's specific profile. +func (o ManagedClusterAgentPoolProfileResponseOutput) WindowsProfile() AgentPoolWindowsProfileResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *AgentPoolWindowsProfileResponse { + return v.WindowsProfile + }).(AgentPoolWindowsProfileResponsePtrOutput) +} + +// Determines the type of workload a node can run. +func (o ManagedClusterAgentPoolProfileResponseOutput) WorkloadRuntime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAgentPoolProfileResponse) *string { return v.WorkloadRuntime }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAgentPoolProfileResponseArrayOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAgentPoolProfileResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterAgentPoolProfileResponse)(nil)).Elem() +} + +func (o ManagedClusterAgentPoolProfileResponseArrayOutput) ToManagedClusterAgentPoolProfileResponseArrayOutput() ManagedClusterAgentPoolProfileResponseArrayOutput { + return o +} + +func (o ManagedClusterAgentPoolProfileResponseArrayOutput) ToManagedClusterAgentPoolProfileResponseArrayOutputWithContext(ctx context.Context) ManagedClusterAgentPoolProfileResponseArrayOutput { + return o +} + +func (o ManagedClusterAgentPoolProfileResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterAgentPoolProfileResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterAgentPoolProfileResponse { + return vs[0].([]ManagedClusterAgentPoolProfileResponse)[vs[1].(int)] + }).(ManagedClusterAgentPoolProfileResponseOutput) +} + +// Auto upgrade profile for a managed cluster. +type ManagedClusterAutoUpgradeProfile struct { + // Manner in which the OS on your nodes is updated. The default is NodeImage. + NodeOSUpgradeChannel *string `pulumi:"nodeOSUpgradeChannel"` + // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). + UpgradeChannel *string `pulumi:"upgradeChannel"` +} + +// ManagedClusterAutoUpgradeProfileInput is an input type that accepts ManagedClusterAutoUpgradeProfileArgs and ManagedClusterAutoUpgradeProfileOutput values. +// You can construct a concrete instance of `ManagedClusterAutoUpgradeProfileInput` via: +// +// ManagedClusterAutoUpgradeProfileArgs{...} +type ManagedClusterAutoUpgradeProfileInput interface { + pulumi.Input + + ToManagedClusterAutoUpgradeProfileOutput() ManagedClusterAutoUpgradeProfileOutput + ToManagedClusterAutoUpgradeProfileOutputWithContext(context.Context) ManagedClusterAutoUpgradeProfileOutput +} + +// Auto upgrade profile for a managed cluster. +type ManagedClusterAutoUpgradeProfileArgs struct { + // Manner in which the OS on your nodes is updated. The default is NodeImage. + NodeOSUpgradeChannel pulumi.StringPtrInput `pulumi:"nodeOSUpgradeChannel"` + // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). + UpgradeChannel pulumi.StringPtrInput `pulumi:"upgradeChannel"` +} + +func (ManagedClusterAutoUpgradeProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAutoUpgradeProfile)(nil)).Elem() +} + +func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfileOutput() ManagedClusterAutoUpgradeProfileOutput { + return i.ToManagedClusterAutoUpgradeProfileOutputWithContext(context.Background()) +} + +func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfileOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAutoUpgradeProfileOutput) +} + +func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { + return i.ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Background()) +} + +func (i ManagedClusterAutoUpgradeProfileArgs) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAutoUpgradeProfileOutput).ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx) +} + +// ManagedClusterAutoUpgradeProfilePtrInput is an input type that accepts ManagedClusterAutoUpgradeProfileArgs, ManagedClusterAutoUpgradeProfilePtr and ManagedClusterAutoUpgradeProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterAutoUpgradeProfilePtrInput` via: +// +// ManagedClusterAutoUpgradeProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterAutoUpgradeProfilePtrInput interface { + pulumi.Input + + ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput + ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Context) ManagedClusterAutoUpgradeProfilePtrOutput +} + +type managedClusterAutoUpgradeProfilePtrType ManagedClusterAutoUpgradeProfileArgs + +func ManagedClusterAutoUpgradeProfilePtr(v *ManagedClusterAutoUpgradeProfileArgs) ManagedClusterAutoUpgradeProfilePtrInput { + return (*managedClusterAutoUpgradeProfilePtrType)(v) +} + +func (*managedClusterAutoUpgradeProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAutoUpgradeProfile)(nil)).Elem() +} + +func (i *managedClusterAutoUpgradeProfilePtrType) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { + return i.ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Background()) +} + +func (i *managedClusterAutoUpgradeProfilePtrType) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAutoUpgradeProfilePtrOutput) +} + +// Auto upgrade profile for a managed cluster. +type ManagedClusterAutoUpgradeProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAutoUpgradeProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAutoUpgradeProfile)(nil)).Elem() +} + +func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfileOutput() ManagedClusterAutoUpgradeProfileOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfileOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { + return o.ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterAutoUpgradeProfileOutput) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAutoUpgradeProfile) *ManagedClusterAutoUpgradeProfile { + return &v + }).(ManagedClusterAutoUpgradeProfilePtrOutput) +} + +// Manner in which the OS on your nodes is updated. The default is NodeImage. +func (o ManagedClusterAutoUpgradeProfileOutput) NodeOSUpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAutoUpgradeProfile) *string { return v.NodeOSUpgradeChannel }).(pulumi.StringPtrOutput) +} + +// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). +func (o ManagedClusterAutoUpgradeProfileOutput) UpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAutoUpgradeProfile) *string { return v.UpgradeChannel }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAutoUpgradeProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAutoUpgradeProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAutoUpgradeProfile)(nil)).Elem() +} + +func (o ManagedClusterAutoUpgradeProfilePtrOutput) ToManagedClusterAutoUpgradeProfilePtrOutput() ManagedClusterAutoUpgradeProfilePtrOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfilePtrOutput) ToManagedClusterAutoUpgradeProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfilePtrOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfilePtrOutput) Elem() ManagedClusterAutoUpgradeProfileOutput { + return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfile) ManagedClusterAutoUpgradeProfile { + if v != nil { + return *v + } + var ret ManagedClusterAutoUpgradeProfile + return ret + }).(ManagedClusterAutoUpgradeProfileOutput) +} + +// Manner in which the OS on your nodes is updated. The default is NodeImage. +func (o ManagedClusterAutoUpgradeProfilePtrOutput) NodeOSUpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfile) *string { + if v == nil { + return nil + } + return v.NodeOSUpgradeChannel + }).(pulumi.StringPtrOutput) +} + +// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). +func (o ManagedClusterAutoUpgradeProfilePtrOutput) UpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfile) *string { + if v == nil { + return nil + } + return v.UpgradeChannel + }).(pulumi.StringPtrOutput) +} + +// Auto upgrade profile for a managed cluster. +type ManagedClusterAutoUpgradeProfileResponse struct { + // Manner in which the OS on your nodes is updated. The default is NodeImage. + NodeOSUpgradeChannel *string `pulumi:"nodeOSUpgradeChannel"` + // For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). + UpgradeChannel *string `pulumi:"upgradeChannel"` +} + +// Auto upgrade profile for a managed cluster. +type ManagedClusterAutoUpgradeProfileResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAutoUpgradeProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAutoUpgradeProfileResponse)(nil)).Elem() +} + +func (o ManagedClusterAutoUpgradeProfileResponseOutput) ToManagedClusterAutoUpgradeProfileResponseOutput() ManagedClusterAutoUpgradeProfileResponseOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfileResponseOutput) ToManagedClusterAutoUpgradeProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileResponseOutput { + return o +} + +// Manner in which the OS on your nodes is updated. The default is NodeImage. +func (o ManagedClusterAutoUpgradeProfileResponseOutput) NodeOSUpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAutoUpgradeProfileResponse) *string { return v.NodeOSUpgradeChannel }).(pulumi.StringPtrOutput) +} + +// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). +func (o ManagedClusterAutoUpgradeProfileResponseOutput) UpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAutoUpgradeProfileResponse) *string { return v.UpgradeChannel }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAutoUpgradeProfileResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAutoUpgradeProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAutoUpgradeProfileResponse)(nil)).Elem() +} + +func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) ToManagedClusterAutoUpgradeProfileResponsePtrOutput() ManagedClusterAutoUpgradeProfileResponsePtrOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) ToManagedClusterAutoUpgradeProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAutoUpgradeProfileResponsePtrOutput { + return o +} + +func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) Elem() ManagedClusterAutoUpgradeProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfileResponse) ManagedClusterAutoUpgradeProfileResponse { + if v != nil { + return *v + } + var ret ManagedClusterAutoUpgradeProfileResponse + return ret + }).(ManagedClusterAutoUpgradeProfileResponseOutput) +} + +// Manner in which the OS on your nodes is updated. The default is NodeImage. +func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) NodeOSUpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfileResponse) *string { + if v == nil { + return nil + } + return v.NodeOSUpgradeChannel + }).(pulumi.StringPtrOutput) +} + +// For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel). +func (o ManagedClusterAutoUpgradeProfileResponsePtrOutput) UpgradeChannel() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAutoUpgradeProfileResponse) *string { + if v == nil { + return nil + } + return v.UpgradeChannel + }).(pulumi.StringPtrOutput) +} + +// Azure Monitor addon profiles for monitoring the managed cluster. +type ManagedClusterAzureMonitorProfile struct { + // Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. + Metrics *ManagedClusterAzureMonitorProfileMetrics `pulumi:"metrics"` +} + +// ManagedClusterAzureMonitorProfileInput is an input type that accepts ManagedClusterAzureMonitorProfileArgs and ManagedClusterAzureMonitorProfileOutput values. +// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileInput` via: +// +// ManagedClusterAzureMonitorProfileArgs{...} +type ManagedClusterAzureMonitorProfileInput interface { + pulumi.Input + + ToManagedClusterAzureMonitorProfileOutput() ManagedClusterAzureMonitorProfileOutput + ToManagedClusterAzureMonitorProfileOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileOutput +} + +// Azure Monitor addon profiles for monitoring the managed cluster. +type ManagedClusterAzureMonitorProfileArgs struct { + // Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. + Metrics ManagedClusterAzureMonitorProfileMetricsPtrInput `pulumi:"metrics"` +} + +func (ManagedClusterAzureMonitorProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfile)(nil)).Elem() +} + +func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfileOutput() ManagedClusterAzureMonitorProfileOutput { + return i.ToManagedClusterAzureMonitorProfileOutputWithContext(context.Background()) +} + +func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfileOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileOutput) +} + +func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { + return i.ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Background()) +} + +func (i ManagedClusterAzureMonitorProfileArgs) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileOutput).ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx) +} + +// ManagedClusterAzureMonitorProfilePtrInput is an input type that accepts ManagedClusterAzureMonitorProfileArgs, ManagedClusterAzureMonitorProfilePtr and ManagedClusterAzureMonitorProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterAzureMonitorProfilePtrInput` via: +// +// ManagedClusterAzureMonitorProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterAzureMonitorProfilePtrInput interface { + pulumi.Input + + ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput + ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Context) ManagedClusterAzureMonitorProfilePtrOutput +} + +type managedClusterAzureMonitorProfilePtrType ManagedClusterAzureMonitorProfileArgs + +func ManagedClusterAzureMonitorProfilePtr(v *ManagedClusterAzureMonitorProfileArgs) ManagedClusterAzureMonitorProfilePtrInput { + return (*managedClusterAzureMonitorProfilePtrType)(v) +} + +func (*managedClusterAzureMonitorProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfile)(nil)).Elem() +} + +func (i *managedClusterAzureMonitorProfilePtrType) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { + return i.ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Background()) +} + +func (i *managedClusterAzureMonitorProfilePtrType) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfilePtrOutput) +} + +// Azure Monitor addon profiles for monitoring the managed cluster. +type ManagedClusterAzureMonitorProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfile)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfileOutput() ManagedClusterAzureMonitorProfileOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfileOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { + return o.ToManagedClusterAzureMonitorProfilePtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterAzureMonitorProfileOutput) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAzureMonitorProfile) *ManagedClusterAzureMonitorProfile { + return &v + }).(ManagedClusterAzureMonitorProfilePtrOutput) +} + +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +func (o ManagedClusterAzureMonitorProfileOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfile) *ManagedClusterAzureMonitorProfileMetrics { return v.Metrics }).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) +} + +type ManagedClusterAzureMonitorProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfile)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfilePtrOutput) ToManagedClusterAzureMonitorProfilePtrOutput() ManagedClusterAzureMonitorProfilePtrOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfilePtrOutput) ToManagedClusterAzureMonitorProfilePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfilePtrOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfilePtrOutput) Elem() ManagedClusterAzureMonitorProfileOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfile) ManagedClusterAzureMonitorProfile { + if v != nil { + return *v + } + var ret ManagedClusterAzureMonitorProfile + return ret + }).(ManagedClusterAzureMonitorProfileOutput) +} + +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +func (o ManagedClusterAzureMonitorProfilePtrOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfile) *ManagedClusterAzureMonitorProfileMetrics { + if v == nil { + return nil + } + return v.Metrics + }).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) +} + +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +type ManagedClusterAzureMonitorProfileKubeStateMetrics struct { + // Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. + MetricAnnotationsAllowList *string `pulumi:"metricAnnotationsAllowList"` + // Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. + MetricLabelsAllowlist *string `pulumi:"metricLabelsAllowlist"` +} + +// ManagedClusterAzureMonitorProfileKubeStateMetricsInput is an input type that accepts ManagedClusterAzureMonitorProfileKubeStateMetricsArgs and ManagedClusterAzureMonitorProfileKubeStateMetricsOutput values. +// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileKubeStateMetricsInput` via: +// +// ManagedClusterAzureMonitorProfileKubeStateMetricsArgs{...} +type ManagedClusterAzureMonitorProfileKubeStateMetricsInput interface { + pulumi.Input + + ToManagedClusterAzureMonitorProfileKubeStateMetricsOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput + ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsOutput +} + +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +type ManagedClusterAzureMonitorProfileKubeStateMetricsArgs struct { + // Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. + MetricAnnotationsAllowList pulumi.StringPtrInput `pulumi:"metricAnnotationsAllowList"` + // Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. + MetricLabelsAllowlist pulumi.StringPtrInput `pulumi:"metricLabelsAllowlist"` +} + +func (ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +} + +func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { + return i.ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(context.Background()) +} + +func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) +} + +func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return i.ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Background()) +} + +func (i ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileKubeStateMetricsOutput).ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx) +} + +// ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput is an input type that accepts ManagedClusterAzureMonitorProfileKubeStateMetricsArgs, ManagedClusterAzureMonitorProfileKubeStateMetricsPtr and ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput values. +// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput` via: +// +// ManagedClusterAzureMonitorProfileKubeStateMetricsArgs{...} +// +// or: +// +// nil +type ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput interface { + pulumi.Input + + ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput + ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput +} + +type managedClusterAzureMonitorProfileKubeStateMetricsPtrType ManagedClusterAzureMonitorProfileKubeStateMetricsArgs + +func ManagedClusterAzureMonitorProfileKubeStateMetricsPtr(v *ManagedClusterAzureMonitorProfileKubeStateMetricsArgs) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput { + return (*managedClusterAzureMonitorProfileKubeStateMetricsPtrType)(v) +} + +func (*managedClusterAzureMonitorProfileKubeStateMetricsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +} + +func (i *managedClusterAzureMonitorProfileKubeStateMetricsPtrType) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return i.ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Background()) +} + +func (i *managedClusterAzureMonitorProfileKubeStateMetricsPtrType) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) +} + +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +type ManagedClusterAzureMonitorProfileKubeStateMetricsOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return o.ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAzureMonitorProfileKubeStateMetrics) *ManagedClusterAzureMonitorProfileKubeStateMetrics { + return &v + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) +} + +// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { return v.MetricAnnotationsAllowList }).(pulumi.StringPtrOutput) +} + +// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { return v.MetricLabelsAllowlist }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileKubeStateMetrics)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) Elem() ManagedClusterAzureMonitorProfileKubeStateMetricsOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetrics) ManagedClusterAzureMonitorProfileKubeStateMetrics { + if v != nil { + return *v + } + var ret ManagedClusterAzureMonitorProfileKubeStateMetrics + return ret + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsOutput) +} + +// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { + if v == nil { + return nil + } + return v.MetricAnnotationsAllowList + }).(pulumi.StringPtrOutput) +} + +// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetrics) *string { + if v == nil { + return nil + } + return v.MetricLabelsAllowlist + }).(pulumi.StringPtrOutput) +} + +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +type ManagedClusterAzureMonitorProfileKubeStateMetricsResponse struct { + // Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. + MetricAnnotationsAllowList *string `pulumi:"metricAnnotationsAllowList"` + // Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. + MetricLabelsAllowlist *string `pulumi:"metricLabelsAllowlist"` +} + +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +type ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileKubeStateMetricsResponse)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput { + return o +} + +// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { + return v.MetricAnnotationsAllowList + }).(pulumi.StringPtrOutput) +} + +// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { + return v.MetricLabelsAllowlist + }).(pulumi.StringPtrOutput) +} + +type ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileKubeStateMetricsResponse)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput() ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { + return o +} + +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) Elem() ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) ManagedClusterAzureMonitorProfileKubeStateMetricsResponse { + if v != nil { + return *v + } + var ret ManagedClusterAzureMonitorProfileKubeStateMetricsResponse + return ret + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsResponseOutput) +} + +// Comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric (Example: 'namespaces=[kubernetes.io/team,...],pods=[kubernetes.io/team],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) MetricAnnotationsAllowList() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { + if v == nil { + return nil + } + return v.MetricAnnotationsAllowList + }).(pulumi.StringPtrOutput) +} + +// Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric (Example: 'namespaces=[k8s-label-1,k8s-label-n,...],pods=[app],...'). By default the metric contains only resource name and namespace labels. +func (o ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) MetricLabelsAllowlist() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse) *string { + if v == nil { + return nil + } + return v.MetricLabelsAllowlist + }).(pulumi.StringPtrOutput) +} + +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +type ManagedClusterAzureMonitorProfileMetrics struct { + // Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. + Enabled bool `pulumi:"enabled"` + // Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. + KubeStateMetrics *ManagedClusterAzureMonitorProfileKubeStateMetrics `pulumi:"kubeStateMetrics"` +} + +// ManagedClusterAzureMonitorProfileMetricsInput is an input type that accepts ManagedClusterAzureMonitorProfileMetricsArgs and ManagedClusterAzureMonitorProfileMetricsOutput values. +// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileMetricsInput` via: +// +// ManagedClusterAzureMonitorProfileMetricsArgs{...} +type ManagedClusterAzureMonitorProfileMetricsInput interface { + pulumi.Input + + ToManagedClusterAzureMonitorProfileMetricsOutput() ManagedClusterAzureMonitorProfileMetricsOutput + ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileMetricsOutput +} -func (ManagedClusterLoadBalancerProfileOutboundIPsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +type ManagedClusterAzureMonitorProfileMetricsArgs struct { + // Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. + Enabled pulumi.BoolInput `pulumi:"enabled"` + // Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. + KubeStateMetrics ManagedClusterAzureMonitorProfileKubeStateMetricsPtrInput `pulumi:"kubeStateMetrics"` } -func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsOutput() ManagedClusterLoadBalancerProfileOutboundIPsOutput { +func (ManagedClusterAzureMonitorProfileMetricsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +} + +func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsOutput() ManagedClusterAzureMonitorProfileMetricsOutput { + return i.ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(context.Background()) +} + +func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileMetricsOutput) +} + +func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return i.ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Background()) +} + +func (i ManagedClusterAzureMonitorProfileMetricsArgs) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileMetricsOutput).ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx) +} + +// ManagedClusterAzureMonitorProfileMetricsPtrInput is an input type that accepts ManagedClusterAzureMonitorProfileMetricsArgs, ManagedClusterAzureMonitorProfileMetricsPtr and ManagedClusterAzureMonitorProfileMetricsPtrOutput values. +// You can construct a concrete instance of `ManagedClusterAzureMonitorProfileMetricsPtrInput` via: +// +// ManagedClusterAzureMonitorProfileMetricsArgs{...} +// +// or: +// +// nil +type ManagedClusterAzureMonitorProfileMetricsPtrInput interface { + pulumi.Input + + ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput + ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput +} + +type managedClusterAzureMonitorProfileMetricsPtrType ManagedClusterAzureMonitorProfileMetricsArgs + +func ManagedClusterAzureMonitorProfileMetricsPtr(v *ManagedClusterAzureMonitorProfileMetricsArgs) ManagedClusterAzureMonitorProfileMetricsPtrInput { + return (*managedClusterAzureMonitorProfileMetricsPtrType)(v) +} + +func (*managedClusterAzureMonitorProfileMetricsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +} + +func (i *managedClusterAzureMonitorProfileMetricsPtrType) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return i.ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Background()) +} + +func (i *managedClusterAzureMonitorProfileMetricsPtrType) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) +} + +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +type ManagedClusterAzureMonitorProfileMetricsOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileMetricsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsOutput() ManagedClusterAzureMonitorProfileMetricsOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsOutput { +func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return o.ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Background()) +func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return o.ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(context.Background()) } -func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfileOutboundIPs) *ManagedClusterLoadBalancerProfileOutboundIPs { +func (o ManagedClusterAzureMonitorProfileMetricsOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterAzureMonitorProfileMetrics) *ManagedClusterAzureMonitorProfileMetrics { return &v - }).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) + }).(ManagedClusterAzureMonitorProfileMetricsPtrOutput) } -// A list of public IP resources. -func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) PublicIPs() ResourceReferenceArrayOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileOutboundIPs) []ResourceReference { return v.PublicIPs }).(ResourceReferenceArrayOutput) +// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. +func (o ManagedClusterAzureMonitorProfileMetricsOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetrics) bool { return v.Enabled }).(pulumi.BoolOutput) } -type ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput struct{ *pulumi.OutputState } +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +func (o ManagedClusterAzureMonitorProfileMetricsOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetrics) *ManagedClusterAzureMonitorProfileKubeStateMetrics { + return v.KubeStateMetrics + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) +} -func (ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() +type ManagedClusterAzureMonitorProfileMetricsPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileMetricsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileMetrics)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { +func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutput() ManagedClusterAzureMonitorProfileMetricsPtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { +func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) ToManagedClusterAzureMonitorProfileMetricsPtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsPtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileOutboundIPsOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPs) ManagedClusterLoadBalancerProfileOutboundIPs { +func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) Elem() ManagedClusterAzureMonitorProfileMetricsOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetrics) ManagedClusterAzureMonitorProfileMetrics { if v != nil { return *v } - var ret ManagedClusterLoadBalancerProfileOutboundIPs + var ret ManagedClusterAzureMonitorProfileMetrics return ret - }).(ManagedClusterLoadBalancerProfileOutboundIPsOutput) + }).(ManagedClusterAzureMonitorProfileMetricsOutput) } -// A list of public IP resources. -func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) PublicIPs() ResourceReferenceArrayOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPs) []ResourceReference { +// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. +func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetrics) *bool { if v == nil { return nil } - return v.PublicIPs - }).(ResourceReferenceArrayOutput) + return &v.Enabled + }).(pulumi.BoolPtrOutput) } -// Profile of the managed cluster load balancer. -type ManagedClusterLoadBalancerProfileResponse struct { - // The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. - AllocatedOutboundPorts *int `pulumi:"allocatedOutboundPorts"` - // The effective outbound IP resources of the cluster load balancer. - EffectiveOutboundIPs []ResourceReferenceResponse `pulumi:"effectiveOutboundIPs"` - // Enable multiple standard load balancers per AKS cluster or not. - EnableMultipleStandardLoadBalancers *bool `pulumi:"enableMultipleStandardLoadBalancers"` - // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. - IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` - // Desired managed outbound IPs for the cluster load balancer. - ManagedOutboundIPs *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs `pulumi:"managedOutboundIPs"` - // Desired outbound IP Prefix resources for the cluster load balancer. - OutboundIPPrefixes *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes `pulumi:"outboundIPPrefixes"` - // Desired outbound IP resources for the cluster load balancer. - OutboundIPs *ManagedClusterLoadBalancerProfileResponseOutboundIPs `pulumi:"outboundIPs"` +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +func (o ManagedClusterAzureMonitorProfileMetricsPtrOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetrics) *ManagedClusterAzureMonitorProfileKubeStateMetrics { + if v == nil { + return nil + } + return v.KubeStateMetrics + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileResponse -func (val *ManagedClusterLoadBalancerProfileResponse) Defaults() *ManagedClusterLoadBalancerProfileResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.AllocatedOutboundPorts == nil { - allocatedOutboundPorts_ := 0 - tmp.AllocatedOutboundPorts = &allocatedOutboundPorts_ - } - if tmp.IdleTimeoutInMinutes == nil { - idleTimeoutInMinutes_ := 30 - tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ - } - tmp.ManagedOutboundIPs = tmp.ManagedOutboundIPs.Defaults() +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +type ManagedClusterAzureMonitorProfileMetricsResponse struct { + // Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. + Enabled bool `pulumi:"enabled"` + // Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. + KubeStateMetrics *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse `pulumi:"kubeStateMetrics"` +} - return &tmp +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +type ManagedClusterAzureMonitorProfileMetricsResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileMetricsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileMetricsResponse)(nil)).Elem() } -// Profile of the managed cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseOutput struct{ *pulumi.OutputState } +func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) ToManagedClusterAzureMonitorProfileMetricsResponseOutput() ManagedClusterAzureMonitorProfileMetricsResponseOutput { + return o +} -func (ManagedClusterLoadBalancerProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponse)(nil)).Elem() +func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) ToManagedClusterAzureMonitorProfileMetricsResponseOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsResponseOutput { + return o } -func (o ManagedClusterLoadBalancerProfileResponseOutput) ToManagedClusterLoadBalancerProfileResponseOutput() ManagedClusterLoadBalancerProfileResponseOutput { +// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. +func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetricsResponse) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +func (o ManagedClusterAzureMonitorProfileMetricsResponseOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileMetricsResponse) *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse { + return v.KubeStateMetrics + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) +} + +type ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileMetricsResponse)(nil)).Elem() +} + +func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileMetricsResponsePtrOutput() ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponseOutput) ToManagedClusterLoadBalancerProfileResponseOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutput { +func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) ToManagedClusterAzureMonitorProfileMetricsResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { return o } -// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. -func (o ManagedClusterLoadBalancerProfileResponseOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *int { return v.AllocatedOutboundPorts }).(pulumi.IntPtrOutput) +func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) Elem() ManagedClusterAzureMonitorProfileMetricsResponseOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetricsResponse) ManagedClusterAzureMonitorProfileMetricsResponse { + if v != nil { + return *v + } + var ret ManagedClusterAzureMonitorProfileMetricsResponse + return ret + }).(ManagedClusterAzureMonitorProfileMetricsResponseOutput) } -// The effective outbound IP resources of the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponseOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) []ResourceReferenceResponse { - return v.EffectiveOutboundIPs - }).(ResourceReferenceResponseArrayOutput) +// Whether to enable or disable the Azure Managed Prometheus addon for Prometheus monitoring. See aka.ms/AzureManagedPrometheus-aks-enable for details on enabling and disabling. +func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetricsResponse) *bool { + if v == nil { + return nil + } + return &v.Enabled + }).(pulumi.BoolPtrOutput) } -// Enable multiple standard load balancers per AKS cluster or not. -func (o ManagedClusterLoadBalancerProfileResponseOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *bool { return v.EnableMultipleStandardLoadBalancers }).(pulumi.BoolPtrOutput) +// Kube State Metrics profile for the Azure Managed Prometheus addon. These optional settings are for the kube-state-metrics pod that is deployed with the addon. See aka.ms/AzureManagedPrometheus-optional-parameters for details. +func (o ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) KubeStateMetrics() ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileMetricsResponse) *ManagedClusterAzureMonitorProfileKubeStateMetricsResponse { + if v == nil { + return nil + } + return v.KubeStateMetrics + }).(ManagedClusterAzureMonitorProfileKubeStateMetricsResponsePtrOutput) } -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. -func (o ManagedClusterLoadBalancerProfileResponseOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) +// Azure Monitor addon profiles for monitoring the managed cluster. +type ManagedClusterAzureMonitorProfileResponse struct { + // Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. + Metrics *ManagedClusterAzureMonitorProfileMetricsResponse `pulumi:"metrics"` +} + +// Azure Monitor addon profiles for monitoring the managed cluster. +type ManagedClusterAzureMonitorProfileResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterAzureMonitorProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterAzureMonitorProfileResponse)(nil)).Elem() } -// Desired managed outbound IPs for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponseOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { - return v.ManagedOutboundIPs - }).(ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) +func (o ManagedClusterAzureMonitorProfileResponseOutput) ToManagedClusterAzureMonitorProfileResponseOutput() ManagedClusterAzureMonitorProfileResponseOutput { + return o } -// Desired outbound IP Prefix resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponseOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes { - return v.OutboundIPPrefixes - }).(ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) +func (o ManagedClusterAzureMonitorProfileResponseOutput) ToManagedClusterAzureMonitorProfileResponseOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileResponseOutput { + return o } -// Desired outbound IP resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponseOutput) OutboundIPs() ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPs { - return v.OutboundIPs - }).(ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +func (o ManagedClusterAzureMonitorProfileResponseOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterAzureMonitorProfileResponse) *ManagedClusterAzureMonitorProfileMetricsResponse { + return v.Metrics + }).(ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) } -type ManagedClusterLoadBalancerProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterAzureMonitorProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponse)(nil)).Elem() +func (ManagedClusterAzureMonitorProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterAzureMonitorProfileResponse)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) ToManagedClusterLoadBalancerProfileResponsePtrOutput() ManagedClusterLoadBalancerProfileResponsePtrOutput { +func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) ToManagedClusterAzureMonitorProfileResponsePtrOutput() ManagedClusterAzureMonitorProfileResponsePtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) ToManagedClusterLoadBalancerProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponsePtrOutput { +func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) ToManagedClusterAzureMonitorProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterAzureMonitorProfileResponsePtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) ManagedClusterLoadBalancerProfileResponse { +func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) Elem() ManagedClusterAzureMonitorProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileResponse) ManagedClusterAzureMonitorProfileResponse { if v != nil { return *v } - var ret ManagedClusterLoadBalancerProfileResponse + var ret ManagedClusterAzureMonitorProfileResponse return ret - }).(ManagedClusterLoadBalancerProfileResponseOutput) -} - -// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *int { - if v == nil { - return nil - } - return v.AllocatedOutboundPorts - }).(pulumi.IntPtrOutput) -} - -// The effective outbound IP resources of the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) []ResourceReferenceResponse { - if v == nil { - return nil - } - return v.EffectiveOutboundIPs - }).(ResourceReferenceResponseArrayOutput) + }).(ManagedClusterAzureMonitorProfileResponseOutput) } -// Enable multiple standard load balancers per AKS cluster or not. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *bool { +// Metrics profile for the Azure Monitor managed service for Prometheus addon. Collect out-of-the-box Kubernetes infrastructure metrics to send to an Azure Monitor Workspace and configure additional scraping for custom targets. See aka.ms/AzureManagedPrometheus for an overview. +func (o ManagedClusterAzureMonitorProfileResponsePtrOutput) Metrics() ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterAzureMonitorProfileResponse) *ManagedClusterAzureMonitorProfileMetricsResponse { if v == nil { return nil } - return v.EnableMultipleStandardLoadBalancers - }).(pulumi.BoolPtrOutput) + return v.Metrics + }).(ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput) } -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *int { - if v == nil { - return nil - } - return v.IdleTimeoutInMinutes - }).(pulumi.IntPtrOutput) +// The cost analysis configuration for the cluster +type ManagedClusterCostAnalysis struct { + // The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. + Enabled *bool `pulumi:"enabled"` } -// Desired managed outbound IPs for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { - if v == nil { - return nil - } - return v.ManagedOutboundIPs - }).(ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) -} +// ManagedClusterCostAnalysisInput is an input type that accepts ManagedClusterCostAnalysisArgs and ManagedClusterCostAnalysisOutput values. +// You can construct a concrete instance of `ManagedClusterCostAnalysisInput` via: +// +// ManagedClusterCostAnalysisArgs{...} +type ManagedClusterCostAnalysisInput interface { + pulumi.Input -// Desired outbound IP Prefix resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes { - if v == nil { - return nil - } - return v.OutboundIPPrefixes - }).(ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) + ToManagedClusterCostAnalysisOutput() ManagedClusterCostAnalysisOutput + ToManagedClusterCostAnalysisOutputWithContext(context.Context) ManagedClusterCostAnalysisOutput } -// Desired outbound IP resources for the cluster load balancer. -func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) OutboundIPs() ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPs { - if v == nil { - return nil - } - return v.OutboundIPs - }).(ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) +// The cost analysis configuration for the cluster +type ManagedClusterCostAnalysisArgs struct { + // The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -// Desired managed outbound IPs for the cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs struct { - // The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. - Count *int `pulumi:"count"` - // The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. - CountIPv6 *int `pulumi:"countIPv6"` +func (ManagedClusterCostAnalysisArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterCostAnalysis)(nil)).Elem() } -// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs -func (val *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) Defaults() *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { - if val == nil { - return nil - } - tmp := *val - if tmp.Count == nil { - count_ := 1 - tmp.Count = &count_ - } - if tmp.CountIPv6 == nil { - countIPv6_ := 0 - tmp.CountIPv6 = &countIPv6_ - } - return &tmp +func (i ManagedClusterCostAnalysisArgs) ToManagedClusterCostAnalysisOutput() ManagedClusterCostAnalysisOutput { + return i.ToManagedClusterCostAnalysisOutputWithContext(context.Background()) } -// Desired managed outbound IPs for the cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput struct{ *pulumi.OutputState } - -func (ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs)(nil)).Elem() +func (i ManagedClusterCostAnalysisArgs) ToManagedClusterCostAnalysisOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterCostAnalysisOutput) } -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput { - return o +func (i ManagedClusterCostAnalysisArgs) ToManagedClusterCostAnalysisPtrOutput() ManagedClusterCostAnalysisPtrOutput { + return i.ToManagedClusterCostAnalysisPtrOutputWithContext(context.Background()) } -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput { - return o +func (i ManagedClusterCostAnalysisArgs) ToManagedClusterCostAnalysisPtrOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterCostAnalysisOutput).ToManagedClusterCostAnalysisPtrOutputWithContext(ctx) } -// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { return v.Count }).(pulumi.IntPtrOutput) -} +// ManagedClusterCostAnalysisPtrInput is an input type that accepts ManagedClusterCostAnalysisArgs, ManagedClusterCostAnalysisPtr and ManagedClusterCostAnalysisPtrOutput values. +// You can construct a concrete instance of `ManagedClusterCostAnalysisPtrInput` via: +// +// ManagedClusterCostAnalysisArgs{...} +// +// or: +// +// nil +type ManagedClusterCostAnalysisPtrInput interface { + pulumi.Input -// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) CountIPv6() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { return v.CountIPv6 }).(pulumi.IntPtrOutput) + ToManagedClusterCostAnalysisPtrOutput() ManagedClusterCostAnalysisPtrOutput + ToManagedClusterCostAnalysisPtrOutputWithContext(context.Context) ManagedClusterCostAnalysisPtrOutput } -type ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput struct{ *pulumi.OutputState } +type managedClusterCostAnalysisPtrType ManagedClusterCostAnalysisArgs -func (ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs)(nil)).Elem() +func ManagedClusterCostAnalysisPtr(v *ManagedClusterCostAnalysisArgs) ManagedClusterCostAnalysisPtrInput { + return (*managedClusterCostAnalysisPtrType)(v) } -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { - return o +func (*managedClusterCostAnalysisPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterCostAnalysis)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { - return o +func (i *managedClusterCostAnalysisPtrType) ToManagedClusterCostAnalysisPtrOutput() ManagedClusterCostAnalysisPtrOutput { + return i.ToManagedClusterCostAnalysisPtrOutputWithContext(context.Background()) } -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { - if v != nil { - return *v - } - var ret ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs - return ret - }).(ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) +func (i *managedClusterCostAnalysisPtrType) ToManagedClusterCostAnalysisPtrOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterCostAnalysisPtrOutput) } -// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { - if v == nil { - return nil - } - return v.Count - }).(pulumi.IntPtrOutput) -} +// The cost analysis configuration for the cluster +type ManagedClusterCostAnalysisOutput struct{ *pulumi.OutputState } -// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. -func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) CountIPv6() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { - if v == nil { - return nil - } - return v.CountIPv6 - }).(pulumi.IntPtrOutput) +func (ManagedClusterCostAnalysisOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterCostAnalysis)(nil)).Elem() } -// Desired outbound IP Prefix resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes struct { - // A list of public IP prefix resources. - PublicIPPrefixes []ResourceReferenceResponse `pulumi:"publicIPPrefixes"` +func (o ManagedClusterCostAnalysisOutput) ToManagedClusterCostAnalysisOutput() ManagedClusterCostAnalysisOutput { + return o } -// Desired outbound IP Prefix resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput struct{ *pulumi.OutputState } - -func (ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes)(nil)).Elem() +func (o ManagedClusterCostAnalysisOutput) ToManagedClusterCostAnalysisOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisOutput { + return o } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput { - return o +func (o ManagedClusterCostAnalysisOutput) ToManagedClusterCostAnalysisPtrOutput() ManagedClusterCostAnalysisPtrOutput { + return o.ToManagedClusterCostAnalysisPtrOutputWithContext(context.Background()) } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput { - return o +func (o ManagedClusterCostAnalysisOutput) ToManagedClusterCostAnalysisPtrOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterCostAnalysis) *ManagedClusterCostAnalysis { + return &v + }).(ManagedClusterCostAnalysisPtrOutput) } -// A list of public IP prefix resources. -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) PublicIPPrefixes() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes) []ResourceReferenceResponse { - return v.PublicIPPrefixes - }).(ResourceReferenceResponseArrayOutput) +// The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. +func (o ManagedClusterCostAnalysisOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterCostAnalysis) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterCostAnalysisPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes)(nil)).Elem() +func (ManagedClusterCostAnalysisPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterCostAnalysis)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { +func (o ManagedClusterCostAnalysisPtrOutput) ToManagedClusterCostAnalysisPtrOutput() ManagedClusterCostAnalysisPtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { +func (o ManagedClusterCostAnalysisPtrOutput) ToManagedClusterCostAnalysisPtrOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisPtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes) ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes { +func (o ManagedClusterCostAnalysisPtrOutput) Elem() ManagedClusterCostAnalysisOutput { + return o.ApplyT(func(v *ManagedClusterCostAnalysis) ManagedClusterCostAnalysis { if v != nil { return *v } - var ret ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes + var ret ManagedClusterCostAnalysis return ret - }).(ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) + }).(ManagedClusterCostAnalysisOutput) } -// A list of public IP prefix resources. -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) PublicIPPrefixes() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes) []ResourceReferenceResponse { +// The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. +func (o ManagedClusterCostAnalysisPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterCostAnalysis) *bool { if v == nil { return nil } - return v.PublicIPPrefixes - }).(ResourceReferenceResponseArrayOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Desired outbound IP resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseOutboundIPs struct { - // A list of public IP resources. - PublicIPs []ResourceReferenceResponse `pulumi:"publicIPs"` +// The cost analysis configuration for the cluster +type ManagedClusterCostAnalysisResponse struct { + // The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. + Enabled *bool `pulumi:"enabled"` } -// Desired outbound IP resources for the cluster load balancer. -type ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput struct{ *pulumi.OutputState } +// The cost analysis configuration for the cluster +type ManagedClusterCostAnalysisResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponseOutboundIPs)(nil)).Elem() +func (ManagedClusterCostAnalysisResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterCostAnalysisResponse)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput { +func (o ManagedClusterCostAnalysisResponseOutput) ToManagedClusterCostAnalysisResponseOutput() ManagedClusterCostAnalysisResponseOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput { +func (o ManagedClusterCostAnalysisResponseOutput) ToManagedClusterCostAnalysisResponseOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisResponseOutput { return o } -// A list of public IP resources. -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) PublicIPs() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseOutboundIPs) []ResourceReferenceResponse { - return v.PublicIPs - }).(ResourceReferenceResponseArrayOutput) +// The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. +func (o ManagedClusterCostAnalysisResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterCostAnalysisResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterCostAnalysisResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponseOutboundIPs)(nil)).Elem() +func (ManagedClusterCostAnalysisResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterCostAnalysisResponse)(nil)).Elem() } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { +func (o ManagedClusterCostAnalysisResponsePtrOutput) ToManagedClusterCostAnalysisResponsePtrOutput() ManagedClusterCostAnalysisResponsePtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { +func (o ManagedClusterCostAnalysisResponsePtrOutput) ToManagedClusterCostAnalysisResponsePtrOutputWithContext(ctx context.Context) ManagedClusterCostAnalysisResponsePtrOutput { return o } -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPs) ManagedClusterLoadBalancerProfileResponseOutboundIPs { +func (o ManagedClusterCostAnalysisResponsePtrOutput) Elem() ManagedClusterCostAnalysisResponseOutput { + return o.ApplyT(func(v *ManagedClusterCostAnalysisResponse) ManagedClusterCostAnalysisResponse { if v != nil { return *v } - var ret ManagedClusterLoadBalancerProfileResponseOutboundIPs + var ret ManagedClusterCostAnalysisResponse return ret - }).(ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) -} - -// A list of public IP resources. -func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) PublicIPs() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPs) []ResourceReferenceResponse { - if v == nil { - return nil - } - return v.PublicIPs - }).(ResourceReferenceResponseArrayOutput) + }).(ManagedClusterCostAnalysisResponseOutput) } -// Profile of the managed outbound IP resources of the managed cluster. -type ManagedClusterManagedOutboundIPProfile struct { - // The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. - Count *int `pulumi:"count"` +// The Managed Cluster sku.tier must be set to 'Standard' or 'Premium' to enable this feature. Enabling this will add Kubernetes Namespace and Deployment details to the Cost Analysis views in the Azure portal. If not specified, the default is false. For more information see aka.ms/aks/docs/cost-analysis. +func (o ManagedClusterCostAnalysisResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterCostAnalysisResponse) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterManagedOutboundIPProfile -func (val *ManagedClusterManagedOutboundIPProfile) Defaults() *ManagedClusterManagedOutboundIPProfile { - if val == nil { - return nil - } - tmp := *val - if tmp.Count == nil { - count_ := 1 - tmp.Count = &count_ - } - return &tmp +// Cluster HTTP proxy configuration. +type ManagedClusterHTTPProxyConfig struct { + // The HTTP proxy server endpoint to use. + HttpProxy *string `pulumi:"httpProxy"` + // The HTTPS proxy server endpoint to use. + HttpsProxy *string `pulumi:"httpsProxy"` + // The endpoints that should not go through proxy. + NoProxy []string `pulumi:"noProxy"` + // Alternative CA cert to use for connecting to proxy servers. + TrustedCa *string `pulumi:"trustedCa"` } -// ManagedClusterManagedOutboundIPProfileInput is an input type that accepts ManagedClusterManagedOutboundIPProfileArgs and ManagedClusterManagedOutboundIPProfileOutput values. -// You can construct a concrete instance of `ManagedClusterManagedOutboundIPProfileInput` via: +// ManagedClusterHTTPProxyConfigInput is an input type that accepts ManagedClusterHTTPProxyConfigArgs and ManagedClusterHTTPProxyConfigOutput values. +// You can construct a concrete instance of `ManagedClusterHTTPProxyConfigInput` via: // -// ManagedClusterManagedOutboundIPProfileArgs{...} -type ManagedClusterManagedOutboundIPProfileInput interface { +// ManagedClusterHTTPProxyConfigArgs{...} +type ManagedClusterHTTPProxyConfigInput interface { pulumi.Input - ToManagedClusterManagedOutboundIPProfileOutput() ManagedClusterManagedOutboundIPProfileOutput - ToManagedClusterManagedOutboundIPProfileOutputWithContext(context.Context) ManagedClusterManagedOutboundIPProfileOutput + ToManagedClusterHTTPProxyConfigOutput() ManagedClusterHTTPProxyConfigOutput + ToManagedClusterHTTPProxyConfigOutputWithContext(context.Context) ManagedClusterHTTPProxyConfigOutput } -// Profile of the managed outbound IP resources of the managed cluster. -type ManagedClusterManagedOutboundIPProfileArgs struct { - // The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. - Count pulumi.IntPtrInput `pulumi:"count"` +// Cluster HTTP proxy configuration. +type ManagedClusterHTTPProxyConfigArgs struct { + // The HTTP proxy server endpoint to use. + HttpProxy pulumi.StringPtrInput `pulumi:"httpProxy"` + // The HTTPS proxy server endpoint to use. + HttpsProxy pulumi.StringPtrInput `pulumi:"httpsProxy"` + // The endpoints that should not go through proxy. + NoProxy pulumi.StringArrayInput `pulumi:"noProxy"` + // Alternative CA cert to use for connecting to proxy servers. + TrustedCa pulumi.StringPtrInput `pulumi:"trustedCa"` } -// Defaults sets the appropriate defaults for ManagedClusterManagedOutboundIPProfileArgs -func (val *ManagedClusterManagedOutboundIPProfileArgs) Defaults() *ManagedClusterManagedOutboundIPProfileArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.Count == nil { - tmp.Count = pulumi.IntPtr(1) - } - return &tmp -} -func (ManagedClusterManagedOutboundIPProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterManagedOutboundIPProfile)(nil)).Elem() +func (ManagedClusterHTTPProxyConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterHTTPProxyConfig)(nil)).Elem() } -func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfileOutput() ManagedClusterManagedOutboundIPProfileOutput { - return i.ToManagedClusterManagedOutboundIPProfileOutputWithContext(context.Background()) +func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigOutput() ManagedClusterHTTPProxyConfigOutput { + return i.ToManagedClusterHTTPProxyConfigOutputWithContext(context.Background()) } -func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfileOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterManagedOutboundIPProfileOutput) +func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterHTTPProxyConfigOutput) } -func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { - return i.ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { + return i.ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Background()) } -func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterManagedOutboundIPProfileOutput).ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx) +func (i ManagedClusterHTTPProxyConfigArgs) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterHTTPProxyConfigOutput).ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx) } -// ManagedClusterManagedOutboundIPProfilePtrInput is an input type that accepts ManagedClusterManagedOutboundIPProfileArgs, ManagedClusterManagedOutboundIPProfilePtr and ManagedClusterManagedOutboundIPProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterManagedOutboundIPProfilePtrInput` via: +// ManagedClusterHTTPProxyConfigPtrInput is an input type that accepts ManagedClusterHTTPProxyConfigArgs, ManagedClusterHTTPProxyConfigPtr and ManagedClusterHTTPProxyConfigPtrOutput values. +// You can construct a concrete instance of `ManagedClusterHTTPProxyConfigPtrInput` via: // -// ManagedClusterManagedOutboundIPProfileArgs{...} +// ManagedClusterHTTPProxyConfigArgs{...} // // or: // // nil -type ManagedClusterManagedOutboundIPProfilePtrInput interface { +type ManagedClusterHTTPProxyConfigPtrInput interface { pulumi.Input - ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput - ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput + ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput + ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Context) ManagedClusterHTTPProxyConfigPtrOutput } -type managedClusterManagedOutboundIPProfilePtrType ManagedClusterManagedOutboundIPProfileArgs +type managedClusterHTTPProxyConfigPtrType ManagedClusterHTTPProxyConfigArgs -func ManagedClusterManagedOutboundIPProfilePtr(v *ManagedClusterManagedOutboundIPProfileArgs) ManagedClusterManagedOutboundIPProfilePtrInput { - return (*managedClusterManagedOutboundIPProfilePtrType)(v) +func ManagedClusterHTTPProxyConfigPtr(v *ManagedClusterHTTPProxyConfigArgs) ManagedClusterHTTPProxyConfigPtrInput { + return (*managedClusterHTTPProxyConfigPtrType)(v) } -func (*managedClusterManagedOutboundIPProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterManagedOutboundIPProfile)(nil)).Elem() +func (*managedClusterHTTPProxyConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterHTTPProxyConfig)(nil)).Elem() } -func (i *managedClusterManagedOutboundIPProfilePtrType) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { - return i.ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterHTTPProxyConfigPtrType) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { + return i.ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Background()) } -func (i *managedClusterManagedOutboundIPProfilePtrType) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterManagedOutboundIPProfilePtrOutput) +func (i *managedClusterHTTPProxyConfigPtrType) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterHTTPProxyConfigPtrOutput) } -// Profile of the managed outbound IP resources of the managed cluster. -type ManagedClusterManagedOutboundIPProfileOutput struct{ *pulumi.OutputState } +// Cluster HTTP proxy configuration. +type ManagedClusterHTTPProxyConfigOutput struct{ *pulumi.OutputState } -func (ManagedClusterManagedOutboundIPProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterManagedOutboundIPProfile)(nil)).Elem() +func (ManagedClusterHTTPProxyConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterHTTPProxyConfig)(nil)).Elem() } -func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfileOutput() ManagedClusterManagedOutboundIPProfileOutput { +func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigOutput() ManagedClusterHTTPProxyConfigOutput { return o } -func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfileOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileOutput { +func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigOutput { return o } -func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { - return o.ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { + return o.ToManagedClusterHTTPProxyConfigPtrOutputWithContext(context.Background()) } -func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterManagedOutboundIPProfile) *ManagedClusterManagedOutboundIPProfile { +func (o ManagedClusterHTTPProxyConfigOutput) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterHTTPProxyConfig) *ManagedClusterHTTPProxyConfig { return &v - }).(ManagedClusterManagedOutboundIPProfilePtrOutput) + }).(ManagedClusterHTTPProxyConfigPtrOutput) } -// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. -func (o ManagedClusterManagedOutboundIPProfileOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterManagedOutboundIPProfile) *int { return v.Count }).(pulumi.IntPtrOutput) +// The HTTP proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigOutput) HttpProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) *string { return v.HttpProxy }).(pulumi.StringPtrOutput) } -type ManagedClusterManagedOutboundIPProfilePtrOutput struct{ *pulumi.OutputState } +// The HTTPS proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigOutput) HttpsProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) *string { return v.HttpsProxy }).(pulumi.StringPtrOutput) +} -func (ManagedClusterManagedOutboundIPProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterManagedOutboundIPProfile)(nil)).Elem() +// The endpoints that should not go through proxy. +func (o ManagedClusterHTTPProxyConfigOutput) NoProxy() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) []string { return v.NoProxy }).(pulumi.StringArrayOutput) } -func (o ManagedClusterManagedOutboundIPProfilePtrOutput) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { +// Alternative CA cert to use for connecting to proxy servers. +func (o ManagedClusterHTTPProxyConfigOutput) TrustedCa() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfig) *string { return v.TrustedCa }).(pulumi.StringPtrOutput) +} + +type ManagedClusterHTTPProxyConfigPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterHTTPProxyConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterHTTPProxyConfig)(nil)).Elem() +} + +func (o ManagedClusterHTTPProxyConfigPtrOutput) ToManagedClusterHTTPProxyConfigPtrOutput() ManagedClusterHTTPProxyConfigPtrOutput { return o } -func (o ManagedClusterManagedOutboundIPProfilePtrOutput) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { +func (o ManagedClusterHTTPProxyConfigPtrOutput) ToManagedClusterHTTPProxyConfigPtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigPtrOutput { return o } -func (o ManagedClusterManagedOutboundIPProfilePtrOutput) Elem() ManagedClusterManagedOutboundIPProfileOutput { - return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfile) ManagedClusterManagedOutboundIPProfile { +func (o ManagedClusterHTTPProxyConfigPtrOutput) Elem() ManagedClusterHTTPProxyConfigOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) ManagedClusterHTTPProxyConfig { if v != nil { return *v } - var ret ManagedClusterManagedOutboundIPProfile + var ret ManagedClusterHTTPProxyConfig return ret - }).(ManagedClusterManagedOutboundIPProfileOutput) + }).(ManagedClusterHTTPProxyConfigOutput) } -// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. -func (o ManagedClusterManagedOutboundIPProfilePtrOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfile) *int { +// The HTTP proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigPtrOutput) HttpProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) *string { if v == nil { return nil } - return v.Count - }).(pulumi.IntPtrOutput) + return v.HttpProxy + }).(pulumi.StringPtrOutput) } -// Profile of the managed outbound IP resources of the managed cluster. -type ManagedClusterManagedOutboundIPProfileResponse struct { - // The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. - Count *int `pulumi:"count"` +// The HTTPS proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigPtrOutput) HttpsProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) *string { + if v == nil { + return nil + } + return v.HttpsProxy + }).(pulumi.StringPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterManagedOutboundIPProfileResponse -func (val *ManagedClusterManagedOutboundIPProfileResponse) Defaults() *ManagedClusterManagedOutboundIPProfileResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.Count == nil { - count_ := 1 - tmp.Count = &count_ - } - return &tmp +// The endpoints that should not go through proxy. +func (o ManagedClusterHTTPProxyConfigPtrOutput) NoProxy() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) []string { + if v == nil { + return nil + } + return v.NoProxy + }).(pulumi.StringArrayOutput) } -// Profile of the managed outbound IP resources of the managed cluster. -type ManagedClusterManagedOutboundIPProfileResponseOutput struct{ *pulumi.OutputState } +// Alternative CA cert to use for connecting to proxy servers. +func (o ManagedClusterHTTPProxyConfigPtrOutput) TrustedCa() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfig) *string { + if v == nil { + return nil + } + return v.TrustedCa + }).(pulumi.StringPtrOutput) +} + +// Cluster HTTP proxy configuration. +type ManagedClusterHTTPProxyConfigResponse struct { + // The HTTP proxy server endpoint to use. + HttpProxy *string `pulumi:"httpProxy"` + // The HTTPS proxy server endpoint to use. + HttpsProxy *string `pulumi:"httpsProxy"` + // The endpoints that should not go through proxy. + NoProxy []string `pulumi:"noProxy"` + // Alternative CA cert to use for connecting to proxy servers. + TrustedCa *string `pulumi:"trustedCa"` +} + +// Cluster HTTP proxy configuration. +type ManagedClusterHTTPProxyConfigResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterHTTPProxyConfigResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterHTTPProxyConfigResponse)(nil)).Elem() +} + +func (o ManagedClusterHTTPProxyConfigResponseOutput) ToManagedClusterHTTPProxyConfigResponseOutput() ManagedClusterHTTPProxyConfigResponseOutput { + return o +} + +func (o ManagedClusterHTTPProxyConfigResponseOutput) ToManagedClusterHTTPProxyConfigResponseOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigResponseOutput { + return o +} -func (ManagedClusterManagedOutboundIPProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterManagedOutboundIPProfileResponse)(nil)).Elem() +// The HTTP proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigResponseOutput) HttpProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) *string { return v.HttpProxy }).(pulumi.StringPtrOutput) } -func (o ManagedClusterManagedOutboundIPProfileResponseOutput) ToManagedClusterManagedOutboundIPProfileResponseOutput() ManagedClusterManagedOutboundIPProfileResponseOutput { - return o +// The HTTPS proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigResponseOutput) HttpsProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) *string { return v.HttpsProxy }).(pulumi.StringPtrOutput) } -func (o ManagedClusterManagedOutboundIPProfileResponseOutput) ToManagedClusterManagedOutboundIPProfileResponseOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileResponseOutput { - return o +// The endpoints that should not go through proxy. +func (o ManagedClusterHTTPProxyConfigResponseOutput) NoProxy() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) []string { return v.NoProxy }).(pulumi.StringArrayOutput) } -// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. -func (o ManagedClusterManagedOutboundIPProfileResponseOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterManagedOutboundIPProfileResponse) *int { return v.Count }).(pulumi.IntPtrOutput) +// Alternative CA cert to use for connecting to proxy servers. +func (o ManagedClusterHTTPProxyConfigResponseOutput) TrustedCa() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterHTTPProxyConfigResponse) *string { return v.TrustedCa }).(pulumi.StringPtrOutput) } -type ManagedClusterManagedOutboundIPProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterHTTPProxyConfigResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterManagedOutboundIPProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterManagedOutboundIPProfileResponse)(nil)).Elem() +func (ManagedClusterHTTPProxyConfigResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterHTTPProxyConfigResponse)(nil)).Elem() } -func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) ToManagedClusterManagedOutboundIPProfileResponsePtrOutput() ManagedClusterManagedOutboundIPProfileResponsePtrOutput { +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) ToManagedClusterHTTPProxyConfigResponsePtrOutput() ManagedClusterHTTPProxyConfigResponsePtrOutput { return o } -func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) ToManagedClusterManagedOutboundIPProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileResponsePtrOutput { +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) ToManagedClusterHTTPProxyConfigResponsePtrOutputWithContext(ctx context.Context) ManagedClusterHTTPProxyConfigResponsePtrOutput { return o } -func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) Elem() ManagedClusterManagedOutboundIPProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfileResponse) ManagedClusterManagedOutboundIPProfileResponse { +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) Elem() ManagedClusterHTTPProxyConfigResponseOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) ManagedClusterHTTPProxyConfigResponse { if v != nil { return *v } - var ret ManagedClusterManagedOutboundIPProfileResponse + var ret ManagedClusterHTTPProxyConfigResponse return ret - }).(ManagedClusterManagedOutboundIPProfileResponseOutput) + }).(ManagedClusterHTTPProxyConfigResponseOutput) } -// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. -func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfileResponse) *int { +// The HTTP proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) HttpProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) *string { if v == nil { return nil } - return v.Count - }).(pulumi.IntPtrOutput) + return v.HttpProxy + }).(pulumi.StringPtrOutput) } -// Profile of the managed cluster NAT gateway. -type ManagedClusterNATGatewayProfile struct { - // The effective outbound IP resources of the cluster NAT gateway. - EffectiveOutboundIPs []ResourceReference `pulumi:"effectiveOutboundIPs"` - // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. - IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` - // Profile of the managed outbound IP resources of the cluster NAT gateway. - ManagedOutboundIPProfile *ManagedClusterManagedOutboundIPProfile `pulumi:"managedOutboundIPProfile"` +// The HTTPS proxy server endpoint to use. +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) HttpsProxy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) *string { + if v == nil { + return nil + } + return v.HttpsProxy + }).(pulumi.StringPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterNATGatewayProfile -func (val *ManagedClusterNATGatewayProfile) Defaults() *ManagedClusterNATGatewayProfile { - if val == nil { - return nil - } - tmp := *val - if tmp.IdleTimeoutInMinutes == nil { - idleTimeoutInMinutes_ := 4 - tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ - } - tmp.ManagedOutboundIPProfile = tmp.ManagedOutboundIPProfile.Defaults() +// The endpoints that should not go through proxy. +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) NoProxy() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) []string { + if v == nil { + return nil + } + return v.NoProxy + }).(pulumi.StringArrayOutput) +} - return &tmp +// Alternative CA cert to use for connecting to proxy servers. +func (o ManagedClusterHTTPProxyConfigResponsePtrOutput) TrustedCa() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterHTTPProxyConfigResponse) *string { + if v == nil { + return nil + } + return v.TrustedCa + }).(pulumi.StringPtrOutput) } -// ManagedClusterNATGatewayProfileInput is an input type that accepts ManagedClusterNATGatewayProfileArgs and ManagedClusterNATGatewayProfileOutput values. -// You can construct a concrete instance of `ManagedClusterNATGatewayProfileInput` via: +// Identity for the managed cluster. +type ManagedClusterIdentity struct { + // The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. + DelegatedResources map[string]DelegatedResource `pulumi:"delegatedResources"` + // For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). + Type *ResourceIdentityType `pulumi:"type"` + // The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + UserAssignedIdentities []string `pulumi:"userAssignedIdentities"` +} + +// ManagedClusterIdentityInput is an input type that accepts ManagedClusterIdentityArgs and ManagedClusterIdentityOutput values. +// You can construct a concrete instance of `ManagedClusterIdentityInput` via: // -// ManagedClusterNATGatewayProfileArgs{...} -type ManagedClusterNATGatewayProfileInput interface { +// ManagedClusterIdentityArgs{...} +type ManagedClusterIdentityInput interface { pulumi.Input - ToManagedClusterNATGatewayProfileOutput() ManagedClusterNATGatewayProfileOutput - ToManagedClusterNATGatewayProfileOutputWithContext(context.Context) ManagedClusterNATGatewayProfileOutput + ToManagedClusterIdentityOutput() ManagedClusterIdentityOutput + ToManagedClusterIdentityOutputWithContext(context.Context) ManagedClusterIdentityOutput } -// Profile of the managed cluster NAT gateway. -type ManagedClusterNATGatewayProfileArgs struct { - // The effective outbound IP resources of the cluster NAT gateway. - EffectiveOutboundIPs ResourceReferenceArrayInput `pulumi:"effectiveOutboundIPs"` - // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. - IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"` - // Profile of the managed outbound IP resources of the cluster NAT gateway. - ManagedOutboundIPProfile ManagedClusterManagedOutboundIPProfilePtrInput `pulumi:"managedOutboundIPProfile"` +// Identity for the managed cluster. +type ManagedClusterIdentityArgs struct { + // The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. + DelegatedResources DelegatedResourceMapInput `pulumi:"delegatedResources"` + // For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). + Type ResourceIdentityTypePtrInput `pulumi:"type"` + // The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + UserAssignedIdentities pulumi.StringArrayInput `pulumi:"userAssignedIdentities"` } -// Defaults sets the appropriate defaults for ManagedClusterNATGatewayProfileArgs -func (val *ManagedClusterNATGatewayProfileArgs) Defaults() *ManagedClusterNATGatewayProfileArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.IdleTimeoutInMinutes == nil { - tmp.IdleTimeoutInMinutes = pulumi.IntPtr(4) - } - - return &tmp -} -func (ManagedClusterNATGatewayProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterNATGatewayProfile)(nil)).Elem() +func (ManagedClusterIdentityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIdentity)(nil)).Elem() } -func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfileOutput() ManagedClusterNATGatewayProfileOutput { - return i.ToManagedClusterNATGatewayProfileOutputWithContext(context.Background()) +func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityOutput() ManagedClusterIdentityOutput { + return i.ToManagedClusterIdentityOutputWithContext(context.Background()) } -func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfileOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterNATGatewayProfileOutput) +func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityOutputWithContext(ctx context.Context) ManagedClusterIdentityOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIdentityOutput) } -func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { - return i.ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { + return i.ToManagedClusterIdentityPtrOutputWithContext(context.Background()) } -func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterNATGatewayProfileOutput).ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx) +func (i ManagedClusterIdentityArgs) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIdentityOutput).ToManagedClusterIdentityPtrOutputWithContext(ctx) } -// ManagedClusterNATGatewayProfilePtrInput is an input type that accepts ManagedClusterNATGatewayProfileArgs, ManagedClusterNATGatewayProfilePtr and ManagedClusterNATGatewayProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterNATGatewayProfilePtrInput` via: +// ManagedClusterIdentityPtrInput is an input type that accepts ManagedClusterIdentityArgs, ManagedClusterIdentityPtr and ManagedClusterIdentityPtrOutput values. +// You can construct a concrete instance of `ManagedClusterIdentityPtrInput` via: // -// ManagedClusterNATGatewayProfileArgs{...} +// ManagedClusterIdentityArgs{...} // // or: // // nil -type ManagedClusterNATGatewayProfilePtrInput interface { +type ManagedClusterIdentityPtrInput interface { pulumi.Input - ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput - ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Context) ManagedClusterNATGatewayProfilePtrOutput + ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput + ToManagedClusterIdentityPtrOutputWithContext(context.Context) ManagedClusterIdentityPtrOutput } -type managedClusterNATGatewayProfilePtrType ManagedClusterNATGatewayProfileArgs +type managedClusterIdentityPtrType ManagedClusterIdentityArgs -func ManagedClusterNATGatewayProfilePtr(v *ManagedClusterNATGatewayProfileArgs) ManagedClusterNATGatewayProfilePtrInput { - return (*managedClusterNATGatewayProfilePtrType)(v) +func ManagedClusterIdentityPtr(v *ManagedClusterIdentityArgs) ManagedClusterIdentityPtrInput { + return (*managedClusterIdentityPtrType)(v) +} + +func (*managedClusterIdentityPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIdentity)(nil)).Elem() +} + +func (i *managedClusterIdentityPtrType) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { + return i.ToManagedClusterIdentityPtrOutputWithContext(context.Background()) +} + +func (i *managedClusterIdentityPtrType) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIdentityPtrOutput) +} + +// Identity for the managed cluster. +type ManagedClusterIdentityOutput struct{ *pulumi.OutputState } + +func (ManagedClusterIdentityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIdentity)(nil)).Elem() +} + +func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityOutput() ManagedClusterIdentityOutput { + return o +} + +func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityOutputWithContext(ctx context.Context) ManagedClusterIdentityOutput { + return o +} + +func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { + return o.ToManagedClusterIdentityPtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterIdentityOutput) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterIdentity) *ManagedClusterIdentity { + return &v + }).(ManagedClusterIdentityPtrOutput) +} + +// The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. +func (o ManagedClusterIdentityOutput) DelegatedResources() DelegatedResourceMapOutput { + return o.ApplyT(func(v ManagedClusterIdentity) map[string]DelegatedResource { return v.DelegatedResources }).(DelegatedResourceMapOutput) +} + +// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). +func (o ManagedClusterIdentityOutput) Type() ResourceIdentityTypePtrOutput { + return o.ApplyT(func(v ManagedClusterIdentity) *ResourceIdentityType { return v.Type }).(ResourceIdentityTypePtrOutput) +} + +// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. +func (o ManagedClusterIdentityOutput) UserAssignedIdentities() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterIdentity) []string { return v.UserAssignedIdentities }).(pulumi.StringArrayOutput) +} + +type ManagedClusterIdentityPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterIdentityPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIdentity)(nil)).Elem() +} + +func (o ManagedClusterIdentityPtrOutput) ToManagedClusterIdentityPtrOutput() ManagedClusterIdentityPtrOutput { + return o +} + +func (o ManagedClusterIdentityPtrOutput) ToManagedClusterIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterIdentityPtrOutput { + return o +} + +func (o ManagedClusterIdentityPtrOutput) Elem() ManagedClusterIdentityOutput { + return o.ApplyT(func(v *ManagedClusterIdentity) ManagedClusterIdentity { + if v != nil { + return *v + } + var ret ManagedClusterIdentity + return ret + }).(ManagedClusterIdentityOutput) +} + +// The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. +func (o ManagedClusterIdentityPtrOutput) DelegatedResources() DelegatedResourceMapOutput { + return o.ApplyT(func(v *ManagedClusterIdentity) map[string]DelegatedResource { + if v == nil { + return nil + } + return v.DelegatedResources + }).(DelegatedResourceMapOutput) } -func (*managedClusterNATGatewayProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterNATGatewayProfile)(nil)).Elem() +// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). +func (o ManagedClusterIdentityPtrOutput) Type() ResourceIdentityTypePtrOutput { + return o.ApplyT(func(v *ManagedClusterIdentity) *ResourceIdentityType { + if v == nil { + return nil + } + return v.Type + }).(ResourceIdentityTypePtrOutput) } -func (i *managedClusterNATGatewayProfilePtrType) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { - return i.ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Background()) +// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. +func (o ManagedClusterIdentityPtrOutput) UserAssignedIdentities() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterIdentity) []string { + if v == nil { + return nil + } + return v.UserAssignedIdentities + }).(pulumi.StringArrayOutput) } -func (i *managedClusterNATGatewayProfilePtrType) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterNATGatewayProfilePtrOutput) +// Identity for the managed cluster. +type ManagedClusterIdentityResponse struct { + // The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. + DelegatedResources map[string]DelegatedResourceResponse `pulumi:"delegatedResources"` + // The principal id of the system assigned identity which is used by master components. + PrincipalId string `pulumi:"principalId"` + // The tenant id of the system assigned identity which is used by master components. + TenantId string `pulumi:"tenantId"` + // For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). + Type *string `pulumi:"type"` + // The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + UserAssignedIdentities map[string]ManagedClusterIdentityResponseUserAssignedIdentities `pulumi:"userAssignedIdentities"` } -// Profile of the managed cluster NAT gateway. -type ManagedClusterNATGatewayProfileOutput struct{ *pulumi.OutputState } +// Identity for the managed cluster. +type ManagedClusterIdentityResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterNATGatewayProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterNATGatewayProfile)(nil)).Elem() +func (ManagedClusterIdentityResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIdentityResponse)(nil)).Elem() } -func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfileOutput() ManagedClusterNATGatewayProfileOutput { +func (o ManagedClusterIdentityResponseOutput) ToManagedClusterIdentityResponseOutput() ManagedClusterIdentityResponseOutput { return o } -func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfileOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileOutput { +func (o ManagedClusterIdentityResponseOutput) ToManagedClusterIdentityResponseOutputWithContext(ctx context.Context) ManagedClusterIdentityResponseOutput { return o } -func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { - return o.ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Background()) +// The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. +func (o ManagedClusterIdentityResponseOutput) DelegatedResources() DelegatedResourceResponseMapOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponse) map[string]DelegatedResourceResponse { + return v.DelegatedResources + }).(DelegatedResourceResponseMapOutput) } -func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterNATGatewayProfile) *ManagedClusterNATGatewayProfile { - return &v - }).(ManagedClusterNATGatewayProfilePtrOutput) +// The principal id of the system assigned identity which is used by master components. +func (o ManagedClusterIdentityResponseOutput) PrincipalId() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponse) string { return v.PrincipalId }).(pulumi.StringOutput) } -// The effective outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfileOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { - return o.ApplyT(func(v ManagedClusterNATGatewayProfile) []ResourceReference { return v.EffectiveOutboundIPs }).(ResourceReferenceArrayOutput) +// The tenant id of the system assigned identity which is used by master components. +func (o ManagedClusterIdentityResponseOutput) TenantId() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponse) string { return v.TenantId }).(pulumi.StringOutput) } -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. -func (o ManagedClusterNATGatewayProfileOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterNATGatewayProfile) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) +// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). +func (o ManagedClusterIdentityResponseOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponse) *string { return v.Type }).(pulumi.StringPtrOutput) } -// Profile of the managed outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfileOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfilePtrOutput { - return o.ApplyT(func(v ManagedClusterNATGatewayProfile) *ManagedClusterManagedOutboundIPProfile { - return v.ManagedOutboundIPProfile - }).(ManagedClusterManagedOutboundIPProfilePtrOutput) +// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. +func (o ManagedClusterIdentityResponseOutput) UserAssignedIdentities() ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponse) map[string]ManagedClusterIdentityResponseUserAssignedIdentities { + return v.UserAssignedIdentities + }).(ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) } -type ManagedClusterNATGatewayProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterIdentityResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterNATGatewayProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterNATGatewayProfile)(nil)).Elem() +func (ManagedClusterIdentityResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIdentityResponse)(nil)).Elem() } -func (o ManagedClusterNATGatewayProfilePtrOutput) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { +func (o ManagedClusterIdentityResponsePtrOutput) ToManagedClusterIdentityResponsePtrOutput() ManagedClusterIdentityResponsePtrOutput { return o } -func (o ManagedClusterNATGatewayProfilePtrOutput) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { +func (o ManagedClusterIdentityResponsePtrOutput) ToManagedClusterIdentityResponsePtrOutputWithContext(ctx context.Context) ManagedClusterIdentityResponsePtrOutput { return o } -func (o ManagedClusterNATGatewayProfilePtrOutput) Elem() ManagedClusterNATGatewayProfileOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) ManagedClusterNATGatewayProfile { +func (o ManagedClusterIdentityResponsePtrOutput) Elem() ManagedClusterIdentityResponseOutput { + return o.ApplyT(func(v *ManagedClusterIdentityResponse) ManagedClusterIdentityResponse { if v != nil { return *v } - var ret ManagedClusterNATGatewayProfile + var ret ManagedClusterIdentityResponse return ret - }).(ManagedClusterNATGatewayProfileOutput) + }).(ManagedClusterIdentityResponseOutput) } -// The effective outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfilePtrOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) []ResourceReference { +// The delegated identity resources assigned to this managed cluster. This can only be set by another Azure Resource Provider, and managed cluster only accept one delegated identity resource. Internal use only. +func (o ManagedClusterIdentityResponsePtrOutput) DelegatedResources() DelegatedResourceResponseMapOutput { + return o.ApplyT(func(v *ManagedClusterIdentityResponse) map[string]DelegatedResourceResponse { if v == nil { return nil } - return v.EffectiveOutboundIPs - }).(ResourceReferenceArrayOutput) + return v.DelegatedResources + }).(DelegatedResourceResponseMapOutput) } -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. -func (o ManagedClusterNATGatewayProfilePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) *int { +// The principal id of the system assigned identity which is used by master components. +func (o ManagedClusterIdentityResponsePtrOutput) PrincipalId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterIdentityResponse) *string { if v == nil { return nil } - return v.IdleTimeoutInMinutes - }).(pulumi.IntPtrOutput) + return &v.PrincipalId + }).(pulumi.StringPtrOutput) } -// Profile of the managed outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfilePtrOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfilePtrOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) *ManagedClusterManagedOutboundIPProfile { +// The tenant id of the system assigned identity which is used by master components. +func (o ManagedClusterIdentityResponsePtrOutput) TenantId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterIdentityResponse) *string { if v == nil { return nil } - return v.ManagedOutboundIPProfile - }).(ManagedClusterManagedOutboundIPProfilePtrOutput) + return &v.TenantId + }).(pulumi.StringPtrOutput) } -// Profile of the managed cluster NAT gateway. -type ManagedClusterNATGatewayProfileResponse struct { - // The effective outbound IP resources of the cluster NAT gateway. - EffectiveOutboundIPs []ResourceReferenceResponse `pulumi:"effectiveOutboundIPs"` - // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. - IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` - // Profile of the managed outbound IP resources of the cluster NAT gateway. - ManagedOutboundIPProfile *ManagedClusterManagedOutboundIPProfileResponse `pulumi:"managedOutboundIPProfile"` +// For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity). +func (o ManagedClusterIdentityResponsePtrOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterIdentityResponse) *string { + if v == nil { + return nil + } + return v.Type + }).(pulumi.StringPtrOutput) } -// Defaults sets the appropriate defaults for ManagedClusterNATGatewayProfileResponse -func (val *ManagedClusterNATGatewayProfileResponse) Defaults() *ManagedClusterNATGatewayProfileResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.IdleTimeoutInMinutes == nil { - idleTimeoutInMinutes_ := 4 - tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ - } - tmp.ManagedOutboundIPProfile = tmp.ManagedOutboundIPProfile.Defaults() +// The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. +func (o ManagedClusterIdentityResponsePtrOutput) UserAssignedIdentities() ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { + return o.ApplyT(func(v *ManagedClusterIdentityResponse) map[string]ManagedClusterIdentityResponseUserAssignedIdentities { + if v == nil { + return nil + } + return v.UserAssignedIdentities + }).(ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) +} - return &tmp +type ManagedClusterIdentityResponseUserAssignedIdentities struct { + // The client id of user assigned identity. + ClientId string `pulumi:"clientId"` + // The principal id of user assigned identity. + PrincipalId string `pulumi:"principalId"` } -// Profile of the managed cluster NAT gateway. -type ManagedClusterNATGatewayProfileResponseOutput struct{ *pulumi.OutputState } +type ManagedClusterIdentityResponseUserAssignedIdentitiesOutput struct{ *pulumi.OutputState } -func (ManagedClusterNATGatewayProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterNATGatewayProfileResponse)(nil)).Elem() +func (ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIdentityResponseUserAssignedIdentities)(nil)).Elem() } -func (o ManagedClusterNATGatewayProfileResponseOutput) ToManagedClusterNATGatewayProfileResponseOutput() ManagedClusterNATGatewayProfileResponseOutput { +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesOutput() ManagedClusterIdentityResponseUserAssignedIdentitiesOutput { return o } -func (o ManagedClusterNATGatewayProfileResponseOutput) ToManagedClusterNATGatewayProfileResponseOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileResponseOutput { +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesOutputWithContext(ctx context.Context) ManagedClusterIdentityResponseUserAssignedIdentitiesOutput { return o } -// The effective outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfileResponseOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterNATGatewayProfileResponse) []ResourceReferenceResponse { - return v.EffectiveOutboundIPs - }).(ResourceReferenceResponseArrayOutput) -} - -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. -func (o ManagedClusterNATGatewayProfileResponseOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterNATGatewayProfileResponse) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) +// The client id of user assigned identity. +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) ClientId() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponseUserAssignedIdentities) string { return v.ClientId }).(pulumi.StringOutput) } -// Profile of the managed outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfileResponseOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfileResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterNATGatewayProfileResponse) *ManagedClusterManagedOutboundIPProfileResponse { - return v.ManagedOutboundIPProfile - }).(ManagedClusterManagedOutboundIPProfileResponsePtrOutput) +// The principal id of user assigned identity. +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) PrincipalId() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterIdentityResponseUserAssignedIdentities) string { return v.PrincipalId }).(pulumi.StringOutput) } -type ManagedClusterNATGatewayProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput struct{ *pulumi.OutputState } -func (ManagedClusterNATGatewayProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterNATGatewayProfileResponse)(nil)).Elem() +func (ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]ManagedClusterIdentityResponseUserAssignedIdentities)(nil)).Elem() } -func (o ManagedClusterNATGatewayProfileResponsePtrOutput) ToManagedClusterNATGatewayProfileResponsePtrOutput() ManagedClusterNATGatewayProfileResponsePtrOutput { +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput() ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { return o } -func (o ManagedClusterNATGatewayProfileResponsePtrOutput) ToManagedClusterNATGatewayProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileResponsePtrOutput { +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) ToManagedClusterIdentityResponseUserAssignedIdentitiesMapOutputWithContext(ctx context.Context) ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput { return o } -func (o ManagedClusterNATGatewayProfileResponsePtrOutput) Elem() ManagedClusterNATGatewayProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) ManagedClusterNATGatewayProfileResponse { - if v != nil { - return *v - } - var ret ManagedClusterNATGatewayProfileResponse - return ret - }).(ManagedClusterNATGatewayProfileResponseOutput) -} - -// The effective outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfileResponsePtrOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) []ResourceReferenceResponse { - if v == nil { - return nil - } - return v.EffectiveOutboundIPs - }).(ResourceReferenceResponseArrayOutput) -} - -// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. -func (o ManagedClusterNATGatewayProfileResponsePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) *int { - if v == nil { - return nil - } - return v.IdleTimeoutInMinutes - }).(pulumi.IntPtrOutput) -} - -// Profile of the managed outbound IP resources of the cluster NAT gateway. -func (o ManagedClusterNATGatewayProfileResponsePtrOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfileResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) *ManagedClusterManagedOutboundIPProfileResponse { - if v == nil { - return nil - } - return v.ManagedOutboundIPProfile - }).(ManagedClusterManagedOutboundIPProfileResponsePtrOutput) +func (o ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput) MapIndex(k pulumi.StringInput) ManagedClusterIdentityResponseUserAssignedIdentitiesOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) ManagedClusterIdentityResponseUserAssignedIdentities { + return vs[0].(map[string]ManagedClusterIdentityResponseUserAssignedIdentities)[vs[1].(string)] + }).(ManagedClusterIdentityResponseUserAssignedIdentitiesOutput) } -// The OIDC issuer profile of the Managed Cluster. -type ManagedClusterOIDCIssuerProfile struct { - // Whether the OIDC issuer is enabled. - Enabled *bool `pulumi:"enabled"` +// Ingress profile for the container service cluster. +type ManagedClusterIngressProfile struct { + // App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. + WebAppRouting *ManagedClusterIngressProfileWebAppRouting `pulumi:"webAppRouting"` } -// ManagedClusterOIDCIssuerProfileInput is an input type that accepts ManagedClusterOIDCIssuerProfileArgs and ManagedClusterOIDCIssuerProfileOutput values. -// You can construct a concrete instance of `ManagedClusterOIDCIssuerProfileInput` via: +// ManagedClusterIngressProfileInput is an input type that accepts ManagedClusterIngressProfileArgs and ManagedClusterIngressProfileOutput values. +// You can construct a concrete instance of `ManagedClusterIngressProfileInput` via: // -// ManagedClusterOIDCIssuerProfileArgs{...} -type ManagedClusterOIDCIssuerProfileInput interface { +// ManagedClusterIngressProfileArgs{...} +type ManagedClusterIngressProfileInput interface { pulumi.Input - - ToManagedClusterOIDCIssuerProfileOutput() ManagedClusterOIDCIssuerProfileOutput - ToManagedClusterOIDCIssuerProfileOutputWithContext(context.Context) ManagedClusterOIDCIssuerProfileOutput + + ToManagedClusterIngressProfileOutput() ManagedClusterIngressProfileOutput + ToManagedClusterIngressProfileOutputWithContext(context.Context) ManagedClusterIngressProfileOutput } -// The OIDC issuer profile of the Managed Cluster. -type ManagedClusterOIDCIssuerProfileArgs struct { - // Whether the OIDC issuer is enabled. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +// Ingress profile for the container service cluster. +type ManagedClusterIngressProfileArgs struct { + // App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. + WebAppRouting ManagedClusterIngressProfileWebAppRoutingPtrInput `pulumi:"webAppRouting"` } -func (ManagedClusterOIDCIssuerProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterOIDCIssuerProfile)(nil)).Elem() +func (ManagedClusterIngressProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIngressProfile)(nil)).Elem() } -func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfileOutput() ManagedClusterOIDCIssuerProfileOutput { - return i.ToManagedClusterOIDCIssuerProfileOutputWithContext(context.Background()) +func (i ManagedClusterIngressProfileArgs) ToManagedClusterIngressProfileOutput() ManagedClusterIngressProfileOutput { + return i.ToManagedClusterIngressProfileOutputWithContext(context.Background()) } -func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfileOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterOIDCIssuerProfileOutput) +func (i ManagedClusterIngressProfileArgs) ToManagedClusterIngressProfileOutputWithContext(ctx context.Context) ManagedClusterIngressProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIngressProfileOutput) } -func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { - return i.ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterIngressProfileArgs) ToManagedClusterIngressProfilePtrOutput() ManagedClusterIngressProfilePtrOutput { + return i.ToManagedClusterIngressProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterOIDCIssuerProfileOutput).ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx) +func (i ManagedClusterIngressProfileArgs) ToManagedClusterIngressProfilePtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIngressProfileOutput).ToManagedClusterIngressProfilePtrOutputWithContext(ctx) } -// ManagedClusterOIDCIssuerProfilePtrInput is an input type that accepts ManagedClusterOIDCIssuerProfileArgs, ManagedClusterOIDCIssuerProfilePtr and ManagedClusterOIDCIssuerProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterOIDCIssuerProfilePtrInput` via: +// ManagedClusterIngressProfilePtrInput is an input type that accepts ManagedClusterIngressProfileArgs, ManagedClusterIngressProfilePtr and ManagedClusterIngressProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterIngressProfilePtrInput` via: // -// ManagedClusterOIDCIssuerProfileArgs{...} +// ManagedClusterIngressProfileArgs{...} // // or: // // nil -type ManagedClusterOIDCIssuerProfilePtrInput interface { +type ManagedClusterIngressProfilePtrInput interface { pulumi.Input - ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput - ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Context) ManagedClusterOIDCIssuerProfilePtrOutput + ToManagedClusterIngressProfilePtrOutput() ManagedClusterIngressProfilePtrOutput + ToManagedClusterIngressProfilePtrOutputWithContext(context.Context) ManagedClusterIngressProfilePtrOutput } -type managedClusterOIDCIssuerProfilePtrType ManagedClusterOIDCIssuerProfileArgs +type managedClusterIngressProfilePtrType ManagedClusterIngressProfileArgs -func ManagedClusterOIDCIssuerProfilePtr(v *ManagedClusterOIDCIssuerProfileArgs) ManagedClusterOIDCIssuerProfilePtrInput { - return (*managedClusterOIDCIssuerProfilePtrType)(v) +func ManagedClusterIngressProfilePtr(v *ManagedClusterIngressProfileArgs) ManagedClusterIngressProfilePtrInput { + return (*managedClusterIngressProfilePtrType)(v) } -func (*managedClusterOIDCIssuerProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterOIDCIssuerProfile)(nil)).Elem() +func (*managedClusterIngressProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIngressProfile)(nil)).Elem() } -func (i *managedClusterOIDCIssuerProfilePtrType) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { - return i.ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterIngressProfilePtrType) ToManagedClusterIngressProfilePtrOutput() ManagedClusterIngressProfilePtrOutput { + return i.ToManagedClusterIngressProfilePtrOutputWithContext(context.Background()) } -func (i *managedClusterOIDCIssuerProfilePtrType) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterOIDCIssuerProfilePtrOutput) +func (i *managedClusterIngressProfilePtrType) ToManagedClusterIngressProfilePtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIngressProfilePtrOutput) } -// The OIDC issuer profile of the Managed Cluster. -type ManagedClusterOIDCIssuerProfileOutput struct{ *pulumi.OutputState } +// Ingress profile for the container service cluster. +type ManagedClusterIngressProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterOIDCIssuerProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterOIDCIssuerProfile)(nil)).Elem() +func (ManagedClusterIngressProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIngressProfile)(nil)).Elem() } -func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfileOutput() ManagedClusterOIDCIssuerProfileOutput { +func (o ManagedClusterIngressProfileOutput) ToManagedClusterIngressProfileOutput() ManagedClusterIngressProfileOutput { return o } -func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfileOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileOutput { +func (o ManagedClusterIngressProfileOutput) ToManagedClusterIngressProfileOutputWithContext(ctx context.Context) ManagedClusterIngressProfileOutput { return o } -func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { - return o.ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterIngressProfileOutput) ToManagedClusterIngressProfilePtrOutput() ManagedClusterIngressProfilePtrOutput { + return o.ToManagedClusterIngressProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterOIDCIssuerProfile) *ManagedClusterOIDCIssuerProfile { +func (o ManagedClusterIngressProfileOutput) ToManagedClusterIngressProfilePtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterIngressProfile) *ManagedClusterIngressProfile { return &v - }).(ManagedClusterOIDCIssuerProfilePtrOutput) + }).(ManagedClusterIngressProfilePtrOutput) } -// Whether the OIDC issuer is enabled. -func (o ManagedClusterOIDCIssuerProfileOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterOIDCIssuerProfile) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. +func (o ManagedClusterIngressProfileOutput) WebAppRouting() ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return o.ApplyT(func(v ManagedClusterIngressProfile) *ManagedClusterIngressProfileWebAppRouting { + return v.WebAppRouting + }).(ManagedClusterIngressProfileWebAppRoutingPtrOutput) } -type ManagedClusterOIDCIssuerProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterIngressProfilePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterOIDCIssuerProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterOIDCIssuerProfile)(nil)).Elem() +func (ManagedClusterIngressProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIngressProfile)(nil)).Elem() } -func (o ManagedClusterOIDCIssuerProfilePtrOutput) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { +func (o ManagedClusterIngressProfilePtrOutput) ToManagedClusterIngressProfilePtrOutput() ManagedClusterIngressProfilePtrOutput { return o } -func (o ManagedClusterOIDCIssuerProfilePtrOutput) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { +func (o ManagedClusterIngressProfilePtrOutput) ToManagedClusterIngressProfilePtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfilePtrOutput { return o } -func (o ManagedClusterOIDCIssuerProfilePtrOutput) Elem() ManagedClusterOIDCIssuerProfileOutput { - return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfile) ManagedClusterOIDCIssuerProfile { +func (o ManagedClusterIngressProfilePtrOutput) Elem() ManagedClusterIngressProfileOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfile) ManagedClusterIngressProfile { if v != nil { return *v } - var ret ManagedClusterOIDCIssuerProfile + var ret ManagedClusterIngressProfile return ret - }).(ManagedClusterOIDCIssuerProfileOutput) + }).(ManagedClusterIngressProfileOutput) } -// Whether the OIDC issuer is enabled. -func (o ManagedClusterOIDCIssuerProfilePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfile) *bool { +// App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. +func (o ManagedClusterIngressProfilePtrOutput) WebAppRouting() ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfile) *ManagedClusterIngressProfileWebAppRouting { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.WebAppRouting + }).(ManagedClusterIngressProfileWebAppRoutingPtrOutput) } -// The OIDC issuer profile of the Managed Cluster. -type ManagedClusterOIDCIssuerProfileResponse struct { - // Whether the OIDC issuer is enabled. - Enabled *bool `pulumi:"enabled"` - // The OIDC issuer url of the Managed Cluster. - IssuerURL string `pulumi:"issuerURL"` +// Ingress profile for the container service cluster. +type ManagedClusterIngressProfileResponse struct { + // App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. + WebAppRouting *ManagedClusterIngressProfileWebAppRoutingResponse `pulumi:"webAppRouting"` } -// The OIDC issuer profile of the Managed Cluster. -type ManagedClusterOIDCIssuerProfileResponseOutput struct{ *pulumi.OutputState } +// Ingress profile for the container service cluster. +type ManagedClusterIngressProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterOIDCIssuerProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterOIDCIssuerProfileResponse)(nil)).Elem() +func (ManagedClusterIngressProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIngressProfileResponse)(nil)).Elem() } -func (o ManagedClusterOIDCIssuerProfileResponseOutput) ToManagedClusterOIDCIssuerProfileResponseOutput() ManagedClusterOIDCIssuerProfileResponseOutput { +func (o ManagedClusterIngressProfileResponseOutput) ToManagedClusterIngressProfileResponseOutput() ManagedClusterIngressProfileResponseOutput { return o } -func (o ManagedClusterOIDCIssuerProfileResponseOutput) ToManagedClusterOIDCIssuerProfileResponseOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileResponseOutput { +func (o ManagedClusterIngressProfileResponseOutput) ToManagedClusterIngressProfileResponseOutputWithContext(ctx context.Context) ManagedClusterIngressProfileResponseOutput { return o } -// Whether the OIDC issuer is enabled. -func (o ManagedClusterOIDCIssuerProfileResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterOIDCIssuerProfileResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -// The OIDC issuer url of the Managed Cluster. -func (o ManagedClusterOIDCIssuerProfileResponseOutput) IssuerURL() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterOIDCIssuerProfileResponse) string { return v.IssuerURL }).(pulumi.StringOutput) +// App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. +func (o ManagedClusterIngressProfileResponseOutput) WebAppRouting() ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterIngressProfileResponse) *ManagedClusterIngressProfileWebAppRoutingResponse { + return v.WebAppRouting + }).(ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) } -type ManagedClusterOIDCIssuerProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterIngressProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterOIDCIssuerProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterOIDCIssuerProfileResponse)(nil)).Elem() +func (ManagedClusterIngressProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIngressProfileResponse)(nil)).Elem() } -func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) ToManagedClusterOIDCIssuerProfileResponsePtrOutput() ManagedClusterOIDCIssuerProfileResponsePtrOutput { +func (o ManagedClusterIngressProfileResponsePtrOutput) ToManagedClusterIngressProfileResponsePtrOutput() ManagedClusterIngressProfileResponsePtrOutput { return o } -func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) ToManagedClusterOIDCIssuerProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileResponsePtrOutput { +func (o ManagedClusterIngressProfileResponsePtrOutput) ToManagedClusterIngressProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfileResponsePtrOutput { return o } -func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) Elem() ManagedClusterOIDCIssuerProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfileResponse) ManagedClusterOIDCIssuerProfileResponse { +func (o ManagedClusterIngressProfileResponsePtrOutput) Elem() ManagedClusterIngressProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileResponse) ManagedClusterIngressProfileResponse { if v != nil { return *v } - var ret ManagedClusterOIDCIssuerProfileResponse + var ret ManagedClusterIngressProfileResponse return ret - }).(ManagedClusterOIDCIssuerProfileResponseOutput) -} - -// Whether the OIDC issuer is enabled. -func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfileResponse) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) + }).(ManagedClusterIngressProfileResponseOutput) } -// The OIDC issuer url of the Managed Cluster. -func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) IssuerURL() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfileResponse) *string { +// App Routing settings for the ingress profile. You can find an overview and onboarding guide for this feature at https://learn.microsoft.com/en-us/azure/aks/app-routing?tabs=default%2Cdeploy-app-default. +func (o ManagedClusterIngressProfileResponsePtrOutput) WebAppRouting() ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileResponse) *ManagedClusterIngressProfileWebAppRoutingResponse { if v == nil { return nil } - return &v.IssuerURL - }).(pulumi.StringPtrOutput) -} - -// Details about the pod identity assigned to the Managed Cluster. -type ManagedClusterPodIdentity struct { - // The binding selector to use for the AzureIdentityBinding resource. - BindingSelector *string `pulumi:"bindingSelector"` - // The user assigned identity details. - Identity UserAssignedIdentity `pulumi:"identity"` - // The name of the pod identity. - Name string `pulumi:"name"` - // The namespace of the pod identity. - Namespace string `pulumi:"namespace"` -} - -// ManagedClusterPodIdentityInput is an input type that accepts ManagedClusterPodIdentityArgs and ManagedClusterPodIdentityOutput values. -// You can construct a concrete instance of `ManagedClusterPodIdentityInput` via: -// -// ManagedClusterPodIdentityArgs{...} -type ManagedClusterPodIdentityInput interface { - pulumi.Input - - ToManagedClusterPodIdentityOutput() ManagedClusterPodIdentityOutput - ToManagedClusterPodIdentityOutputWithContext(context.Context) ManagedClusterPodIdentityOutput -} - -// Details about the pod identity assigned to the Managed Cluster. -type ManagedClusterPodIdentityArgs struct { - // The binding selector to use for the AzureIdentityBinding resource. - BindingSelector pulumi.StringPtrInput `pulumi:"bindingSelector"` - // The user assigned identity details. - Identity UserAssignedIdentityInput `pulumi:"identity"` - // The name of the pod identity. - Name pulumi.StringInput `pulumi:"name"` - // The namespace of the pod identity. - Namespace pulumi.StringInput `pulumi:"namespace"` -} - -func (ManagedClusterPodIdentityArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentity)(nil)).Elem() -} - -func (i ManagedClusterPodIdentityArgs) ToManagedClusterPodIdentityOutput() ManagedClusterPodIdentityOutput { - return i.ToManagedClusterPodIdentityOutputWithContext(context.Background()) + return v.WebAppRouting + }).(ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) } -func (i ManagedClusterPodIdentityArgs) ToManagedClusterPodIdentityOutputWithContext(ctx context.Context) ManagedClusterPodIdentityOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityOutput) +// Application Routing add-on settings for the ingress profile. +type ManagedClusterIngressProfileWebAppRouting struct { + // Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. + DnsZoneResourceIds []string `pulumi:"dnsZoneResourceIds"` + // Whether to enable the Application Routing add-on. + Enabled *bool `pulumi:"enabled"` } -// ManagedClusterPodIdentityArrayInput is an input type that accepts ManagedClusterPodIdentityArray and ManagedClusterPodIdentityArrayOutput values. -// You can construct a concrete instance of `ManagedClusterPodIdentityArrayInput` via: +// ManagedClusterIngressProfileWebAppRoutingInput is an input type that accepts ManagedClusterIngressProfileWebAppRoutingArgs and ManagedClusterIngressProfileWebAppRoutingOutput values. +// You can construct a concrete instance of `ManagedClusterIngressProfileWebAppRoutingInput` via: // -// ManagedClusterPodIdentityArray{ ManagedClusterPodIdentityArgs{...} } -type ManagedClusterPodIdentityArrayInput interface { +// ManagedClusterIngressProfileWebAppRoutingArgs{...} +type ManagedClusterIngressProfileWebAppRoutingInput interface { pulumi.Input - ToManagedClusterPodIdentityArrayOutput() ManagedClusterPodIdentityArrayOutput - ToManagedClusterPodIdentityArrayOutputWithContext(context.Context) ManagedClusterPodIdentityArrayOutput -} - -type ManagedClusterPodIdentityArray []ManagedClusterPodIdentityInput - -func (ManagedClusterPodIdentityArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentity)(nil)).Elem() -} - -func (i ManagedClusterPodIdentityArray) ToManagedClusterPodIdentityArrayOutput() ManagedClusterPodIdentityArrayOutput { - return i.ToManagedClusterPodIdentityArrayOutputWithContext(context.Background()) -} - -func (i ManagedClusterPodIdentityArray) ToManagedClusterPodIdentityArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityArrayOutput) -} - -// Details about the pod identity assigned to the Managed Cluster. -type ManagedClusterPodIdentityOutput struct{ *pulumi.OutputState } - -func (ManagedClusterPodIdentityOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentity)(nil)).Elem() -} - -func (o ManagedClusterPodIdentityOutput) ToManagedClusterPodIdentityOutput() ManagedClusterPodIdentityOutput { - return o -} - -func (o ManagedClusterPodIdentityOutput) ToManagedClusterPodIdentityOutputWithContext(ctx context.Context) ManagedClusterPodIdentityOutput { - return o -} - -// The binding selector to use for the AzureIdentityBinding resource. -func (o ManagedClusterPodIdentityOutput) BindingSelector() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentity) *string { return v.BindingSelector }).(pulumi.StringPtrOutput) -} - -// The user assigned identity details. -func (o ManagedClusterPodIdentityOutput) Identity() UserAssignedIdentityOutput { - return o.ApplyT(func(v ManagedClusterPodIdentity) UserAssignedIdentity { return v.Identity }).(UserAssignedIdentityOutput) -} - -// The name of the pod identity. -func (o ManagedClusterPodIdentityOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentity) string { return v.Name }).(pulumi.StringOutput) + ToManagedClusterIngressProfileWebAppRoutingOutput() ManagedClusterIngressProfileWebAppRoutingOutput + ToManagedClusterIngressProfileWebAppRoutingOutputWithContext(context.Context) ManagedClusterIngressProfileWebAppRoutingOutput } -// The namespace of the pod identity. -func (o ManagedClusterPodIdentityOutput) Namespace() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentity) string { return v.Namespace }).(pulumi.StringOutput) +// Application Routing add-on settings for the ingress profile. +type ManagedClusterIngressProfileWebAppRoutingArgs struct { + // Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. + DnsZoneResourceIds pulumi.StringArrayInput `pulumi:"dnsZoneResourceIds"` + // Whether to enable the Application Routing add-on. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -type ManagedClusterPodIdentityArrayOutput struct{ *pulumi.OutputState } - -func (ManagedClusterPodIdentityArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentity)(nil)).Elem() +func (ManagedClusterIngressProfileWebAppRoutingArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIngressProfileWebAppRouting)(nil)).Elem() } -func (o ManagedClusterPodIdentityArrayOutput) ToManagedClusterPodIdentityArrayOutput() ManagedClusterPodIdentityArrayOutput { - return o +func (i ManagedClusterIngressProfileWebAppRoutingArgs) ToManagedClusterIngressProfileWebAppRoutingOutput() ManagedClusterIngressProfileWebAppRoutingOutput { + return i.ToManagedClusterIngressProfileWebAppRoutingOutputWithContext(context.Background()) } -func (o ManagedClusterPodIdentityArrayOutput) ToManagedClusterPodIdentityArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityArrayOutput { - return o +func (i ManagedClusterIngressProfileWebAppRoutingArgs) ToManagedClusterIngressProfileWebAppRoutingOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIngressProfileWebAppRoutingOutput) } -func (o ManagedClusterPodIdentityArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentity { - return vs[0].([]ManagedClusterPodIdentity)[vs[1].(int)] - }).(ManagedClusterPodIdentityOutput) +func (i ManagedClusterIngressProfileWebAppRoutingArgs) ToManagedClusterIngressProfileWebAppRoutingPtrOutput() ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return i.ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(context.Background()) } -// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. -type ManagedClusterPodIdentityException struct { - // The name of the pod identity exception. - Name string `pulumi:"name"` - // The namespace of the pod identity exception. - Namespace string `pulumi:"namespace"` - // The pod labels to match. - PodLabels map[string]string `pulumi:"podLabels"` +func (i ManagedClusterIngressProfileWebAppRoutingArgs) ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIngressProfileWebAppRoutingOutput).ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(ctx) } -// ManagedClusterPodIdentityExceptionInput is an input type that accepts ManagedClusterPodIdentityExceptionArgs and ManagedClusterPodIdentityExceptionOutput values. -// You can construct a concrete instance of `ManagedClusterPodIdentityExceptionInput` via: +// ManagedClusterIngressProfileWebAppRoutingPtrInput is an input type that accepts ManagedClusterIngressProfileWebAppRoutingArgs, ManagedClusterIngressProfileWebAppRoutingPtr and ManagedClusterIngressProfileWebAppRoutingPtrOutput values. +// You can construct a concrete instance of `ManagedClusterIngressProfileWebAppRoutingPtrInput` via: // -// ManagedClusterPodIdentityExceptionArgs{...} -type ManagedClusterPodIdentityExceptionInput interface { - pulumi.Input - - ToManagedClusterPodIdentityExceptionOutput() ManagedClusterPodIdentityExceptionOutput - ToManagedClusterPodIdentityExceptionOutputWithContext(context.Context) ManagedClusterPodIdentityExceptionOutput -} - -// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. -type ManagedClusterPodIdentityExceptionArgs struct { - // The name of the pod identity exception. - Name pulumi.StringInput `pulumi:"name"` - // The namespace of the pod identity exception. - Namespace pulumi.StringInput `pulumi:"namespace"` - // The pod labels to match. - PodLabels pulumi.StringMapInput `pulumi:"podLabels"` -} - -func (ManagedClusterPodIdentityExceptionArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityException)(nil)).Elem() -} - -func (i ManagedClusterPodIdentityExceptionArgs) ToManagedClusterPodIdentityExceptionOutput() ManagedClusterPodIdentityExceptionOutput { - return i.ToManagedClusterPodIdentityExceptionOutputWithContext(context.Background()) -} - -func (i ManagedClusterPodIdentityExceptionArgs) ToManagedClusterPodIdentityExceptionOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityExceptionOutput) -} - -// ManagedClusterPodIdentityExceptionArrayInput is an input type that accepts ManagedClusterPodIdentityExceptionArray and ManagedClusterPodIdentityExceptionArrayOutput values. -// You can construct a concrete instance of `ManagedClusterPodIdentityExceptionArrayInput` via: +// ManagedClusterIngressProfileWebAppRoutingArgs{...} // -// ManagedClusterPodIdentityExceptionArray{ ManagedClusterPodIdentityExceptionArgs{...} } -type ManagedClusterPodIdentityExceptionArrayInput interface { +// or: +// +// nil +type ManagedClusterIngressProfileWebAppRoutingPtrInput interface { pulumi.Input - ToManagedClusterPodIdentityExceptionArrayOutput() ManagedClusterPodIdentityExceptionArrayOutput - ToManagedClusterPodIdentityExceptionArrayOutputWithContext(context.Context) ManagedClusterPodIdentityExceptionArrayOutput + ToManagedClusterIngressProfileWebAppRoutingPtrOutput() ManagedClusterIngressProfileWebAppRoutingPtrOutput + ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(context.Context) ManagedClusterIngressProfileWebAppRoutingPtrOutput } -type ManagedClusterPodIdentityExceptionArray []ManagedClusterPodIdentityExceptionInput +type managedClusterIngressProfileWebAppRoutingPtrType ManagedClusterIngressProfileWebAppRoutingArgs -func (ManagedClusterPodIdentityExceptionArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentityException)(nil)).Elem() +func ManagedClusterIngressProfileWebAppRoutingPtr(v *ManagedClusterIngressProfileWebAppRoutingArgs) ManagedClusterIngressProfileWebAppRoutingPtrInput { + return (*managedClusterIngressProfileWebAppRoutingPtrType)(v) } -func (i ManagedClusterPodIdentityExceptionArray) ToManagedClusterPodIdentityExceptionArrayOutput() ManagedClusterPodIdentityExceptionArrayOutput { - return i.ToManagedClusterPodIdentityExceptionArrayOutputWithContext(context.Background()) +func (*managedClusterIngressProfileWebAppRoutingPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIngressProfileWebAppRouting)(nil)).Elem() } -func (i ManagedClusterPodIdentityExceptionArray) ToManagedClusterPodIdentityExceptionArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityExceptionArrayOutput) +func (i *managedClusterIngressProfileWebAppRoutingPtrType) ToManagedClusterIngressProfileWebAppRoutingPtrOutput() ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return i.ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(context.Background()) } -// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. -type ManagedClusterPodIdentityExceptionOutput struct{ *pulumi.OutputState } +func (i *managedClusterIngressProfileWebAppRoutingPtrType) ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterIngressProfileWebAppRoutingPtrOutput) +} -func (ManagedClusterPodIdentityExceptionOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityException)(nil)).Elem() +// Application Routing add-on settings for the ingress profile. +type ManagedClusterIngressProfileWebAppRoutingOutput struct{ *pulumi.OutputState } + +func (ManagedClusterIngressProfileWebAppRoutingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIngressProfileWebAppRouting)(nil)).Elem() } -func (o ManagedClusterPodIdentityExceptionOutput) ToManagedClusterPodIdentityExceptionOutput() ManagedClusterPodIdentityExceptionOutput { +func (o ManagedClusterIngressProfileWebAppRoutingOutput) ToManagedClusterIngressProfileWebAppRoutingOutput() ManagedClusterIngressProfileWebAppRoutingOutput { return o } -func (o ManagedClusterPodIdentityExceptionOutput) ToManagedClusterPodIdentityExceptionOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionOutput { +func (o ManagedClusterIngressProfileWebAppRoutingOutput) ToManagedClusterIngressProfileWebAppRoutingOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingOutput { return o } -// The name of the pod identity exception. -func (o ManagedClusterPodIdentityExceptionOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityException) string { return v.Name }).(pulumi.StringOutput) +func (o ManagedClusterIngressProfileWebAppRoutingOutput) ToManagedClusterIngressProfileWebAppRoutingPtrOutput() ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return o.ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(context.Background()) } -// The namespace of the pod identity exception. -func (o ManagedClusterPodIdentityExceptionOutput) Namespace() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityException) string { return v.Namespace }).(pulumi.StringOutput) +func (o ManagedClusterIngressProfileWebAppRoutingOutput) ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterIngressProfileWebAppRouting) *ManagedClusterIngressProfileWebAppRouting { + return &v + }).(ManagedClusterIngressProfileWebAppRoutingPtrOutput) } -// The pod labels to match. -func (o ManagedClusterPodIdentityExceptionOutput) PodLabels() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityException) map[string]string { return v.PodLabels }).(pulumi.StringMapOutput) +// Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. +func (o ManagedClusterIngressProfileWebAppRoutingOutput) DnsZoneResourceIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterIngressProfileWebAppRouting) []string { return v.DnsZoneResourceIds }).(pulumi.StringArrayOutput) } -type ManagedClusterPodIdentityExceptionArrayOutput struct{ *pulumi.OutputState } +// Whether to enable the Application Routing add-on. +func (o ManagedClusterIngressProfileWebAppRoutingOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterIngressProfileWebAppRouting) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} -func (ManagedClusterPodIdentityExceptionArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentityException)(nil)).Elem() +type ManagedClusterIngressProfileWebAppRoutingPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterIngressProfileWebAppRoutingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIngressProfileWebAppRouting)(nil)).Elem() } -func (o ManagedClusterPodIdentityExceptionArrayOutput) ToManagedClusterPodIdentityExceptionArrayOutput() ManagedClusterPodIdentityExceptionArrayOutput { +func (o ManagedClusterIngressProfileWebAppRoutingPtrOutput) ToManagedClusterIngressProfileWebAppRoutingPtrOutput() ManagedClusterIngressProfileWebAppRoutingPtrOutput { return o } -func (o ManagedClusterPodIdentityExceptionArrayOutput) ToManagedClusterPodIdentityExceptionArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionArrayOutput { +func (o ManagedClusterIngressProfileWebAppRoutingPtrOutput) ToManagedClusterIngressProfileWebAppRoutingPtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingPtrOutput { return o } -func (o ManagedClusterPodIdentityExceptionArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityExceptionOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityException { - return vs[0].([]ManagedClusterPodIdentityException)[vs[1].(int)] - }).(ManagedClusterPodIdentityExceptionOutput) +func (o ManagedClusterIngressProfileWebAppRoutingPtrOutput) Elem() ManagedClusterIngressProfileWebAppRoutingOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRouting) ManagedClusterIngressProfileWebAppRouting { + if v != nil { + return *v + } + var ret ManagedClusterIngressProfileWebAppRouting + return ret + }).(ManagedClusterIngressProfileWebAppRoutingOutput) } -// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. -type ManagedClusterPodIdentityExceptionResponse struct { - // The name of the pod identity exception. - Name string `pulumi:"name"` - // The namespace of the pod identity exception. - Namespace string `pulumi:"namespace"` - // The pod labels to match. - PodLabels map[string]string `pulumi:"podLabels"` +// Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. +func (o ManagedClusterIngressProfileWebAppRoutingPtrOutput) DnsZoneResourceIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRouting) []string { + if v == nil { + return nil + } + return v.DnsZoneResourceIds + }).(pulumi.StringArrayOutput) } -// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. -type ManagedClusterPodIdentityExceptionResponseOutput struct{ *pulumi.OutputState } +// Whether to enable the Application Routing add-on. +func (o ManagedClusterIngressProfileWebAppRoutingPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRouting) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} -func (ManagedClusterPodIdentityExceptionResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityExceptionResponse)(nil)).Elem() +// Application Routing add-on settings for the ingress profile. +type ManagedClusterIngressProfileWebAppRoutingResponse struct { + // Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. + DnsZoneResourceIds []string `pulumi:"dnsZoneResourceIds"` + // Whether to enable the Application Routing add-on. + Enabled *bool `pulumi:"enabled"` + // Managed identity of the Application Routing add-on. This is the identity that should be granted permissions, for example, to manage the associated Azure DNS resource and get certificates from Azure Key Vault. See [this overview of the add-on](https://learn.microsoft.com/en-us/azure/aks/web-app-routing?tabs=with-osm) for more instructions. + Identity UserAssignedIdentityResponse `pulumi:"identity"` } -func (o ManagedClusterPodIdentityExceptionResponseOutput) ToManagedClusterPodIdentityExceptionResponseOutput() ManagedClusterPodIdentityExceptionResponseOutput { +// Application Routing add-on settings for the ingress profile. +type ManagedClusterIngressProfileWebAppRoutingResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterIngressProfileWebAppRoutingResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterIngressProfileWebAppRoutingResponse)(nil)).Elem() +} + +func (o ManagedClusterIngressProfileWebAppRoutingResponseOutput) ToManagedClusterIngressProfileWebAppRoutingResponseOutput() ManagedClusterIngressProfileWebAppRoutingResponseOutput { return o } -func (o ManagedClusterPodIdentityExceptionResponseOutput) ToManagedClusterPodIdentityExceptionResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionResponseOutput { +func (o ManagedClusterIngressProfileWebAppRoutingResponseOutput) ToManagedClusterIngressProfileWebAppRoutingResponseOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingResponseOutput { return o } -// The name of the pod identity exception. -func (o ManagedClusterPodIdentityExceptionResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityExceptionResponse) string { return v.Name }).(pulumi.StringOutput) +// Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. +func (o ManagedClusterIngressProfileWebAppRoutingResponseOutput) DnsZoneResourceIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v ManagedClusterIngressProfileWebAppRoutingResponse) []string { return v.DnsZoneResourceIds }).(pulumi.StringArrayOutput) } -// The namespace of the pod identity exception. -func (o ManagedClusterPodIdentityExceptionResponseOutput) Namespace() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityExceptionResponse) string { return v.Namespace }).(pulumi.StringOutput) +// Whether to enable the Application Routing add-on. +func (o ManagedClusterIngressProfileWebAppRoutingResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterIngressProfileWebAppRoutingResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// The pod labels to match. -func (o ManagedClusterPodIdentityExceptionResponseOutput) PodLabels() pulumi.StringMapOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityExceptionResponse) map[string]string { return v.PodLabels }).(pulumi.StringMapOutput) +// Managed identity of the Application Routing add-on. This is the identity that should be granted permissions, for example, to manage the associated Azure DNS resource and get certificates from Azure Key Vault. See [this overview of the add-on](https://learn.microsoft.com/en-us/azure/aks/web-app-routing?tabs=with-osm) for more instructions. +func (o ManagedClusterIngressProfileWebAppRoutingResponseOutput) Identity() UserAssignedIdentityResponseOutput { + return o.ApplyT(func(v ManagedClusterIngressProfileWebAppRoutingResponse) UserAssignedIdentityResponse { + return v.Identity + }).(UserAssignedIdentityResponseOutput) } -type ManagedClusterPodIdentityExceptionResponseArrayOutput struct{ *pulumi.OutputState } +type ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterPodIdentityExceptionResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentityExceptionResponse)(nil)).Elem() +func (ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterIngressProfileWebAppRoutingResponse)(nil)).Elem() } -func (o ManagedClusterPodIdentityExceptionResponseArrayOutput) ToManagedClusterPodIdentityExceptionResponseArrayOutput() ManagedClusterPodIdentityExceptionResponseArrayOutput { +func (o ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) ToManagedClusterIngressProfileWebAppRoutingResponsePtrOutput() ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput { return o } -func (o ManagedClusterPodIdentityExceptionResponseArrayOutput) ToManagedClusterPodIdentityExceptionResponseArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionResponseArrayOutput { +func (o ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) ToManagedClusterIngressProfileWebAppRoutingResponsePtrOutputWithContext(ctx context.Context) ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput { return o } -func (o ManagedClusterPodIdentityExceptionResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityExceptionResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityExceptionResponse { - return vs[0].([]ManagedClusterPodIdentityExceptionResponse)[vs[1].(int)] - }).(ManagedClusterPodIdentityExceptionResponseOutput) +func (o ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) Elem() ManagedClusterIngressProfileWebAppRoutingResponseOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRoutingResponse) ManagedClusterIngressProfileWebAppRoutingResponse { + if v != nil { + return *v + } + var ret ManagedClusterIngressProfileWebAppRoutingResponse + return ret + }).(ManagedClusterIngressProfileWebAppRoutingResponseOutput) } -// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. -type ManagedClusterPodIdentityProfile struct { - // Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. - AllowNetworkPluginKubenet *bool `pulumi:"allowNetworkPluginKubenet"` - // Whether the pod identity addon is enabled. - Enabled *bool `pulumi:"enabled"` - // The pod identities to use in the cluster. - UserAssignedIdentities []ManagedClusterPodIdentity `pulumi:"userAssignedIdentities"` - // The pod identity exceptions to allow. - UserAssignedIdentityExceptions []ManagedClusterPodIdentityException `pulumi:"userAssignedIdentityExceptions"` +// Resource IDs of the DNS zones to be associated with the Application Routing add-on. Used only when Application Routing add-on is enabled. Public and private DNS zones can be in different resource groups, but all public DNS zones must be in the same resource group and all private DNS zones must be in the same resource group. +func (o ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) DnsZoneResourceIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRoutingResponse) []string { + if v == nil { + return nil + } + return v.DnsZoneResourceIds + }).(pulumi.StringArrayOutput) } -// ManagedClusterPodIdentityProfileInput is an input type that accepts ManagedClusterPodIdentityProfileArgs and ManagedClusterPodIdentityProfileOutput values. -// You can construct a concrete instance of `ManagedClusterPodIdentityProfileInput` via: +// Whether to enable the Application Routing add-on. +func (o ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRoutingResponse) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} + +// Managed identity of the Application Routing add-on. This is the identity that should be granted permissions, for example, to manage the associated Azure DNS resource and get certificates from Azure Key Vault. See [this overview of the add-on](https://learn.microsoft.com/en-us/azure/aks/web-app-routing?tabs=with-osm) for more instructions. +func (o ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput) Identity() UserAssignedIdentityResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterIngressProfileWebAppRoutingResponse) *UserAssignedIdentityResponse { + if v == nil { + return nil + } + return &v.Identity + }).(UserAssignedIdentityResponsePtrOutput) +} + +// Profile of the managed cluster load balancer. +type ManagedClusterLoadBalancerProfile struct { + // The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. + AllocatedOutboundPorts *int `pulumi:"allocatedOutboundPorts"` + // The type of the managed inbound Load Balancer BackendPool. + BackendPoolType *string `pulumi:"backendPoolType"` + // The effective outbound IP resources of the cluster load balancer. + EffectiveOutboundIPs []ResourceReference `pulumi:"effectiveOutboundIPs"` + // Enable multiple standard load balancers per AKS cluster or not. + EnableMultipleStandardLoadBalancers *bool `pulumi:"enableMultipleStandardLoadBalancers"` + // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. + IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` + // Desired managed outbound IPs for the cluster load balancer. + ManagedOutboundIPs *ManagedClusterLoadBalancerProfileManagedOutboundIPs `pulumi:"managedOutboundIPs"` + // Desired outbound IP Prefix resources for the cluster load balancer. + OutboundIPPrefixes *ManagedClusterLoadBalancerProfileOutboundIPPrefixes `pulumi:"outboundIPPrefixes"` + // Desired outbound IP resources for the cluster load balancer. + OutboundIPs *ManagedClusterLoadBalancerProfileOutboundIPs `pulumi:"outboundIPs"` +} + +// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfile +func (val *ManagedClusterLoadBalancerProfile) Defaults() *ManagedClusterLoadBalancerProfile { + if val == nil { + return nil + } + tmp := *val + if tmp.AllocatedOutboundPorts == nil { + allocatedOutboundPorts_ := 0 + tmp.AllocatedOutboundPorts = &allocatedOutboundPorts_ + } + if tmp.BackendPoolType == nil { + backendPoolType_ := "NodeIPConfiguration" + tmp.BackendPoolType = &backendPoolType_ + } + if tmp.IdleTimeoutInMinutes == nil { + idleTimeoutInMinutes_ := 30 + tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ + } + tmp.ManagedOutboundIPs = tmp.ManagedOutboundIPs.Defaults() + + return &tmp +} + +// ManagedClusterLoadBalancerProfileInput is an input type that accepts ManagedClusterLoadBalancerProfileArgs and ManagedClusterLoadBalancerProfileOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileInput` via: // -// ManagedClusterPodIdentityProfileArgs{...} -type ManagedClusterPodIdentityProfileInput interface { +// ManagedClusterLoadBalancerProfileArgs{...} +type ManagedClusterLoadBalancerProfileInput interface { pulumi.Input - ToManagedClusterPodIdentityProfileOutput() ManagedClusterPodIdentityProfileOutput - ToManagedClusterPodIdentityProfileOutputWithContext(context.Context) ManagedClusterPodIdentityProfileOutput + ToManagedClusterLoadBalancerProfileOutput() ManagedClusterLoadBalancerProfileOutput + ToManagedClusterLoadBalancerProfileOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutput } -// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. -type ManagedClusterPodIdentityProfileArgs struct { - // Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. - AllowNetworkPluginKubenet pulumi.BoolPtrInput `pulumi:"allowNetworkPluginKubenet"` - // Whether the pod identity addon is enabled. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // The pod identities to use in the cluster. - UserAssignedIdentities ManagedClusterPodIdentityArrayInput `pulumi:"userAssignedIdentities"` - // The pod identity exceptions to allow. - UserAssignedIdentityExceptions ManagedClusterPodIdentityExceptionArrayInput `pulumi:"userAssignedIdentityExceptions"` +// Profile of the managed cluster load balancer. +type ManagedClusterLoadBalancerProfileArgs struct { + // The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. + AllocatedOutboundPorts pulumi.IntPtrInput `pulumi:"allocatedOutboundPorts"` + // The type of the managed inbound Load Balancer BackendPool. + BackendPoolType pulumi.StringPtrInput `pulumi:"backendPoolType"` + // The effective outbound IP resources of the cluster load balancer. + EffectiveOutboundIPs ResourceReferenceArrayInput `pulumi:"effectiveOutboundIPs"` + // Enable multiple standard load balancers per AKS cluster or not. + EnableMultipleStandardLoadBalancers pulumi.BoolPtrInput `pulumi:"enableMultipleStandardLoadBalancers"` + // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. + IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"` + // Desired managed outbound IPs for the cluster load balancer. + ManagedOutboundIPs ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput `pulumi:"managedOutboundIPs"` + // Desired outbound IP Prefix resources for the cluster load balancer. + OutboundIPPrefixes ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput `pulumi:"outboundIPPrefixes"` + // Desired outbound IP resources for the cluster load balancer. + OutboundIPs ManagedClusterLoadBalancerProfileOutboundIPsPtrInput `pulumi:"outboundIPs"` } -func (ManagedClusterPodIdentityProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityProfile)(nil)).Elem() +// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileArgs +func (val *ManagedClusterLoadBalancerProfileArgs) Defaults() *ManagedClusterLoadBalancerProfileArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.AllocatedOutboundPorts == nil { + tmp.AllocatedOutboundPorts = pulumi.IntPtr(0) + } + if tmp.BackendPoolType == nil { + tmp.BackendPoolType = pulumi.StringPtr("NodeIPConfiguration") + } + if tmp.IdleTimeoutInMinutes == nil { + tmp.IdleTimeoutInMinutes = pulumi.IntPtr(30) + } + + return &tmp +} +func (ManagedClusterLoadBalancerProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfile)(nil)).Elem() } -func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfileOutput() ManagedClusterPodIdentityProfileOutput { - return i.ToManagedClusterPodIdentityProfileOutputWithContext(context.Background()) +func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfileOutput() ManagedClusterLoadBalancerProfileOutput { + return i.ToManagedClusterLoadBalancerProfileOutputWithContext(context.Background()) } -func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfileOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityProfileOutput) +func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfileOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutput) } -func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { - return i.ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { + return i.ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityProfileOutput).ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx) +func (i ManagedClusterLoadBalancerProfileArgs) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutput).ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx) } -// ManagedClusterPodIdentityProfilePtrInput is an input type that accepts ManagedClusterPodIdentityProfileArgs, ManagedClusterPodIdentityProfilePtr and ManagedClusterPodIdentityProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterPodIdentityProfilePtrInput` via: +// ManagedClusterLoadBalancerProfilePtrInput is an input type that accepts ManagedClusterLoadBalancerProfileArgs, ManagedClusterLoadBalancerProfilePtr and ManagedClusterLoadBalancerProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfilePtrInput` via: // -// ManagedClusterPodIdentityProfileArgs{...} +// ManagedClusterLoadBalancerProfileArgs{...} // // or: // // nil -type ManagedClusterPodIdentityProfilePtrInput interface { +type ManagedClusterLoadBalancerProfilePtrInput interface { pulumi.Input - ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput - ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Context) ManagedClusterPodIdentityProfilePtrOutput + ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput + ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfilePtrOutput } -type managedClusterPodIdentityProfilePtrType ManagedClusterPodIdentityProfileArgs +type managedClusterLoadBalancerProfilePtrType ManagedClusterLoadBalancerProfileArgs -func ManagedClusterPodIdentityProfilePtr(v *ManagedClusterPodIdentityProfileArgs) ManagedClusterPodIdentityProfilePtrInput { - return (*managedClusterPodIdentityProfilePtrType)(v) +func ManagedClusterLoadBalancerProfilePtr(v *ManagedClusterLoadBalancerProfileArgs) ManagedClusterLoadBalancerProfilePtrInput { + return (*managedClusterLoadBalancerProfilePtrType)(v) } -func (*managedClusterPodIdentityProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPodIdentityProfile)(nil)).Elem() +func (*managedClusterLoadBalancerProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfile)(nil)).Elem() } -func (i *managedClusterPodIdentityProfilePtrType) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { - return i.ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterLoadBalancerProfilePtrType) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { + return i.ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Background()) } -func (i *managedClusterPodIdentityProfilePtrType) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityProfilePtrOutput) +func (i *managedClusterLoadBalancerProfilePtrType) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfilePtrOutput) } -// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. -type ManagedClusterPodIdentityProfileOutput struct{ *pulumi.OutputState } +// Profile of the managed cluster load balancer. +type ManagedClusterLoadBalancerProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterPodIdentityProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityProfile)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfile)(nil)).Elem() } -func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfileOutput() ManagedClusterPodIdentityProfileOutput { +func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfileOutput() ManagedClusterLoadBalancerProfileOutput { return o } -func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfileOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileOutput { +func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfileOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutput { return o } -func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { - return o.ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { + return o.ToManagedClusterLoadBalancerProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterPodIdentityProfile) *ManagedClusterPodIdentityProfile { +func (o ManagedClusterLoadBalancerProfileOutput) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfile { return &v - }).(ManagedClusterPodIdentityProfilePtrOutput) + }).(ManagedClusterLoadBalancerProfilePtrOutput) } -// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. -func (o ManagedClusterPodIdentityProfileOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfile) *bool { return v.AllowNetworkPluginKubenet }).(pulumi.BoolPtrOutput) +// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. +func (o ManagedClusterLoadBalancerProfileOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *int { return v.AllocatedOutboundPorts }).(pulumi.IntPtrOutput) } -// Whether the pod identity addon is enabled. -func (o ManagedClusterPodIdentityProfileOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfile) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// The type of the managed inbound Load Balancer BackendPool. +func (o ManagedClusterLoadBalancerProfileOutput) BackendPoolType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *string { return v.BackendPoolType }).(pulumi.StringPtrOutput) } -// The pod identities to use in the cluster. -func (o ManagedClusterPodIdentityProfileOutput) UserAssignedIdentities() ManagedClusterPodIdentityArrayOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentity { return v.UserAssignedIdentities }).(ManagedClusterPodIdentityArrayOutput) +// The effective outbound IP resources of the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) []ResourceReference { return v.EffectiveOutboundIPs }).(ResourceReferenceArrayOutput) } -// The pod identity exceptions to allow. -func (o ManagedClusterPodIdentityProfileOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionArrayOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentityException { - return v.UserAssignedIdentityExceptions - }).(ManagedClusterPodIdentityExceptionArrayOutput) +// Enable multiple standard load balancers per AKS cluster or not. +func (o ManagedClusterLoadBalancerProfileOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *bool { return v.EnableMultipleStandardLoadBalancers }).(pulumi.BoolPtrOutput) } -type ManagedClusterPodIdentityProfilePtrOutput struct{ *pulumi.OutputState } +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. +func (o ManagedClusterLoadBalancerProfileOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) +} -func (ManagedClusterPodIdentityProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPodIdentityProfile)(nil)).Elem() +// Desired managed outbound IPs for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileManagedOutboundIPs { + return v.ManagedOutboundIPs + }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) } -func (o ManagedClusterPodIdentityProfilePtrOutput) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { +// Desired outbound IP Prefix resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPPrefixes { + return v.OutboundIPPrefixes + }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) +} + +// Desired outbound IP resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileOutput) OutboundIPs() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPs { + return v.OutboundIPs + }).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) +} + +type ManagedClusterLoadBalancerProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfile)(nil)).Elem() +} + +func (o ManagedClusterLoadBalancerProfilePtrOutput) ToManagedClusterLoadBalancerProfilePtrOutput() ManagedClusterLoadBalancerProfilePtrOutput { return o } -func (o ManagedClusterPodIdentityProfilePtrOutput) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { +func (o ManagedClusterLoadBalancerProfilePtrOutput) ToManagedClusterLoadBalancerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfilePtrOutput { return o } -func (o ManagedClusterPodIdentityProfilePtrOutput) Elem() ManagedClusterPodIdentityProfileOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) ManagedClusterPodIdentityProfile { +func (o ManagedClusterLoadBalancerProfilePtrOutput) Elem() ManagedClusterLoadBalancerProfileOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) ManagedClusterLoadBalancerProfile { if v != nil { return *v } - var ret ManagedClusterPodIdentityProfile + var ret ManagedClusterLoadBalancerProfile return ret - }).(ManagedClusterPodIdentityProfileOutput) + }).(ManagedClusterLoadBalancerProfileOutput) } -// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. -func (o ManagedClusterPodIdentityProfilePtrOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) *bool { +// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. +func (o ManagedClusterLoadBalancerProfilePtrOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *int { if v == nil { return nil } - return v.AllowNetworkPluginKubenet - }).(pulumi.BoolPtrOutput) + return v.AllocatedOutboundPorts + }).(pulumi.IntPtrOutput) } -// Whether the pod identity addon is enabled. -func (o ManagedClusterPodIdentityProfilePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) *bool { +// The type of the managed inbound Load Balancer BackendPool. +func (o ManagedClusterLoadBalancerProfilePtrOutput) BackendPoolType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *string { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.BackendPoolType + }).(pulumi.StringPtrOutput) } -// The pod identities to use in the cluster. -func (o ManagedClusterPodIdentityProfilePtrOutput) UserAssignedIdentities() ManagedClusterPodIdentityArrayOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentity { +// The effective outbound IP resources of the cluster load balancer. +func (o ManagedClusterLoadBalancerProfilePtrOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) []ResourceReference { if v == nil { return nil } - return v.UserAssignedIdentities - }).(ManagedClusterPodIdentityArrayOutput) + return v.EffectiveOutboundIPs + }).(ResourceReferenceArrayOutput) } -// The pod identity exceptions to allow. -func (o ManagedClusterPodIdentityProfilePtrOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionArrayOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentityException { +// Enable multiple standard load balancers per AKS cluster or not. +func (o ManagedClusterLoadBalancerProfilePtrOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *bool { if v == nil { return nil } - return v.UserAssignedIdentityExceptions - }).(ManagedClusterPodIdentityExceptionArrayOutput) -} - -// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. -type ManagedClusterPodIdentityProfileResponse struct { - // Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. - AllowNetworkPluginKubenet *bool `pulumi:"allowNetworkPluginKubenet"` - // Whether the pod identity addon is enabled. - Enabled *bool `pulumi:"enabled"` - // The pod identities to use in the cluster. - UserAssignedIdentities []ManagedClusterPodIdentityResponse `pulumi:"userAssignedIdentities"` - // The pod identity exceptions to allow. - UserAssignedIdentityExceptions []ManagedClusterPodIdentityExceptionResponse `pulumi:"userAssignedIdentityExceptions"` -} - -// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. -type ManagedClusterPodIdentityProfileResponseOutput struct{ *pulumi.OutputState } - -func (ManagedClusterPodIdentityProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityProfileResponse)(nil)).Elem() -} - -func (o ManagedClusterPodIdentityProfileResponseOutput) ToManagedClusterPodIdentityProfileResponseOutput() ManagedClusterPodIdentityProfileResponseOutput { - return o -} - -func (o ManagedClusterPodIdentityProfileResponseOutput) ToManagedClusterPodIdentityProfileResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileResponseOutput { - return o -} - -// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. -func (o ManagedClusterPodIdentityProfileResponseOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) *bool { return v.AllowNetworkPluginKubenet }).(pulumi.BoolPtrOutput) -} - -// Whether the pod identity addon is enabled. -func (o ManagedClusterPodIdentityProfileResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -// The pod identities to use in the cluster. -func (o ManagedClusterPodIdentityProfileResponseOutput) UserAssignedIdentities() ManagedClusterPodIdentityResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityResponse { - return v.UserAssignedIdentities - }).(ManagedClusterPodIdentityResponseArrayOutput) -} - -// The pod identity exceptions to allow. -func (o ManagedClusterPodIdentityProfileResponseOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityExceptionResponse { - return v.UserAssignedIdentityExceptions - }).(ManagedClusterPodIdentityExceptionResponseArrayOutput) -} - -type ManagedClusterPodIdentityProfileResponsePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterPodIdentityProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPodIdentityProfileResponse)(nil)).Elem() -} - -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) ToManagedClusterPodIdentityProfileResponsePtrOutput() ManagedClusterPodIdentityProfileResponsePtrOutput { - return o -} - -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) ToManagedClusterPodIdentityProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileResponsePtrOutput { - return o -} - -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) Elem() ManagedClusterPodIdentityProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) ManagedClusterPodIdentityProfileResponse { - if v != nil { - return *v - } - var ret ManagedClusterPodIdentityProfileResponse - return ret - }).(ManagedClusterPodIdentityProfileResponseOutput) + return v.EnableMultipleStandardLoadBalancers + }).(pulumi.BoolPtrOutput) } -// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) *bool { +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. +func (o ManagedClusterLoadBalancerProfilePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *int { if v == nil { return nil } - return v.AllowNetworkPluginKubenet - }).(pulumi.BoolPtrOutput) + return v.IdleTimeoutInMinutes + }).(pulumi.IntPtrOutput) } -// Whether the pod identity addon is enabled. -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) *bool { +// Desired managed outbound IPs for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfilePtrOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileManagedOutboundIPs { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.ManagedOutboundIPs + }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) } -// The pod identities to use in the cluster. -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) UserAssignedIdentities() ManagedClusterPodIdentityResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityResponse { +// Desired outbound IP Prefix resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfilePtrOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPPrefixes { if v == nil { return nil } - return v.UserAssignedIdentities - }).(ManagedClusterPodIdentityResponseArrayOutput) + return v.OutboundIPPrefixes + }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) } -// The pod identity exceptions to allow. -func (o ManagedClusterPodIdentityProfileResponsePtrOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityExceptionResponse { +// Desired outbound IP resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfilePtrOutput) OutboundIPs() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfile) *ManagedClusterLoadBalancerProfileOutboundIPs { if v == nil { return nil } - return v.UserAssignedIdentityExceptions - }).(ManagedClusterPodIdentityExceptionResponseArrayOutput) + return v.OutboundIPs + }).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) +} + +// Desired managed outbound IPs for the cluster load balancer. +type ManagedClusterLoadBalancerProfileManagedOutboundIPs struct { + // The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. + Count *int `pulumi:"count"` + // The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. + CountIPv6 *int `pulumi:"countIPv6"` } -// An error response from the pod identity provisioning. -type ManagedClusterPodIdentityProvisioningErrorBodyResponse struct { - // An identifier for the error. Codes are invariant and are intended to be consumed programmatically. - Code *string `pulumi:"code"` - // A list of additional details about the error. - Details []ManagedClusterPodIdentityProvisioningErrorBodyResponse `pulumi:"details"` - // A message describing the error, intended to be suitable for display in a user interface. - Message *string `pulumi:"message"` - // The target of the particular error. For example, the name of the property in error. - Target *string `pulumi:"target"` +// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileManagedOutboundIPs +func (val *ManagedClusterLoadBalancerProfileManagedOutboundIPs) Defaults() *ManagedClusterLoadBalancerProfileManagedOutboundIPs { + if val == nil { + return nil + } + tmp := *val + if tmp.Count == nil { + count_ := 1 + tmp.Count = &count_ + } + if tmp.CountIPv6 == nil { + countIPv6_ := 0 + tmp.CountIPv6 = &countIPv6_ + } + return &tmp } -// An error response from the pod identity provisioning. -type ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput struct{ *pulumi.OutputState } +// ManagedClusterLoadBalancerProfileManagedOutboundIPsInput is an input type that accepts ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs and ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileManagedOutboundIPsInput` via: +// +// ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs{...} +type ManagedClusterLoadBalancerProfileManagedOutboundIPsInput interface { + pulumi.Input -func (ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityProvisioningErrorBodyResponse)(nil)).Elem() + ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput + ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseOutput() ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { - return o +// Desired managed outbound IPs for the cluster load balancer. +type ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs struct { + // The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. + Count pulumi.IntPtrInput `pulumi:"count"` + // The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. + CountIPv6 pulumi.IntPtrInput `pulumi:"countIPv6"` } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { - return o +// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs +func (val *ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) Defaults() *ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.Count == nil { + tmp.Count = pulumi.IntPtr(1) + } + if tmp.CountIPv6 == nil { + tmp.CountIPv6 = pulumi.IntPtr(0) + } + return &tmp } - -// An identifier for the error. Codes are invariant and are intended to be consumed programmatically. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Code() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { return v.Code }).(pulumi.StringPtrOutput) +func (ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() } -// A list of additional details about the error. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Details() ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) []ManagedClusterPodIdentityProvisioningErrorBodyResponse { - return v.Details - }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) +func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { + return i.ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(context.Background()) } -// A message describing the error, intended to be suitable for display in a user interface. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Message() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { return v.Message }).(pulumi.StringPtrOutput) +func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) } -// The target of the particular error. For example, the name of the property in error. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Target() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { return v.Target }).(pulumi.StringPtrOutput) +func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return i.ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Background()) } -type ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPodIdentityProvisioningErrorBodyResponse)(nil)).Elem() +func (i ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput).ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx) } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput() ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { - return o -} +// ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput is an input type that accepts ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs, ManagedClusterLoadBalancerProfileManagedOutboundIPsPtr and ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput` via: +// +// ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs{...} +// +// or: +// +// nil +type ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput interface { + pulumi.Input -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { - return o + ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput + ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Elem() ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) ManagedClusterPodIdentityProvisioningErrorBodyResponse { - if v != nil { - return *v - } - var ret ManagedClusterPodIdentityProvisioningErrorBodyResponse - return ret - }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) -} +type managedClusterLoadBalancerProfileManagedOutboundIPsPtrType ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs -// An identifier for the error. Codes are invariant and are intended to be consumed programmatically. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Code() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { - if v == nil { - return nil - } - return v.Code - }).(pulumi.StringPtrOutput) +func ManagedClusterLoadBalancerProfileManagedOutboundIPsPtr(v *ManagedClusterLoadBalancerProfileManagedOutboundIPsArgs) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrInput { + return (*managedClusterLoadBalancerProfileManagedOutboundIPsPtrType)(v) } -// A list of additional details about the error. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Details() ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) []ManagedClusterPodIdentityProvisioningErrorBodyResponse { - if v == nil { - return nil - } - return v.Details - }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) +func (*managedClusterLoadBalancerProfileManagedOutboundIPsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() } -// A message describing the error, intended to be suitable for display in a user interface. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Message() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { - if v == nil { - return nil - } - return v.Message - }).(pulumi.StringPtrOutput) +func (i *managedClusterLoadBalancerProfileManagedOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return i.ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Background()) } -// The target of the particular error. For example, the name of the property in error. -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Target() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { - if v == nil { - return nil - } - return v.Target - }).(pulumi.StringPtrOutput) +func (i *managedClusterLoadBalancerProfileManagedOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) } -type ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput struct{ *pulumi.OutputState } +// Desired managed outbound IPs for the cluster load balancer. +type ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput struct{ *pulumi.OutputState } -func (ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentityProvisioningErrorBodyResponse)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput() ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { return o } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { return o } -func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityProvisioningErrorBodyResponse { - return vs[0].([]ManagedClusterPodIdentityProvisioningErrorBodyResponse)[vs[1].(int)] - }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) -} - -// An error response from the pod identity provisioning. -type ManagedClusterPodIdentityProvisioningErrorResponse struct { - // Details about the error. - Error *ManagedClusterPodIdentityProvisioningErrorBodyResponse `pulumi:"error"` -} - -// An error response from the pod identity provisioning. -type ManagedClusterPodIdentityProvisioningErrorResponseOutput struct{ *pulumi.OutputState } - -func (ManagedClusterPodIdentityProvisioningErrorResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityProvisioningErrorResponse)(nil)).Elem() +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return o.ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(context.Background()) } -func (o ManagedClusterPodIdentityProvisioningErrorResponseOutput) ToManagedClusterPodIdentityProvisioningErrorResponseOutput() ManagedClusterPodIdentityProvisioningErrorResponseOutput { - return o +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfileManagedOutboundIPs) *ManagedClusterLoadBalancerProfileManagedOutboundIPs { + return &v + }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) } -func (o ManagedClusterPodIdentityProvisioningErrorResponseOutput) ToManagedClusterPodIdentityProvisioningErrorResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorResponseOutput { - return o +// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { return v.Count }).(pulumi.IntPtrOutput) } -// Details about the error. -func (o ManagedClusterPodIdentityProvisioningErrorResponseOutput) Error() ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorResponse) *ManagedClusterPodIdentityProvisioningErrorBodyResponse { - return v.Error - }).(ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) +// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) CountIPv6() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { return v.CountIPv6 }).(pulumi.IntPtrOutput) } -type ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPodIdentityProvisioningErrorResponse)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileManagedOutboundIPs)(nil)).Elem() } -func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorResponsePtrOutput() ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput { +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { return o } -func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorResponsePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput { +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput { return o } -func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) Elem() ManagedClusterPodIdentityProvisioningErrorResponseOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorResponse) ManagedClusterPodIdentityProvisioningErrorResponse { +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileManagedOutboundIPs) ManagedClusterLoadBalancerProfileManagedOutboundIPs { if v != nil { return *v } - var ret ManagedClusterPodIdentityProvisioningErrorResponse + var ret ManagedClusterLoadBalancerProfileManagedOutboundIPs return ret - }).(ManagedClusterPodIdentityProvisioningErrorResponseOutput) + }).(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput) +} + +// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { + if v == nil { + return nil + } + return v.Count + }).(pulumi.IntPtrOutput) +} + +// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. +func (o ManagedClusterLoadBalancerProfileManagedOutboundIPsPtrOutput) CountIPv6() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileManagedOutboundIPs) *int { + if v == nil { + return nil + } + return v.CountIPv6 + }).(pulumi.IntPtrOutput) +} + +// Desired outbound IP Prefix resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileOutboundIPPrefixes struct { + // A list of public IP prefix resources. + PublicIPPrefixes []ResourceReference `pulumi:"publicIPPrefixes"` } -// Details about the error. -func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) Error() ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorResponse) *ManagedClusterPodIdentityProvisioningErrorBodyResponse { - if v == nil { - return nil - } - return v.Error - }).(ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) +// ManagedClusterLoadBalancerProfileOutboundIPPrefixesInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs and ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPPrefixesInput` via: +// +// ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs{...} +type ManagedClusterLoadBalancerProfileOutboundIPPrefixesInput interface { + pulumi.Input + + ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput + ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput } -// Details about the pod identity assigned to the Managed Cluster. -type ManagedClusterPodIdentityResponse struct { - // The binding selector to use for the AzureIdentityBinding resource. - BindingSelector *string `pulumi:"bindingSelector"` - // The user assigned identity details. - Identity UserAssignedIdentityResponse `pulumi:"identity"` - // The name of the pod identity. - Name string `pulumi:"name"` - // The namespace of the pod identity. - Namespace string `pulumi:"namespace"` - ProvisioningInfo ManagedClusterPodIdentityResponseProvisioningInfo `pulumi:"provisioningInfo"` - // The current provisioning state of the pod identity. - ProvisioningState string `pulumi:"provisioningState"` +// Desired outbound IP Prefix resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs struct { + // A list of public IP prefix resources. + PublicIPPrefixes ResourceReferenceArrayInput `pulumi:"publicIPPrefixes"` } -// Details about the pod identity assigned to the Managed Cluster. -type ManagedClusterPodIdentityResponseOutput struct{ *pulumi.OutputState } +func (ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() +} -func (ManagedClusterPodIdentityResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityResponse)(nil)).Elem() +func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { + return i.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(context.Background()) } -func (o ManagedClusterPodIdentityResponseOutput) ToManagedClusterPodIdentityResponseOutput() ManagedClusterPodIdentityResponseOutput { - return o +func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) } -func (o ManagedClusterPodIdentityResponseOutput) ToManagedClusterPodIdentityResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityResponseOutput { - return o +func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return i.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Background()) } -// The binding selector to use for the AzureIdentityBinding resource. -func (o ManagedClusterPodIdentityResponseOutput) BindingSelector() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponse) *string { return v.BindingSelector }).(pulumi.StringPtrOutput) +func (i ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput).ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx) } -// The user assigned identity details. -func (o ManagedClusterPodIdentityResponseOutput) Identity() UserAssignedIdentityResponseOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponse) UserAssignedIdentityResponse { return v.Identity }).(UserAssignedIdentityResponseOutput) +// ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs, ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtr and ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput` via: +// +// ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs{...} +// +// or: +// +// nil +type ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput interface { + pulumi.Input + + ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput + ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput } -// The name of the pod identity. -func (o ManagedClusterPodIdentityResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponse) string { return v.Name }).(pulumi.StringOutput) +type managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs + +func ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtr(v *ManagedClusterLoadBalancerProfileOutboundIPPrefixesArgs) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrInput { + return (*managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType)(v) } -// The namespace of the pod identity. -func (o ManagedClusterPodIdentityResponseOutput) Namespace() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponse) string { return v.Namespace }).(pulumi.StringOutput) +func (*managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() } -func (o ManagedClusterPodIdentityResponseOutput) ProvisioningInfo() ManagedClusterPodIdentityResponseProvisioningInfoOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponse) ManagedClusterPodIdentityResponseProvisioningInfo { - return v.ProvisioningInfo - }).(ManagedClusterPodIdentityResponseProvisioningInfoOutput) +func (i *managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return i.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Background()) } -// The current provisioning state of the pod identity. -func (o ManagedClusterPodIdentityResponseOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +func (i *managedClusterLoadBalancerProfileOutboundIPPrefixesPtrType) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) } -type ManagedClusterPodIdentityResponseArrayOutput struct{ *pulumi.OutputState } +// Desired outbound IP Prefix resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput struct{ *pulumi.OutputState } -func (ManagedClusterPodIdentityResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ManagedClusterPodIdentityResponse)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() } -func (o ManagedClusterPodIdentityResponseArrayOutput) ToManagedClusterPodIdentityResponseArrayOutput() ManagedClusterPodIdentityResponseArrayOutput { +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { return o } -func (o ManagedClusterPodIdentityResponseArrayOutput) ToManagedClusterPodIdentityResponseArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityResponseArrayOutput { +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { return o } -func (o ManagedClusterPodIdentityResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityResponse { - return vs[0].([]ManagedClusterPodIdentityResponse)[vs[1].(int)] - }).(ManagedClusterPodIdentityResponseOutput) +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return o.ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(context.Background()) } -type ManagedClusterPodIdentityResponseProvisioningInfo struct { - // Pod identity assignment error (if any). - Error *ManagedClusterPodIdentityProvisioningErrorResponse `pulumi:"error"` +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfileOutboundIPPrefixes) *ManagedClusterLoadBalancerProfileOutboundIPPrefixes { + return &v + }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) } -type ManagedClusterPodIdentityResponseProvisioningInfoOutput struct{ *pulumi.OutputState } +// A list of public IP prefix resources. +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) PublicIPPrefixes() ResourceReferenceArrayOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileOutboundIPPrefixes) []ResourceReference { + return v.PublicIPPrefixes + }).(ResourceReferenceArrayOutput) +} -func (ManagedClusterPodIdentityResponseProvisioningInfoOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPodIdentityResponseProvisioningInfo)(nil)).Elem() +type ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPPrefixes)(nil)).Elem() } -func (o ManagedClusterPodIdentityResponseProvisioningInfoOutput) ToManagedClusterPodIdentityResponseProvisioningInfoOutput() ManagedClusterPodIdentityResponseProvisioningInfoOutput { +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { return o } -func (o ManagedClusterPodIdentityResponseProvisioningInfoOutput) ToManagedClusterPodIdentityResponseProvisioningInfoOutputWithContext(ctx context.Context) ManagedClusterPodIdentityResponseProvisioningInfoOutput { +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput { return o } -// Pod identity assignment error (if any). -func (o ManagedClusterPodIdentityResponseProvisioningInfoOutput) Error() ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterPodIdentityResponseProvisioningInfo) *ManagedClusterPodIdentityProvisioningErrorResponse { - return v.Error - }).(ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) Elem() ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPPrefixes) ManagedClusterLoadBalancerProfileOutboundIPPrefixes { + if v != nil { + return *v + } + var ret ManagedClusterLoadBalancerProfileOutboundIPPrefixes + return ret + }).(ManagedClusterLoadBalancerProfileOutboundIPPrefixesOutput) } -// Parameters to be applied to the cluster-autoscaler when enabled -type ManagedClusterPropertiesAutoScalerProfile struct { - // Valid values are 'true' and 'false' - BalanceSimilarNodeGroups *string `pulumi:"balanceSimilarNodeGroups"` - // If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. - Expander *string `pulumi:"expander"` - // The default is 10. - MaxEmptyBulkDelete *string `pulumi:"maxEmptyBulkDelete"` - // The default is 600. - MaxGracefulTerminationSec *string `pulumi:"maxGracefulTerminationSec"` - // The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - MaxNodeProvisionTime *string `pulumi:"maxNodeProvisionTime"` - // The default is 45. The maximum is 100 and the minimum is 0. - MaxTotalUnreadyPercentage *string `pulumi:"maxTotalUnreadyPercentage"` - // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). - NewPodScaleUpDelay *string `pulumi:"newPodScaleUpDelay"` - // This must be an integer. The default is 3. - OkTotalUnreadyCount *string `pulumi:"okTotalUnreadyCount"` - // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterAdd *string `pulumi:"scaleDownDelayAfterAdd"` - // The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterDelete *string `pulumi:"scaleDownDelayAfterDelete"` - // The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterFailure *string `pulumi:"scaleDownDelayAfterFailure"` - // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownUnneededTime *string `pulumi:"scaleDownUnneededTime"` - // The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownUnreadyTime *string `pulumi:"scaleDownUnreadyTime"` - // The default is '0.5'. - ScaleDownUtilizationThreshold *string `pulumi:"scaleDownUtilizationThreshold"` - // The default is '10'. Values must be an integer number of seconds. - ScanInterval *string `pulumi:"scanInterval"` - // The default is true. - SkipNodesWithLocalStorage *string `pulumi:"skipNodesWithLocalStorage"` - // The default is true. - SkipNodesWithSystemPods *string `pulumi:"skipNodesWithSystemPods"` +// A list of public IP prefix resources. +func (o ManagedClusterLoadBalancerProfileOutboundIPPrefixesPtrOutput) PublicIPPrefixes() ResourceReferenceArrayOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPPrefixes) []ResourceReference { + if v == nil { + return nil + } + return v.PublicIPPrefixes + }).(ResourceReferenceArrayOutput) } -// ManagedClusterPropertiesAutoScalerProfileInput is an input type that accepts ManagedClusterPropertiesAutoScalerProfileArgs and ManagedClusterPropertiesAutoScalerProfileOutput values. -// You can construct a concrete instance of `ManagedClusterPropertiesAutoScalerProfileInput` via: +// Desired outbound IP resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileOutboundIPs struct { + // A list of public IP resources. + PublicIPs []ResourceReference `pulumi:"publicIPs"` +} + +// ManagedClusterLoadBalancerProfileOutboundIPsInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPsArgs and ManagedClusterLoadBalancerProfileOutboundIPsOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPsInput` via: // -// ManagedClusterPropertiesAutoScalerProfileArgs{...} -type ManagedClusterPropertiesAutoScalerProfileInput interface { +// ManagedClusterLoadBalancerProfileOutboundIPsArgs{...} +type ManagedClusterLoadBalancerProfileOutboundIPsInput interface { pulumi.Input - ToManagedClusterPropertiesAutoScalerProfileOutput() ManagedClusterPropertiesAutoScalerProfileOutput - ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(context.Context) ManagedClusterPropertiesAutoScalerProfileOutput + ToManagedClusterLoadBalancerProfileOutboundIPsOutput() ManagedClusterLoadBalancerProfileOutboundIPsOutput + ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPsOutput } -// Parameters to be applied to the cluster-autoscaler when enabled -type ManagedClusterPropertiesAutoScalerProfileArgs struct { - // Valid values are 'true' and 'false' - BalanceSimilarNodeGroups pulumi.StringPtrInput `pulumi:"balanceSimilarNodeGroups"` - // If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. - Expander pulumi.StringPtrInput `pulumi:"expander"` - // The default is 10. - MaxEmptyBulkDelete pulumi.StringPtrInput `pulumi:"maxEmptyBulkDelete"` - // The default is 600. - MaxGracefulTerminationSec pulumi.StringPtrInput `pulumi:"maxGracefulTerminationSec"` - // The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - MaxNodeProvisionTime pulumi.StringPtrInput `pulumi:"maxNodeProvisionTime"` - // The default is 45. The maximum is 100 and the minimum is 0. - MaxTotalUnreadyPercentage pulumi.StringPtrInput `pulumi:"maxTotalUnreadyPercentage"` - // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). - NewPodScaleUpDelay pulumi.StringPtrInput `pulumi:"newPodScaleUpDelay"` - // This must be an integer. The default is 3. - OkTotalUnreadyCount pulumi.StringPtrInput `pulumi:"okTotalUnreadyCount"` - // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterAdd pulumi.StringPtrInput `pulumi:"scaleDownDelayAfterAdd"` - // The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterDelete pulumi.StringPtrInput `pulumi:"scaleDownDelayAfterDelete"` - // The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterFailure pulumi.StringPtrInput `pulumi:"scaleDownDelayAfterFailure"` - // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownUnneededTime pulumi.StringPtrInput `pulumi:"scaleDownUnneededTime"` - // The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownUnreadyTime pulumi.StringPtrInput `pulumi:"scaleDownUnreadyTime"` - // The default is '0.5'. - ScaleDownUtilizationThreshold pulumi.StringPtrInput `pulumi:"scaleDownUtilizationThreshold"` - // The default is '10'. Values must be an integer number of seconds. - ScanInterval pulumi.StringPtrInput `pulumi:"scanInterval"` - // The default is true. - SkipNodesWithLocalStorage pulumi.StringPtrInput `pulumi:"skipNodesWithLocalStorage"` - // The default is true. - SkipNodesWithSystemPods pulumi.StringPtrInput `pulumi:"skipNodesWithSystemPods"` +// Desired outbound IP resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileOutboundIPsArgs struct { + // A list of public IP resources. + PublicIPs ResourceReferenceArrayInput `pulumi:"publicIPs"` } -func (ManagedClusterPropertiesAutoScalerProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileOutboundIPsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() } -func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfileOutput() ManagedClusterPropertiesAutoScalerProfileOutput { - return i.ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(context.Background()) +func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsOutput() ManagedClusterLoadBalancerProfileOutboundIPsOutput { + return i.ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(context.Background()) } -func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPropertiesAutoScalerProfileOutput) +func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPsOutput) } -func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { - return i.ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return i.ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Background()) } -func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPropertiesAutoScalerProfileOutput).ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx) +func (i ManagedClusterLoadBalancerProfileOutboundIPsArgs) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPsOutput).ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx) } -// ManagedClusterPropertiesAutoScalerProfilePtrInput is an input type that accepts ManagedClusterPropertiesAutoScalerProfileArgs, ManagedClusterPropertiesAutoScalerProfilePtr and ManagedClusterPropertiesAutoScalerProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterPropertiesAutoScalerProfilePtrInput` via: +// ManagedClusterLoadBalancerProfileOutboundIPsPtrInput is an input type that accepts ManagedClusterLoadBalancerProfileOutboundIPsArgs, ManagedClusterLoadBalancerProfileOutboundIPsPtr and ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput values. +// You can construct a concrete instance of `ManagedClusterLoadBalancerProfileOutboundIPsPtrInput` via: // -// ManagedClusterPropertiesAutoScalerProfileArgs{...} +// ManagedClusterLoadBalancerProfileOutboundIPsArgs{...} // // or: // // nil -type ManagedClusterPropertiesAutoScalerProfilePtrInput interface { +type ManagedClusterLoadBalancerProfileOutboundIPsPtrInput interface { pulumi.Input - ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput - ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput + ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput + ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput } -type managedClusterPropertiesAutoScalerProfilePtrType ManagedClusterPropertiesAutoScalerProfileArgs +type managedClusterLoadBalancerProfileOutboundIPsPtrType ManagedClusterLoadBalancerProfileOutboundIPsArgs -func ManagedClusterPropertiesAutoScalerProfilePtr(v *ManagedClusterPropertiesAutoScalerProfileArgs) ManagedClusterPropertiesAutoScalerProfilePtrInput { - return (*managedClusterPropertiesAutoScalerProfilePtrType)(v) +func ManagedClusterLoadBalancerProfileOutboundIPsPtr(v *ManagedClusterLoadBalancerProfileOutboundIPsArgs) ManagedClusterLoadBalancerProfileOutboundIPsPtrInput { + return (*managedClusterLoadBalancerProfileOutboundIPsPtrType)(v) } -func (*managedClusterPropertiesAutoScalerProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() +func (*managedClusterLoadBalancerProfileOutboundIPsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() } -func (i *managedClusterPropertiesAutoScalerProfilePtrType) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { - return i.ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterLoadBalancerProfileOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return i.ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Background()) } -func (i *managedClusterPropertiesAutoScalerProfilePtrType) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPropertiesAutoScalerProfilePtrOutput) +func (i *managedClusterLoadBalancerProfileOutboundIPsPtrType) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) } -// Parameters to be applied to the cluster-autoscaler when enabled -type ManagedClusterPropertiesAutoScalerProfileOutput struct{ *pulumi.OutputState } +// Desired outbound IP resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileOutboundIPsOutput struct{ *pulumi.OutputState } -func (ManagedClusterPropertiesAutoScalerProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileOutboundIPsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() } -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfileOutput() ManagedClusterPropertiesAutoScalerProfileOutput { +func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsOutput() ManagedClusterLoadBalancerProfileOutboundIPsOutput { return o } -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfileOutput { +func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsOutput { return o } -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { - return o.ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return o.ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(context.Background()) } -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterPropertiesAutoScalerProfile) *ManagedClusterPropertiesAutoScalerProfile { +func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterLoadBalancerProfileOutboundIPs) *ManagedClusterLoadBalancerProfileOutboundIPs { return &v - }).(ManagedClusterPropertiesAutoScalerProfilePtrOutput) + }).(ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) } -// Valid values are 'true' and 'false' -func (o ManagedClusterPropertiesAutoScalerProfileOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.BalanceSimilarNodeGroups }).(pulumi.StringPtrOutput) +// A list of public IP resources. +func (o ManagedClusterLoadBalancerProfileOutboundIPsOutput) PublicIPs() ResourceReferenceArrayOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileOutboundIPs) []ResourceReference { return v.PublicIPs }).(ResourceReferenceArrayOutput) } -// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) Expander() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.Expander }).(pulumi.StringPtrOutput) +type ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileOutboundIPs)(nil)).Elem() } -// The default is 10. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxEmptyBulkDelete }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return o } -// The default is 600. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxGracefulTerminationSec }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput { + return o } -// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxNodeProvisionTime }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileOutboundIPsOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPs) ManagedClusterLoadBalancerProfileOutboundIPs { + if v != nil { + return *v + } + var ret ManagedClusterLoadBalancerProfileOutboundIPs + return ret + }).(ManagedClusterLoadBalancerProfileOutboundIPsOutput) } -// The default is 45. The maximum is 100 and the minimum is 0. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxTotalUnreadyPercentage }).(pulumi.StringPtrOutput) +// A list of public IP resources. +func (o ManagedClusterLoadBalancerProfileOutboundIPsPtrOutput) PublicIPs() ResourceReferenceArrayOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileOutboundIPs) []ResourceReference { + if v == nil { + return nil + } + return v.PublicIPs + }).(ResourceReferenceArrayOutput) } -// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). -func (o ManagedClusterPropertiesAutoScalerProfileOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.NewPodScaleUpDelay }).(pulumi.StringPtrOutput) +// Profile of the managed cluster load balancer. +type ManagedClusterLoadBalancerProfileResponse struct { + // The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. + AllocatedOutboundPorts *int `pulumi:"allocatedOutboundPorts"` + // The type of the managed inbound Load Balancer BackendPool. + BackendPoolType *string `pulumi:"backendPoolType"` + // The effective outbound IP resources of the cluster load balancer. + EffectiveOutboundIPs []ResourceReferenceResponse `pulumi:"effectiveOutboundIPs"` + // Enable multiple standard load balancers per AKS cluster or not. + EnableMultipleStandardLoadBalancers *bool `pulumi:"enableMultipleStandardLoadBalancers"` + // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. + IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` + // Desired managed outbound IPs for the cluster load balancer. + ManagedOutboundIPs *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs `pulumi:"managedOutboundIPs"` + // Desired outbound IP Prefix resources for the cluster load balancer. + OutboundIPPrefixes *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes `pulumi:"outboundIPPrefixes"` + // Desired outbound IP resources for the cluster load balancer. + OutboundIPs *ManagedClusterLoadBalancerProfileResponseOutboundIPs `pulumi:"outboundIPs"` } -// This must be an integer. The default is 3. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.OkTotalUnreadyCount }).(pulumi.StringPtrOutput) +// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileResponse +func (val *ManagedClusterLoadBalancerProfileResponse) Defaults() *ManagedClusterLoadBalancerProfileResponse { + if val == nil { + return nil + } + tmp := *val + if tmp.AllocatedOutboundPorts == nil { + allocatedOutboundPorts_ := 0 + tmp.AllocatedOutboundPorts = &allocatedOutboundPorts_ + } + if tmp.BackendPoolType == nil { + backendPoolType_ := "NodeIPConfiguration" + tmp.BackendPoolType = &backendPoolType_ + } + if tmp.IdleTimeoutInMinutes == nil { + idleTimeoutInMinutes_ := 30 + tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ + } + tmp.ManagedOutboundIPs = tmp.ManagedOutboundIPs.Defaults() + + return &tmp } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownDelayAfterAdd }).(pulumi.StringPtrOutput) +// Profile of the managed cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponse)(nil)).Elem() } -// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownDelayAfterDelete }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileResponseOutput) ToManagedClusterLoadBalancerProfileResponseOutput() ManagedClusterLoadBalancerProfileResponseOutput { + return o } -// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownDelayAfterFailure }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileResponseOutput) ToManagedClusterLoadBalancerProfileResponseOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutput { + return o } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownUnneededTime }).(pulumi.StringPtrOutput) +// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. +func (o ManagedClusterLoadBalancerProfileResponseOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *int { return v.AllocatedOutboundPorts }).(pulumi.IntPtrOutput) } -// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownUnreadyTime }).(pulumi.StringPtrOutput) +// The type of the managed inbound Load Balancer BackendPool. +func (o ManagedClusterLoadBalancerProfileResponseOutput) BackendPoolType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *string { return v.BackendPoolType }).(pulumi.StringPtrOutput) } -// The default is '0.5'. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownUtilizationThreshold }).(pulumi.StringPtrOutput) +// The effective outbound IP resources of the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponseOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) []ResourceReferenceResponse { + return v.EffectiveOutboundIPs + }).(ResourceReferenceResponseArrayOutput) } -// The default is '10'. Values must be an integer number of seconds. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScanInterval() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScanInterval }).(pulumi.StringPtrOutput) +// Enable multiple standard load balancers per AKS cluster or not. +func (o ManagedClusterLoadBalancerProfileResponseOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *bool { return v.EnableMultipleStandardLoadBalancers }).(pulumi.BoolPtrOutput) } -// The default is true. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.SkipNodesWithLocalStorage }).(pulumi.StringPtrOutput) +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. +func (o ManagedClusterLoadBalancerProfileResponseOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) } -// The default is true. -func (o ManagedClusterPropertiesAutoScalerProfileOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.SkipNodesWithSystemPods }).(pulumi.StringPtrOutput) +// Desired managed outbound IPs for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponseOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { + return v.ManagedOutboundIPs + }).(ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) } -type ManagedClusterPropertiesAutoScalerProfilePtrOutput struct{ *pulumi.OutputState } +// Desired outbound IP Prefix resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponseOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes { + return v.OutboundIPPrefixes + }).(ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) +} -func (ManagedClusterPropertiesAutoScalerProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() +// Desired outbound IP resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponseOutput) OutboundIPs() ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPs { + return v.OutboundIPs + }).(ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) } -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { +type ManagedClusterLoadBalancerProfileResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponse)(nil)).Elem() +} + +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) ToManagedClusterLoadBalancerProfileResponsePtrOutput() ManagedClusterLoadBalancerProfileResponsePtrOutput { return o } -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) ToManagedClusterLoadBalancerProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponsePtrOutput { return o } -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) Elem() ManagedClusterPropertiesAutoScalerProfileOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) ManagedClusterPropertiesAutoScalerProfile { +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) ManagedClusterLoadBalancerProfileResponse { if v != nil { return *v } - var ret ManagedClusterPropertiesAutoScalerProfile - return ret - }).(ManagedClusterPropertiesAutoScalerProfileOutput) -} - -// Valid values are 'true' and 'false' -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.BalanceSimilarNodeGroups - }).(pulumi.StringPtrOutput) -} - -// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) Expander() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.Expander - }).(pulumi.StringPtrOutput) + var ret ManagedClusterLoadBalancerProfileResponse + return ret + }).(ManagedClusterLoadBalancerProfileResponseOutput) } -// The default is 10. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) AllocatedOutboundPorts() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *int { if v == nil { return nil } - return v.MaxEmptyBulkDelete - }).(pulumi.StringPtrOutput) + return v.AllocatedOutboundPorts + }).(pulumi.IntPtrOutput) } -// The default is 600. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// The type of the managed inbound Load Balancer BackendPool. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) BackendPoolType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *string { if v == nil { return nil } - return v.MaxGracefulTerminationSec + return v.BackendPoolType }).(pulumi.StringPtrOutput) } -// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// The effective outbound IP resources of the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) []ResourceReferenceResponse { if v == nil { return nil } - return v.MaxNodeProvisionTime - }).(pulumi.StringPtrOutput) + return v.EffectiveOutboundIPs + }).(ResourceReferenceResponseArrayOutput) } -// The default is 45. The maximum is 100 and the minimum is 0. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// Enable multiple standard load balancers per AKS cluster or not. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) EnableMultipleStandardLoadBalancers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *bool { if v == nil { return nil } - return v.MaxTotalUnreadyPercentage - }).(pulumi.StringPtrOutput) + return v.EnableMultipleStandardLoadBalancers + }).(pulumi.BoolPtrOutput) } -// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *int { if v == nil { return nil } - return v.NewPodScaleUpDelay - }).(pulumi.StringPtrOutput) + return v.IdleTimeoutInMinutes + }).(pulumi.IntPtrOutput) } -// This must be an integer. The default is 3. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// Desired managed outbound IPs for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) ManagedOutboundIPs() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { if v == nil { return nil } - return v.OkTotalUnreadyCount - }).(pulumi.StringPtrOutput) + return v.ManagedOutboundIPs + }).(ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// Desired outbound IP Prefix resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) OutboundIPPrefixes() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes { if v == nil { return nil } - return v.ScaleDownDelayAfterAdd - }).(pulumi.StringPtrOutput) + return v.OutboundIPPrefixes + }).(ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) } -// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// Desired outbound IP resources for the cluster load balancer. +func (o ManagedClusterLoadBalancerProfileResponsePtrOutput) OutboundIPs() ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponse) *ManagedClusterLoadBalancerProfileResponseOutboundIPs { if v == nil { return nil } - return v.ScaleDownDelayAfterDelete - }).(pulumi.StringPtrOutput) + return v.OutboundIPs + }).(ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) } -// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownDelayAfterFailure - }).(pulumi.StringPtrOutput) +// Desired managed outbound IPs for the cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs struct { + // The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. + Count *int `pulumi:"count"` + // The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. + CountIPv6 *int `pulumi:"countIPv6"` } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownUnneededTime - }).(pulumi.StringPtrOutput) +// Defaults sets the appropriate defaults for ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs +func (val *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) Defaults() *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { + if val == nil { + return nil + } + tmp := *val + if tmp.Count == nil { + count_ := 1 + tmp.Count = &count_ + } + if tmp.CountIPv6 == nil { + countIPv6_ := 0 + tmp.CountIPv6 = &countIPv6_ + } + return &tmp } -// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownUnreadyTime - }).(pulumi.StringPtrOutput) +// Desired managed outbound IPs for the cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs)(nil)).Elem() } -// The default is '0.5'. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownUtilizationThreshold - }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput { + return o } -// The default is '10'. Values must be an integer number of seconds. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScanInterval() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { - if v == nil { - return nil +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput { + return o +} + +// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { return v.Count }).(pulumi.IntPtrOutput) +} + +// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) CountIPv6() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { return v.CountIPv6 }).(pulumi.IntPtrOutput) +} + +type ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs)(nil)).Elem() +} + +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { + return o +} + +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput { + return o +} + +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs { + if v != nil { + return *v } - return v.ScanInterval - }).(pulumi.StringPtrOutput) + var ret ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs + return ret + }).(ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsOutput) } -// The default is true. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { if v == nil { return nil } - return v.SkipNodesWithLocalStorage - }).(pulumi.StringPtrOutput) + return v.Count + }).(pulumi.IntPtrOutput) } -// The default is true. -func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { +// The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. +func (o ManagedClusterLoadBalancerProfileResponseManagedOutboundIPsPtrOutput) CountIPv6() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseManagedOutboundIPs) *int { if v == nil { return nil } - return v.SkipNodesWithSystemPods - }).(pulumi.StringPtrOutput) + return v.CountIPv6 + }).(pulumi.IntPtrOutput) +} + +// Desired outbound IP Prefix resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes struct { + // A list of public IP prefix resources. + PublicIPPrefixes []ResourceReferenceResponse `pulumi:"publicIPPrefixes"` +} + +// Desired outbound IP Prefix resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes)(nil)).Elem() +} + +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput { + return o +} + +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput { + return o } -// managed cluster properties for snapshot, these properties are read only. -type ManagedClusterPropertiesForSnapshotResponse struct { - // Whether the cluster has enabled Kubernetes Role-Based Access Control or not. - EnableRbac *bool `pulumi:"enableRbac"` - // The current kubernetes version. - KubernetesVersion *string `pulumi:"kubernetesVersion"` - // The current network profile. - NetworkProfile NetworkProfileForSnapshotResponse `pulumi:"networkProfile"` - // The current managed cluster sku. - Sku *ManagedClusterSKUResponse `pulumi:"sku"` +// A list of public IP prefix resources. +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) PublicIPPrefixes() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes) []ResourceReferenceResponse { + return v.PublicIPPrefixes + }).(ResourceReferenceResponseArrayOutput) } -// managed cluster properties for snapshot, these properties are read only. -type ManagedClusterPropertiesForSnapshotResponseOutput struct{ *pulumi.OutputState } +type ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterPropertiesForSnapshotResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPropertiesForSnapshotResponse)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes)(nil)).Elem() } -func (o ManagedClusterPropertiesForSnapshotResponseOutput) ToManagedClusterPropertiesForSnapshotResponseOutput() ManagedClusterPropertiesForSnapshotResponseOutput { +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { return o } -func (o ManagedClusterPropertiesForSnapshotResponseOutput) ToManagedClusterPropertiesForSnapshotResponseOutputWithContext(ctx context.Context) ManagedClusterPropertiesForSnapshotResponseOutput { +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput { return o } -// Whether the cluster has enabled Kubernetes Role-Based Access Control or not. -func (o ManagedClusterPropertiesForSnapshotResponseOutput) EnableRbac() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesForSnapshotResponse) *bool { return v.EnableRbac }).(pulumi.BoolPtrOutput) +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes) ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes { + if v != nil { + return *v + } + var ret ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes + return ret + }).(ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesOutput) +} + +// A list of public IP prefix resources. +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixesPtrOutput) PublicIPPrefixes() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPPrefixes) []ResourceReferenceResponse { + if v == nil { + return nil + } + return v.PublicIPPrefixes + }).(ResourceReferenceResponseArrayOutput) +} + +// Desired outbound IP resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseOutboundIPs struct { + // A list of public IP resources. + PublicIPs []ResourceReferenceResponse `pulumi:"publicIPs"` } -// The current kubernetes version. -func (o ManagedClusterPropertiesForSnapshotResponseOutput) KubernetesVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesForSnapshotResponse) *string { return v.KubernetesVersion }).(pulumi.StringPtrOutput) +// Desired outbound IP resources for the cluster load balancer. +type ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput struct{ *pulumi.OutputState } + +func (ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterLoadBalancerProfileResponseOutboundIPs)(nil)).Elem() } -// The current network profile. -func (o ManagedClusterPropertiesForSnapshotResponseOutput) NetworkProfile() NetworkProfileForSnapshotResponseOutput { - return o.ApplyT(func(v ManagedClusterPropertiesForSnapshotResponse) NetworkProfileForSnapshotResponse { - return v.NetworkProfile - }).(NetworkProfileForSnapshotResponseOutput) +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput { + return o } -// The current managed cluster sku. -func (o ManagedClusterPropertiesForSnapshotResponseOutput) Sku() ManagedClusterSKUResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesForSnapshotResponse) *ManagedClusterSKUResponse { return v.Sku }).(ManagedClusterSKUResponsePtrOutput) +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput { + return o } -// Parameters to be applied to the cluster-autoscaler when enabled -type ManagedClusterPropertiesResponseAutoScalerProfile struct { - // Valid values are 'true' and 'false' - BalanceSimilarNodeGroups *string `pulumi:"balanceSimilarNodeGroups"` - // If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. - Expander *string `pulumi:"expander"` - // The default is 10. - MaxEmptyBulkDelete *string `pulumi:"maxEmptyBulkDelete"` - // The default is 600. - MaxGracefulTerminationSec *string `pulumi:"maxGracefulTerminationSec"` - // The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - MaxNodeProvisionTime *string `pulumi:"maxNodeProvisionTime"` - // The default is 45. The maximum is 100 and the minimum is 0. - MaxTotalUnreadyPercentage *string `pulumi:"maxTotalUnreadyPercentage"` - // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). - NewPodScaleUpDelay *string `pulumi:"newPodScaleUpDelay"` - // This must be an integer. The default is 3. - OkTotalUnreadyCount *string `pulumi:"okTotalUnreadyCount"` - // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterAdd *string `pulumi:"scaleDownDelayAfterAdd"` - // The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterDelete *string `pulumi:"scaleDownDelayAfterDelete"` - // The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownDelayAfterFailure *string `pulumi:"scaleDownDelayAfterFailure"` - // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownUnneededTime *string `pulumi:"scaleDownUnneededTime"` - // The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. - ScaleDownUnreadyTime *string `pulumi:"scaleDownUnreadyTime"` - // The default is '0.5'. - ScaleDownUtilizationThreshold *string `pulumi:"scaleDownUtilizationThreshold"` - // The default is '10'. Values must be an integer number of seconds. - ScanInterval *string `pulumi:"scanInterval"` - // The default is true. - SkipNodesWithLocalStorage *string `pulumi:"skipNodesWithLocalStorage"` - // The default is true. - SkipNodesWithSystemPods *string `pulumi:"skipNodesWithSystemPods"` +// A list of public IP resources. +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) PublicIPs() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterLoadBalancerProfileResponseOutboundIPs) []ResourceReferenceResponse { + return v.PublicIPs + }).(ResourceReferenceResponseArrayOutput) } -// Parameters to be applied to the cluster-autoscaler when enabled -type ManagedClusterPropertiesResponseAutoScalerProfileOutput struct{ *pulumi.OutputState } +type ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterPropertiesResponseAutoScalerProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterPropertiesResponseAutoScalerProfile)(nil)).Elem() +func (ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterLoadBalancerProfileResponseOutboundIPs)(nil)).Elem() } -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ToManagedClusterPropertiesResponseAutoScalerProfileOutput() ManagedClusterPropertiesResponseAutoScalerProfileOutput { +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput() ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { return o } -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ToManagedClusterPropertiesResponseAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterPropertiesResponseAutoScalerProfileOutput { +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) ToManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutputWithContext(ctx context.Context) ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput { return o } -// Valid values are 'true' and 'false' -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.BalanceSimilarNodeGroups }).(pulumi.StringPtrOutput) +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) Elem() ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPs) ManagedClusterLoadBalancerProfileResponseOutboundIPs { + if v != nil { + return *v + } + var ret ManagedClusterLoadBalancerProfileResponseOutboundIPs + return ret + }).(ManagedClusterLoadBalancerProfileResponseOutboundIPsOutput) } -// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) Expander() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.Expander }).(pulumi.StringPtrOutput) +// A list of public IP resources. +func (o ManagedClusterLoadBalancerProfileResponseOutboundIPsPtrOutput) PublicIPs() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterLoadBalancerProfileResponseOutboundIPs) []ResourceReferenceResponse { + if v == nil { + return nil + } + return v.PublicIPs + }).(ResourceReferenceResponseArrayOutput) } -// The default is 10. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxEmptyBulkDelete }).(pulumi.StringPtrOutput) +// Profile of the managed outbound IP resources of the managed cluster. +type ManagedClusterManagedOutboundIPProfile struct { + // The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. + Count *int `pulumi:"count"` } -// The default is 600. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxGracefulTerminationSec }).(pulumi.StringPtrOutput) +// Defaults sets the appropriate defaults for ManagedClusterManagedOutboundIPProfile +func (val *ManagedClusterManagedOutboundIPProfile) Defaults() *ManagedClusterManagedOutboundIPProfile { + if val == nil { + return nil + } + tmp := *val + if tmp.Count == nil { + count_ := 1 + tmp.Count = &count_ + } + return &tmp } -// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxNodeProvisionTime }).(pulumi.StringPtrOutput) -} +// ManagedClusterManagedOutboundIPProfileInput is an input type that accepts ManagedClusterManagedOutboundIPProfileArgs and ManagedClusterManagedOutboundIPProfileOutput values. +// You can construct a concrete instance of `ManagedClusterManagedOutboundIPProfileInput` via: +// +// ManagedClusterManagedOutboundIPProfileArgs{...} +type ManagedClusterManagedOutboundIPProfileInput interface { + pulumi.Input -// The default is 45. The maximum is 100 and the minimum is 0. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxTotalUnreadyPercentage }).(pulumi.StringPtrOutput) + ToManagedClusterManagedOutboundIPProfileOutput() ManagedClusterManagedOutboundIPProfileOutput + ToManagedClusterManagedOutboundIPProfileOutputWithContext(context.Context) ManagedClusterManagedOutboundIPProfileOutput } -// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.NewPodScaleUpDelay }).(pulumi.StringPtrOutput) +// Profile of the managed outbound IP resources of the managed cluster. +type ManagedClusterManagedOutboundIPProfileArgs struct { + // The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. + Count pulumi.IntPtrInput `pulumi:"count"` } -// This must be an integer. The default is 3. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.OkTotalUnreadyCount }).(pulumi.StringPtrOutput) +// Defaults sets the appropriate defaults for ManagedClusterManagedOutboundIPProfileArgs +func (val *ManagedClusterManagedOutboundIPProfileArgs) Defaults() *ManagedClusterManagedOutboundIPProfileArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.Count == nil { + tmp.Count = pulumi.IntPtr(1) + } + return &tmp +} +func (ManagedClusterManagedOutboundIPProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterManagedOutboundIPProfile)(nil)).Elem() } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownDelayAfterAdd }).(pulumi.StringPtrOutput) +func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfileOutput() ManagedClusterManagedOutboundIPProfileOutput { + return i.ToManagedClusterManagedOutboundIPProfileOutputWithContext(context.Background()) } -// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownDelayAfterDelete }).(pulumi.StringPtrOutput) +func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfileOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterManagedOutboundIPProfileOutput) } -// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownDelayAfterFailure }).(pulumi.StringPtrOutput) +func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { + return i.ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Background()) } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownUnneededTime }).(pulumi.StringPtrOutput) +func (i ManagedClusterManagedOutboundIPProfileArgs) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterManagedOutboundIPProfileOutput).ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx) } -// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownUnreadyTime }).(pulumi.StringPtrOutput) +// ManagedClusterManagedOutboundIPProfilePtrInput is an input type that accepts ManagedClusterManagedOutboundIPProfileArgs, ManagedClusterManagedOutboundIPProfilePtr and ManagedClusterManagedOutboundIPProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterManagedOutboundIPProfilePtrInput` via: +// +// ManagedClusterManagedOutboundIPProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterManagedOutboundIPProfilePtrInput interface { + pulumi.Input + + ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput + ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput } -// The default is '0.5'. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { - return v.ScaleDownUtilizationThreshold - }).(pulumi.StringPtrOutput) +type managedClusterManagedOutboundIPProfilePtrType ManagedClusterManagedOutboundIPProfileArgs + +func ManagedClusterManagedOutboundIPProfilePtr(v *ManagedClusterManagedOutboundIPProfileArgs) ManagedClusterManagedOutboundIPProfilePtrInput { + return (*managedClusterManagedOutboundIPProfilePtrType)(v) } -// The default is '10'. Values must be an integer number of seconds. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScanInterval() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScanInterval }).(pulumi.StringPtrOutput) +func (*managedClusterManagedOutboundIPProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterManagedOutboundIPProfile)(nil)).Elem() } -// The default is true. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.SkipNodesWithLocalStorage }).(pulumi.StringPtrOutput) +func (i *managedClusterManagedOutboundIPProfilePtrType) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { + return i.ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Background()) } -// The default is true. -func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.SkipNodesWithSystemPods }).(pulumi.StringPtrOutput) +func (i *managedClusterManagedOutboundIPProfilePtrType) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterManagedOutboundIPProfilePtrOutput) } -type ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput struct{ *pulumi.OutputState } +// Profile of the managed outbound IP resources of the managed cluster. +type ManagedClusterManagedOutboundIPProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterPropertiesResponseAutoScalerProfile)(nil)).Elem() +func (ManagedClusterManagedOutboundIPProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterManagedOutboundIPProfile)(nil)).Elem() } -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ToManagedClusterPropertiesResponseAutoScalerProfilePtrOutput() ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput { +func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfileOutput() ManagedClusterManagedOutboundIPProfileOutput { return o } -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ToManagedClusterPropertiesResponseAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput { +func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfileOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileOutput { return o } -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) Elem() ManagedClusterPropertiesResponseAutoScalerProfileOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) ManagedClusterPropertiesResponseAutoScalerProfile { - if v != nil { - return *v - } - var ret ManagedClusterPropertiesResponseAutoScalerProfile - return ret - }).(ManagedClusterPropertiesResponseAutoScalerProfileOutput) +func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { + return o.ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(context.Background()) } -// Valid values are 'true' and 'false' -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.BalanceSimilarNodeGroups - }).(pulumi.StringPtrOutput) +func (o ManagedClusterManagedOutboundIPProfileOutput) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterManagedOutboundIPProfile) *ManagedClusterManagedOutboundIPProfile { + return &v + }).(ManagedClusterManagedOutboundIPProfilePtrOutput) } -// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) Expander() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.Expander - }).(pulumi.StringPtrOutput) +// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. +func (o ManagedClusterManagedOutboundIPProfileOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterManagedOutboundIPProfile) *int { return v.Count }).(pulumi.IntPtrOutput) } -// The default is 10. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.MaxEmptyBulkDelete - }).(pulumi.StringPtrOutput) +type ManagedClusterManagedOutboundIPProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterManagedOutboundIPProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterManagedOutboundIPProfile)(nil)).Elem() } -// The default is 600. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.MaxGracefulTerminationSec - }).(pulumi.StringPtrOutput) +func (o ManagedClusterManagedOutboundIPProfilePtrOutput) ToManagedClusterManagedOutboundIPProfilePtrOutput() ManagedClusterManagedOutboundIPProfilePtrOutput { + return o } -// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.MaxNodeProvisionTime - }).(pulumi.StringPtrOutput) +func (o ManagedClusterManagedOutboundIPProfilePtrOutput) ToManagedClusterManagedOutboundIPProfilePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfilePtrOutput { + return o } -// The default is 45. The maximum is 100 and the minimum is 0. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil +func (o ManagedClusterManagedOutboundIPProfilePtrOutput) Elem() ManagedClusterManagedOutboundIPProfileOutput { + return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfile) ManagedClusterManagedOutboundIPProfile { + if v != nil { + return *v } - return v.MaxTotalUnreadyPercentage - }).(pulumi.StringPtrOutput) + var ret ManagedClusterManagedOutboundIPProfile + return ret + }).(ManagedClusterManagedOutboundIPProfileOutput) } -// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { +// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. +func (o ManagedClusterManagedOutboundIPProfilePtrOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfile) *int { if v == nil { return nil } - return v.NewPodScaleUpDelay - }).(pulumi.StringPtrOutput) + return v.Count + }).(pulumi.IntPtrOutput) } -// This must be an integer. The default is 3. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.OkTotalUnreadyCount - }).(pulumi.StringPtrOutput) +// Profile of the managed outbound IP resources of the managed cluster. +type ManagedClusterManagedOutboundIPProfileResponse struct { + // The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. + Count *int `pulumi:"count"` } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownDelayAfterAdd - }).(pulumi.StringPtrOutput) +// Defaults sets the appropriate defaults for ManagedClusterManagedOutboundIPProfileResponse +func (val *ManagedClusterManagedOutboundIPProfileResponse) Defaults() *ManagedClusterManagedOutboundIPProfileResponse { + if val == nil { + return nil + } + tmp := *val + if tmp.Count == nil { + count_ := 1 + tmp.Count = &count_ + } + return &tmp } -// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownDelayAfterDelete - }).(pulumi.StringPtrOutput) +// Profile of the managed outbound IP resources of the managed cluster. +type ManagedClusterManagedOutboundIPProfileResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterManagedOutboundIPProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterManagedOutboundIPProfileResponse)(nil)).Elem() } -// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownDelayAfterFailure - }).(pulumi.StringPtrOutput) +func (o ManagedClusterManagedOutboundIPProfileResponseOutput) ToManagedClusterManagedOutboundIPProfileResponseOutput() ManagedClusterManagedOutboundIPProfileResponseOutput { + return o } -// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownUnneededTime - }).(pulumi.StringPtrOutput) +func (o ManagedClusterManagedOutboundIPProfileResponseOutput) ToManagedClusterManagedOutboundIPProfileResponseOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileResponseOutput { + return o } -// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownUnreadyTime - }).(pulumi.StringPtrOutput) +// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. +func (o ManagedClusterManagedOutboundIPProfileResponseOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterManagedOutboundIPProfileResponse) *int { return v.Count }).(pulumi.IntPtrOutput) } -// The default is '0.5'. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScaleDownUtilizationThreshold - }).(pulumi.StringPtrOutput) +type ManagedClusterManagedOutboundIPProfileResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterManagedOutboundIPProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterManagedOutboundIPProfileResponse)(nil)).Elem() } -// The default is '10'. Values must be an integer number of seconds. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScanInterval() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil - } - return v.ScanInterval - }).(pulumi.StringPtrOutput) +func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) ToManagedClusterManagedOutboundIPProfileResponsePtrOutput() ManagedClusterManagedOutboundIPProfileResponsePtrOutput { + return o } -// The default is true. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { - if v == nil { - return nil +func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) ToManagedClusterManagedOutboundIPProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterManagedOutboundIPProfileResponsePtrOutput { + return o +} + +func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) Elem() ManagedClusterManagedOutboundIPProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfileResponse) ManagedClusterManagedOutboundIPProfileResponse { + if v != nil { + return *v } - return v.SkipNodesWithLocalStorage - }).(pulumi.StringPtrOutput) + var ret ManagedClusterManagedOutboundIPProfileResponse + return ret + }).(ManagedClusterManagedOutboundIPProfileResponseOutput) } -// The default is true. -func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { +// The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. +func (o ManagedClusterManagedOutboundIPProfileResponsePtrOutput) Count() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterManagedOutboundIPProfileResponse) *int { if v == nil { return nil } - return v.SkipNodesWithSystemPods - }).(pulumi.StringPtrOutput) + return v.Count + }).(pulumi.IntPtrOutput) } -// The SKU of a Managed Cluster. -type ManagedClusterSKU struct { - // The name of a managed cluster SKU. - Name *string `pulumi:"name"` - // If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. - Tier *string `pulumi:"tier"` +// The metrics profile for the ManagedCluster. +type ManagedClusterMetricsProfile struct { + // The cost analysis configuration for the cluster + CostAnalysis *ManagedClusterCostAnalysis `pulumi:"costAnalysis"` } -// ManagedClusterSKUInput is an input type that accepts ManagedClusterSKUArgs and ManagedClusterSKUOutput values. -// You can construct a concrete instance of `ManagedClusterSKUInput` via: +// ManagedClusterMetricsProfileInput is an input type that accepts ManagedClusterMetricsProfileArgs and ManagedClusterMetricsProfileOutput values. +// You can construct a concrete instance of `ManagedClusterMetricsProfileInput` via: // -// ManagedClusterSKUArgs{...} -type ManagedClusterSKUInput interface { +// ManagedClusterMetricsProfileArgs{...} +type ManagedClusterMetricsProfileInput interface { pulumi.Input - ToManagedClusterSKUOutput() ManagedClusterSKUOutput - ToManagedClusterSKUOutputWithContext(context.Context) ManagedClusterSKUOutput + ToManagedClusterMetricsProfileOutput() ManagedClusterMetricsProfileOutput + ToManagedClusterMetricsProfileOutputWithContext(context.Context) ManagedClusterMetricsProfileOutput } -// The SKU of a Managed Cluster. -type ManagedClusterSKUArgs struct { - // The name of a managed cluster SKU. - Name pulumi.StringPtrInput `pulumi:"name"` - // If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. - Tier pulumi.StringPtrInput `pulumi:"tier"` +// The metrics profile for the ManagedCluster. +type ManagedClusterMetricsProfileArgs struct { + // The cost analysis configuration for the cluster + CostAnalysis ManagedClusterCostAnalysisPtrInput `pulumi:"costAnalysis"` } -func (ManagedClusterSKUArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSKU)(nil)).Elem() +func (ManagedClusterMetricsProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterMetricsProfile)(nil)).Elem() } -func (i ManagedClusterSKUArgs) ToManagedClusterSKUOutput() ManagedClusterSKUOutput { - return i.ToManagedClusterSKUOutputWithContext(context.Background()) +func (i ManagedClusterMetricsProfileArgs) ToManagedClusterMetricsProfileOutput() ManagedClusterMetricsProfileOutput { + return i.ToManagedClusterMetricsProfileOutputWithContext(context.Background()) } -func (i ManagedClusterSKUArgs) ToManagedClusterSKUOutputWithContext(ctx context.Context) ManagedClusterSKUOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSKUOutput) +func (i ManagedClusterMetricsProfileArgs) ToManagedClusterMetricsProfileOutputWithContext(ctx context.Context) ManagedClusterMetricsProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterMetricsProfileOutput) } -func (i ManagedClusterSKUArgs) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { - return i.ToManagedClusterSKUPtrOutputWithContext(context.Background()) +func (i ManagedClusterMetricsProfileArgs) ToManagedClusterMetricsProfilePtrOutput() ManagedClusterMetricsProfilePtrOutput { + return i.ToManagedClusterMetricsProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterSKUArgs) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSKUOutput).ToManagedClusterSKUPtrOutputWithContext(ctx) +func (i ManagedClusterMetricsProfileArgs) ToManagedClusterMetricsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterMetricsProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterMetricsProfileOutput).ToManagedClusterMetricsProfilePtrOutputWithContext(ctx) } -// ManagedClusterSKUPtrInput is an input type that accepts ManagedClusterSKUArgs, ManagedClusterSKUPtr and ManagedClusterSKUPtrOutput values. -// You can construct a concrete instance of `ManagedClusterSKUPtrInput` via: +// ManagedClusterMetricsProfilePtrInput is an input type that accepts ManagedClusterMetricsProfileArgs, ManagedClusterMetricsProfilePtr and ManagedClusterMetricsProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterMetricsProfilePtrInput` via: // -// ManagedClusterSKUArgs{...} +// ManagedClusterMetricsProfileArgs{...} // // or: // // nil -type ManagedClusterSKUPtrInput interface { +type ManagedClusterMetricsProfilePtrInput interface { pulumi.Input - ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput - ToManagedClusterSKUPtrOutputWithContext(context.Context) ManagedClusterSKUPtrOutput + ToManagedClusterMetricsProfilePtrOutput() ManagedClusterMetricsProfilePtrOutput + ToManagedClusterMetricsProfilePtrOutputWithContext(context.Context) ManagedClusterMetricsProfilePtrOutput } -type managedClusterSKUPtrType ManagedClusterSKUArgs +type managedClusterMetricsProfilePtrType ManagedClusterMetricsProfileArgs -func ManagedClusterSKUPtr(v *ManagedClusterSKUArgs) ManagedClusterSKUPtrInput { - return (*managedClusterSKUPtrType)(v) +func ManagedClusterMetricsProfilePtr(v *ManagedClusterMetricsProfileArgs) ManagedClusterMetricsProfilePtrInput { + return (*managedClusterMetricsProfilePtrType)(v) } -func (*managedClusterSKUPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSKU)(nil)).Elem() +func (*managedClusterMetricsProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterMetricsProfile)(nil)).Elem() } -func (i *managedClusterSKUPtrType) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { - return i.ToManagedClusterSKUPtrOutputWithContext(context.Background()) +func (i *managedClusterMetricsProfilePtrType) ToManagedClusterMetricsProfilePtrOutput() ManagedClusterMetricsProfilePtrOutput { + return i.ToManagedClusterMetricsProfilePtrOutputWithContext(context.Background()) } -func (i *managedClusterSKUPtrType) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSKUPtrOutput) +func (i *managedClusterMetricsProfilePtrType) ToManagedClusterMetricsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterMetricsProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterMetricsProfilePtrOutput) } -// The SKU of a Managed Cluster. -type ManagedClusterSKUOutput struct{ *pulumi.OutputState } +// The metrics profile for the ManagedCluster. +type ManagedClusterMetricsProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterSKUOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSKU)(nil)).Elem() +func (ManagedClusterMetricsProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterMetricsProfile)(nil)).Elem() } -func (o ManagedClusterSKUOutput) ToManagedClusterSKUOutput() ManagedClusterSKUOutput { +func (o ManagedClusterMetricsProfileOutput) ToManagedClusterMetricsProfileOutput() ManagedClusterMetricsProfileOutput { return o } -func (o ManagedClusterSKUOutput) ToManagedClusterSKUOutputWithContext(ctx context.Context) ManagedClusterSKUOutput { +func (o ManagedClusterMetricsProfileOutput) ToManagedClusterMetricsProfileOutputWithContext(ctx context.Context) ManagedClusterMetricsProfileOutput { return o } -func (o ManagedClusterSKUOutput) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { - return o.ToManagedClusterSKUPtrOutputWithContext(context.Background()) +func (o ManagedClusterMetricsProfileOutput) ToManagedClusterMetricsProfilePtrOutput() ManagedClusterMetricsProfilePtrOutput { + return o.ToManagedClusterMetricsProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterSKUOutput) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSKU) *ManagedClusterSKU { +func (o ManagedClusterMetricsProfileOutput) ToManagedClusterMetricsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterMetricsProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterMetricsProfile) *ManagedClusterMetricsProfile { return &v - }).(ManagedClusterSKUPtrOutput) -} - -// The name of a managed cluster SKU. -func (o ManagedClusterSKUOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterSKU) *string { return v.Name }).(pulumi.StringPtrOutput) + }).(ManagedClusterMetricsProfilePtrOutput) } -// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. -func (o ManagedClusterSKUOutput) Tier() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterSKU) *string { return v.Tier }).(pulumi.StringPtrOutput) +// The cost analysis configuration for the cluster +func (o ManagedClusterMetricsProfileOutput) CostAnalysis() ManagedClusterCostAnalysisPtrOutput { + return o.ApplyT(func(v ManagedClusterMetricsProfile) *ManagedClusterCostAnalysis { return v.CostAnalysis }).(ManagedClusterCostAnalysisPtrOutput) } -type ManagedClusterSKUPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterMetricsProfilePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterSKUPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSKU)(nil)).Elem() +func (ManagedClusterMetricsProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterMetricsProfile)(nil)).Elem() } -func (o ManagedClusterSKUPtrOutput) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { +func (o ManagedClusterMetricsProfilePtrOutput) ToManagedClusterMetricsProfilePtrOutput() ManagedClusterMetricsProfilePtrOutput { return o } -func (o ManagedClusterSKUPtrOutput) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { +func (o ManagedClusterMetricsProfilePtrOutput) ToManagedClusterMetricsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterMetricsProfilePtrOutput { return o } -func (o ManagedClusterSKUPtrOutput) Elem() ManagedClusterSKUOutput { - return o.ApplyT(func(v *ManagedClusterSKU) ManagedClusterSKU { +func (o ManagedClusterMetricsProfilePtrOutput) Elem() ManagedClusterMetricsProfileOutput { + return o.ApplyT(func(v *ManagedClusterMetricsProfile) ManagedClusterMetricsProfile { if v != nil { return *v } - var ret ManagedClusterSKU + var ret ManagedClusterMetricsProfile return ret - }).(ManagedClusterSKUOutput) + }).(ManagedClusterMetricsProfileOutput) } -// The name of a managed cluster SKU. -func (o ManagedClusterSKUPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSKU) *string { - if v == nil { - return nil - } - return v.Name - }).(pulumi.StringPtrOutput) -} - -// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. -func (o ManagedClusterSKUPtrOutput) Tier() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSKU) *string { +// The cost analysis configuration for the cluster +func (o ManagedClusterMetricsProfilePtrOutput) CostAnalysis() ManagedClusterCostAnalysisPtrOutput { + return o.ApplyT(func(v *ManagedClusterMetricsProfile) *ManagedClusterCostAnalysis { if v == nil { return nil - } - return v.Tier - }).(pulumi.StringPtrOutput) + } + return v.CostAnalysis + }).(ManagedClusterCostAnalysisPtrOutput) } -// The SKU of a Managed Cluster. -type ManagedClusterSKUResponse struct { - // The name of a managed cluster SKU. - Name *string `pulumi:"name"` - // If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. - Tier *string `pulumi:"tier"` +// The metrics profile for the ManagedCluster. +type ManagedClusterMetricsProfileResponse struct { + // The cost analysis configuration for the cluster + CostAnalysis *ManagedClusterCostAnalysisResponse `pulumi:"costAnalysis"` } -// The SKU of a Managed Cluster. -type ManagedClusterSKUResponseOutput struct{ *pulumi.OutputState } +// The metrics profile for the ManagedCluster. +type ManagedClusterMetricsProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterSKUResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSKUResponse)(nil)).Elem() +func (ManagedClusterMetricsProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterMetricsProfileResponse)(nil)).Elem() } -func (o ManagedClusterSKUResponseOutput) ToManagedClusterSKUResponseOutput() ManagedClusterSKUResponseOutput { +func (o ManagedClusterMetricsProfileResponseOutput) ToManagedClusterMetricsProfileResponseOutput() ManagedClusterMetricsProfileResponseOutput { return o } -func (o ManagedClusterSKUResponseOutput) ToManagedClusterSKUResponseOutputWithContext(ctx context.Context) ManagedClusterSKUResponseOutput { +func (o ManagedClusterMetricsProfileResponseOutput) ToManagedClusterMetricsProfileResponseOutputWithContext(ctx context.Context) ManagedClusterMetricsProfileResponseOutput { return o } -// The name of a managed cluster SKU. -func (o ManagedClusterSKUResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterSKUResponse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. -func (o ManagedClusterSKUResponseOutput) Tier() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterSKUResponse) *string { return v.Tier }).(pulumi.StringPtrOutput) +// The cost analysis configuration for the cluster +func (o ManagedClusterMetricsProfileResponseOutput) CostAnalysis() ManagedClusterCostAnalysisResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterMetricsProfileResponse) *ManagedClusterCostAnalysisResponse { + return v.CostAnalysis + }).(ManagedClusterCostAnalysisResponsePtrOutput) } -type ManagedClusterSKUResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterMetricsProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterSKUResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSKUResponse)(nil)).Elem() +func (ManagedClusterMetricsProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterMetricsProfileResponse)(nil)).Elem() } -func (o ManagedClusterSKUResponsePtrOutput) ToManagedClusterSKUResponsePtrOutput() ManagedClusterSKUResponsePtrOutput { +func (o ManagedClusterMetricsProfileResponsePtrOutput) ToManagedClusterMetricsProfileResponsePtrOutput() ManagedClusterMetricsProfileResponsePtrOutput { return o } -func (o ManagedClusterSKUResponsePtrOutput) ToManagedClusterSKUResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSKUResponsePtrOutput { +func (o ManagedClusterMetricsProfileResponsePtrOutput) ToManagedClusterMetricsProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterMetricsProfileResponsePtrOutput { return o } -func (o ManagedClusterSKUResponsePtrOutput) Elem() ManagedClusterSKUResponseOutput { - return o.ApplyT(func(v *ManagedClusterSKUResponse) ManagedClusterSKUResponse { +func (o ManagedClusterMetricsProfileResponsePtrOutput) Elem() ManagedClusterMetricsProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterMetricsProfileResponse) ManagedClusterMetricsProfileResponse { if v != nil { return *v } - var ret ManagedClusterSKUResponse + var ret ManagedClusterMetricsProfileResponse return ret - }).(ManagedClusterSKUResponseOutput) -} - -// The name of a managed cluster SKU. -func (o ManagedClusterSKUResponsePtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSKUResponse) *string { - if v == nil { - return nil - } - return v.Name - }).(pulumi.StringPtrOutput) + }).(ManagedClusterMetricsProfileResponseOutput) } -// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. -func (o ManagedClusterSKUResponsePtrOutput) Tier() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSKUResponse) *string { +// The cost analysis configuration for the cluster +func (o ManagedClusterMetricsProfileResponsePtrOutput) CostAnalysis() ManagedClusterCostAnalysisResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterMetricsProfileResponse) *ManagedClusterCostAnalysisResponse { if v == nil { return nil } - return v.Tier - }).(pulumi.StringPtrOutput) + return v.CostAnalysis + }).(ManagedClusterCostAnalysisResponsePtrOutput) } -// Security profile for the container service cluster. -type ManagedClusterSecurityProfile struct { - // Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. - AzureKeyVaultKms *AzureKeyVaultKms `pulumi:"azureKeyVaultKms"` - // Microsoft Defender settings for the security profile. - Defender *ManagedClusterSecurityProfileDefender `pulumi:"defender"` - // Image Cleaner settings for the security profile. - ImageCleaner *ManagedClusterSecurityProfileImageCleaner `pulumi:"imageCleaner"` - // Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. - WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentity `pulumi:"workloadIdentity"` +// Profile of the managed cluster NAT gateway. +type ManagedClusterNATGatewayProfile struct { + // The effective outbound IP resources of the cluster NAT gateway. + EffectiveOutboundIPs []ResourceReference `pulumi:"effectiveOutboundIPs"` + // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. + IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` + // Profile of the managed outbound IP resources of the cluster NAT gateway. + ManagedOutboundIPProfile *ManagedClusterManagedOutboundIPProfile `pulumi:"managedOutboundIPProfile"` } -// Defaults sets the appropriate defaults for ManagedClusterSecurityProfile -func (val *ManagedClusterSecurityProfile) Defaults() *ManagedClusterSecurityProfile { +// Defaults sets the appropriate defaults for ManagedClusterNATGatewayProfile +func (val *ManagedClusterNATGatewayProfile) Defaults() *ManagedClusterNATGatewayProfile { if val == nil { return nil } tmp := *val - tmp.AzureKeyVaultKms = tmp.AzureKeyVaultKms.Defaults() + if tmp.IdleTimeoutInMinutes == nil { + idleTimeoutInMinutes_ := 4 + tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ + } + tmp.ManagedOutboundIPProfile = tmp.ManagedOutboundIPProfile.Defaults() return &tmp } -// ManagedClusterSecurityProfileInput is an input type that accepts ManagedClusterSecurityProfileArgs and ManagedClusterSecurityProfileOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileInput` via: +// ManagedClusterNATGatewayProfileInput is an input type that accepts ManagedClusterNATGatewayProfileArgs and ManagedClusterNATGatewayProfileOutput values. +// You can construct a concrete instance of `ManagedClusterNATGatewayProfileInput` via: // -// ManagedClusterSecurityProfileArgs{...} -type ManagedClusterSecurityProfileInput interface { +// ManagedClusterNATGatewayProfileArgs{...} +type ManagedClusterNATGatewayProfileInput interface { pulumi.Input - ToManagedClusterSecurityProfileOutput() ManagedClusterSecurityProfileOutput - ToManagedClusterSecurityProfileOutputWithContext(context.Context) ManagedClusterSecurityProfileOutput + ToManagedClusterNATGatewayProfileOutput() ManagedClusterNATGatewayProfileOutput + ToManagedClusterNATGatewayProfileOutputWithContext(context.Context) ManagedClusterNATGatewayProfileOutput } -// Security profile for the container service cluster. -type ManagedClusterSecurityProfileArgs struct { - // Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. - AzureKeyVaultKms AzureKeyVaultKmsPtrInput `pulumi:"azureKeyVaultKms"` - // Microsoft Defender settings for the security profile. - Defender ManagedClusterSecurityProfileDefenderPtrInput `pulumi:"defender"` - // Image Cleaner settings for the security profile. - ImageCleaner ManagedClusterSecurityProfileImageCleanerPtrInput `pulumi:"imageCleaner"` - // Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. - WorkloadIdentity ManagedClusterSecurityProfileWorkloadIdentityPtrInput `pulumi:"workloadIdentity"` +// Profile of the managed cluster NAT gateway. +type ManagedClusterNATGatewayProfileArgs struct { + // The effective outbound IP resources of the cluster NAT gateway. + EffectiveOutboundIPs ResourceReferenceArrayInput `pulumi:"effectiveOutboundIPs"` + // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. + IdleTimeoutInMinutes pulumi.IntPtrInput `pulumi:"idleTimeoutInMinutes"` + // Profile of the managed outbound IP resources of the cluster NAT gateway. + ManagedOutboundIPProfile ManagedClusterManagedOutboundIPProfilePtrInput `pulumi:"managedOutboundIPProfile"` } -// Defaults sets the appropriate defaults for ManagedClusterSecurityProfileArgs -func (val *ManagedClusterSecurityProfileArgs) Defaults() *ManagedClusterSecurityProfileArgs { +// Defaults sets the appropriate defaults for ManagedClusterNATGatewayProfileArgs +func (val *ManagedClusterNATGatewayProfileArgs) Defaults() *ManagedClusterNATGatewayProfileArgs { if val == nil { return nil } tmp := *val + if tmp.IdleTimeoutInMinutes == nil { + tmp.IdleTimeoutInMinutes = pulumi.IntPtr(4) + } return &tmp } -func (ManagedClusterSecurityProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfile)(nil)).Elem() +func (ManagedClusterNATGatewayProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterNATGatewayProfile)(nil)).Elem() } -func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfileOutput() ManagedClusterSecurityProfileOutput { - return i.ToManagedClusterSecurityProfileOutputWithContext(context.Background()) +func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfileOutput() ManagedClusterNATGatewayProfileOutput { + return i.ToManagedClusterNATGatewayProfileOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfileOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileOutput) +func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfileOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterNATGatewayProfileOutput) } -func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { - return i.ToManagedClusterSecurityProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { + return i.ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileOutput).ToManagedClusterSecurityProfilePtrOutputWithContext(ctx) +func (i ManagedClusterNATGatewayProfileArgs) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterNATGatewayProfileOutput).ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx) } -// ManagedClusterSecurityProfilePtrInput is an input type that accepts ManagedClusterSecurityProfileArgs, ManagedClusterSecurityProfilePtr and ManagedClusterSecurityProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfilePtrInput` via: +// ManagedClusterNATGatewayProfilePtrInput is an input type that accepts ManagedClusterNATGatewayProfileArgs, ManagedClusterNATGatewayProfilePtr and ManagedClusterNATGatewayProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterNATGatewayProfilePtrInput` via: // -// ManagedClusterSecurityProfileArgs{...} +// ManagedClusterNATGatewayProfileArgs{...} // // or: // // nil -type ManagedClusterSecurityProfilePtrInput interface { +type ManagedClusterNATGatewayProfilePtrInput interface { pulumi.Input - ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput - ToManagedClusterSecurityProfilePtrOutputWithContext(context.Context) ManagedClusterSecurityProfilePtrOutput + ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput + ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Context) ManagedClusterNATGatewayProfilePtrOutput } -type managedClusterSecurityProfilePtrType ManagedClusterSecurityProfileArgs +type managedClusterNATGatewayProfilePtrType ManagedClusterNATGatewayProfileArgs -func ManagedClusterSecurityProfilePtr(v *ManagedClusterSecurityProfileArgs) ManagedClusterSecurityProfilePtrInput { - return (*managedClusterSecurityProfilePtrType)(v) +func ManagedClusterNATGatewayProfilePtr(v *ManagedClusterNATGatewayProfileArgs) ManagedClusterNATGatewayProfilePtrInput { + return (*managedClusterNATGatewayProfilePtrType)(v) } -func (*managedClusterSecurityProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfile)(nil)).Elem() +func (*managedClusterNATGatewayProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterNATGatewayProfile)(nil)).Elem() } -func (i *managedClusterSecurityProfilePtrType) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { - return i.ToManagedClusterSecurityProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterNATGatewayProfilePtrType) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { + return i.ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Background()) +} + +func (i *managedClusterNATGatewayProfilePtrType) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterNATGatewayProfilePtrOutput) +} + +// Profile of the managed cluster NAT gateway. +type ManagedClusterNATGatewayProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterNATGatewayProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterNATGatewayProfile)(nil)).Elem() +} + +func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfileOutput() ManagedClusterNATGatewayProfileOutput { + return o +} + +func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfileOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileOutput { + return o +} + +func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { + return o.ToManagedClusterNATGatewayProfilePtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterNATGatewayProfileOutput) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterNATGatewayProfile) *ManagedClusterNATGatewayProfile { + return &v + }).(ManagedClusterNATGatewayProfilePtrOutput) +} + +// The effective outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfileOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { + return o.ApplyT(func(v ManagedClusterNATGatewayProfile) []ResourceReference { return v.EffectiveOutboundIPs }).(ResourceReferenceArrayOutput) +} + +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. +func (o ManagedClusterNATGatewayProfileOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterNATGatewayProfile) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) +} + +// Profile of the managed outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfileOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfilePtrOutput { + return o.ApplyT(func(v ManagedClusterNATGatewayProfile) *ManagedClusterManagedOutboundIPProfile { + return v.ManagedOutboundIPProfile + }).(ManagedClusterManagedOutboundIPProfilePtrOutput) +} + +type ManagedClusterNATGatewayProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterNATGatewayProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterNATGatewayProfile)(nil)).Elem() +} + +func (o ManagedClusterNATGatewayProfilePtrOutput) ToManagedClusterNATGatewayProfilePtrOutput() ManagedClusterNATGatewayProfilePtrOutput { + return o +} + +func (o ManagedClusterNATGatewayProfilePtrOutput) ToManagedClusterNATGatewayProfilePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfilePtrOutput { + return o +} + +func (o ManagedClusterNATGatewayProfilePtrOutput) Elem() ManagedClusterNATGatewayProfileOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) ManagedClusterNATGatewayProfile { + if v != nil { + return *v + } + var ret ManagedClusterNATGatewayProfile + return ret + }).(ManagedClusterNATGatewayProfileOutput) +} + +// The effective outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfilePtrOutput) EffectiveOutboundIPs() ResourceReferenceArrayOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) []ResourceReference { + if v == nil { + return nil + } + return v.EffectiveOutboundIPs + }).(ResourceReferenceArrayOutput) +} + +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. +func (o ManagedClusterNATGatewayProfilePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) *int { + if v == nil { + return nil + } + return v.IdleTimeoutInMinutes + }).(pulumi.IntPtrOutput) +} + +// Profile of the managed outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfilePtrOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfilePtrOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfile) *ManagedClusterManagedOutboundIPProfile { + if v == nil { + return nil + } + return v.ManagedOutboundIPProfile + }).(ManagedClusterManagedOutboundIPProfilePtrOutput) } -func (i *managedClusterSecurityProfilePtrType) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfilePtrOutput) +// Profile of the managed cluster NAT gateway. +type ManagedClusterNATGatewayProfileResponse struct { + // The effective outbound IP resources of the cluster NAT gateway. + EffectiveOutboundIPs []ResourceReferenceResponse `pulumi:"effectiveOutboundIPs"` + // Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. + IdleTimeoutInMinutes *int `pulumi:"idleTimeoutInMinutes"` + // Profile of the managed outbound IP resources of the cluster NAT gateway. + ManagedOutboundIPProfile *ManagedClusterManagedOutboundIPProfileResponse `pulumi:"managedOutboundIPProfile"` } -// Security profile for the container service cluster. -type ManagedClusterSecurityProfileOutput struct{ *pulumi.OutputState } - -func (ManagedClusterSecurityProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfile)(nil)).Elem() -} +// Defaults sets the appropriate defaults for ManagedClusterNATGatewayProfileResponse +func (val *ManagedClusterNATGatewayProfileResponse) Defaults() *ManagedClusterNATGatewayProfileResponse { + if val == nil { + return nil + } + tmp := *val + if tmp.IdleTimeoutInMinutes == nil { + idleTimeoutInMinutes_ := 4 + tmp.IdleTimeoutInMinutes = &idleTimeoutInMinutes_ + } + tmp.ManagedOutboundIPProfile = tmp.ManagedOutboundIPProfile.Defaults() -func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfileOutput() ManagedClusterSecurityProfileOutput { - return o + return &tmp } -func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfileOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileOutput { - return o -} +// Profile of the managed cluster NAT gateway. +type ManagedClusterNATGatewayProfileResponseOutput struct{ *pulumi.OutputState } -func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { - return o.ToManagedClusterSecurityProfilePtrOutputWithContext(context.Background()) +func (ManagedClusterNATGatewayProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterNATGatewayProfileResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfile { - return &v - }).(ManagedClusterSecurityProfilePtrOutput) +func (o ManagedClusterNATGatewayProfileResponseOutput) ToManagedClusterNATGatewayProfileResponseOutput() ManagedClusterNATGatewayProfileResponseOutput { + return o } -// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. -func (o ManagedClusterSecurityProfileOutput) AzureKeyVaultKms() AzureKeyVaultKmsPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfile) *AzureKeyVaultKms { return v.AzureKeyVaultKms }).(AzureKeyVaultKmsPtrOutput) +func (o ManagedClusterNATGatewayProfileResponseOutput) ToManagedClusterNATGatewayProfileResponseOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileResponseOutput { + return o } -// Microsoft Defender settings for the security profile. -func (o ManagedClusterSecurityProfileOutput) Defender() ManagedClusterSecurityProfileDefenderPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileDefender { return v.Defender }).(ManagedClusterSecurityProfileDefenderPtrOutput) +// The effective outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfileResponseOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterNATGatewayProfileResponse) []ResourceReferenceResponse { + return v.EffectiveOutboundIPs + }).(ResourceReferenceResponseArrayOutput) } -// Image Cleaner settings for the security profile. -func (o ManagedClusterSecurityProfileOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileImageCleaner { - return v.ImageCleaner - }).(ManagedClusterSecurityProfileImageCleanerPtrOutput) +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. +func (o ManagedClusterNATGatewayProfileResponseOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterNATGatewayProfileResponse) *int { return v.IdleTimeoutInMinutes }).(pulumi.IntPtrOutput) } -// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. -func (o ManagedClusterSecurityProfileOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileWorkloadIdentity { - return v.WorkloadIdentity - }).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) +// Profile of the managed outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfileResponseOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfileResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterNATGatewayProfileResponse) *ManagedClusterManagedOutboundIPProfileResponse { + return v.ManagedOutboundIPProfile + }).(ManagedClusterManagedOutboundIPProfileResponsePtrOutput) } -type ManagedClusterSecurityProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterNATGatewayProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfile)(nil)).Elem() +func (ManagedClusterNATGatewayProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterNATGatewayProfileResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfilePtrOutput) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { +func (o ManagedClusterNATGatewayProfileResponsePtrOutput) ToManagedClusterNATGatewayProfileResponsePtrOutput() ManagedClusterNATGatewayProfileResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfilePtrOutput) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { +func (o ManagedClusterNATGatewayProfileResponsePtrOutput) ToManagedClusterNATGatewayProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterNATGatewayProfileResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfilePtrOutput) Elem() ManagedClusterSecurityProfileOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfile) ManagedClusterSecurityProfile { +func (o ManagedClusterNATGatewayProfileResponsePtrOutput) Elem() ManagedClusterNATGatewayProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) ManagedClusterNATGatewayProfileResponse { if v != nil { return *v } - var ret ManagedClusterSecurityProfile + var ret ManagedClusterNATGatewayProfileResponse return ret - }).(ManagedClusterSecurityProfileOutput) -} - -// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. -func (o ManagedClusterSecurityProfilePtrOutput) AzureKeyVaultKms() AzureKeyVaultKmsPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfile) *AzureKeyVaultKms { - if v == nil { - return nil - } - return v.AzureKeyVaultKms - }).(AzureKeyVaultKmsPtrOutput) + }).(ManagedClusterNATGatewayProfileResponseOutput) } -// Microsoft Defender settings for the security profile. -func (o ManagedClusterSecurityProfilePtrOutput) Defender() ManagedClusterSecurityProfileDefenderPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileDefender { +// The effective outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfileResponsePtrOutput) EffectiveOutboundIPs() ResourceReferenceResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) []ResourceReferenceResponse { if v == nil { return nil } - return v.Defender - }).(ManagedClusterSecurityProfileDefenderPtrOutput) + return v.EffectiveOutboundIPs + }).(ResourceReferenceResponseArrayOutput) } -// Image Cleaner settings for the security profile. -func (o ManagedClusterSecurityProfilePtrOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileImageCleaner { +// Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes. +func (o ManagedClusterNATGatewayProfileResponsePtrOutput) IdleTimeoutInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) *int { if v == nil { return nil } - return v.ImageCleaner - }).(ManagedClusterSecurityProfileImageCleanerPtrOutput) + return v.IdleTimeoutInMinutes + }).(pulumi.IntPtrOutput) } -// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. -func (o ManagedClusterSecurityProfilePtrOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileWorkloadIdentity { +// Profile of the managed outbound IP resources of the cluster NAT gateway. +func (o ManagedClusterNATGatewayProfileResponsePtrOutput) ManagedOutboundIPProfile() ManagedClusterManagedOutboundIPProfileResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterNATGatewayProfileResponse) *ManagedClusterManagedOutboundIPProfileResponse { if v == nil { return nil } - return v.WorkloadIdentity - }).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) + return v.ManagedOutboundIPProfile + }).(ManagedClusterManagedOutboundIPProfileResponsePtrOutput) } -// Microsoft Defender settings for the security profile. -type ManagedClusterSecurityProfileDefender struct { - // Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. - LogAnalyticsWorkspaceResourceId *string `pulumi:"logAnalyticsWorkspaceResourceId"` - // Microsoft Defender threat detection for Cloud settings for the security profile. - SecurityMonitoring *ManagedClusterSecurityProfileDefenderSecurityMonitoring `pulumi:"securityMonitoring"` +// The OIDC issuer profile of the Managed Cluster. +type ManagedClusterOIDCIssuerProfile struct { + // Whether the OIDC issuer is enabled. + Enabled *bool `pulumi:"enabled"` } -// ManagedClusterSecurityProfileDefenderInput is an input type that accepts ManagedClusterSecurityProfileDefenderArgs and ManagedClusterSecurityProfileDefenderOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderInput` via: +// ManagedClusterOIDCIssuerProfileInput is an input type that accepts ManagedClusterOIDCIssuerProfileArgs and ManagedClusterOIDCIssuerProfileOutput values. +// You can construct a concrete instance of `ManagedClusterOIDCIssuerProfileInput` via: // -// ManagedClusterSecurityProfileDefenderArgs{...} -type ManagedClusterSecurityProfileDefenderInput interface { +// ManagedClusterOIDCIssuerProfileArgs{...} +type ManagedClusterOIDCIssuerProfileInput interface { pulumi.Input - ToManagedClusterSecurityProfileDefenderOutput() ManagedClusterSecurityProfileDefenderOutput - ToManagedClusterSecurityProfileDefenderOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderOutput + ToManagedClusterOIDCIssuerProfileOutput() ManagedClusterOIDCIssuerProfileOutput + ToManagedClusterOIDCIssuerProfileOutputWithContext(context.Context) ManagedClusterOIDCIssuerProfileOutput } -// Microsoft Defender settings for the security profile. -type ManagedClusterSecurityProfileDefenderArgs struct { - // Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. - LogAnalyticsWorkspaceResourceId pulumi.StringPtrInput `pulumi:"logAnalyticsWorkspaceResourceId"` - // Microsoft Defender threat detection for Cloud settings for the security profile. - SecurityMonitoring ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput `pulumi:"securityMonitoring"` +// The OIDC issuer profile of the Managed Cluster. +type ManagedClusterOIDCIssuerProfileArgs struct { + // Whether the OIDC issuer is enabled. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -func (ManagedClusterSecurityProfileDefenderArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileDefender)(nil)).Elem() +func (ManagedClusterOIDCIssuerProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterOIDCIssuerProfile)(nil)).Elem() } -func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderOutput() ManagedClusterSecurityProfileDefenderOutput { - return i.ToManagedClusterSecurityProfileDefenderOutputWithContext(context.Background()) +func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfileOutput() ManagedClusterOIDCIssuerProfileOutput { + return i.ToManagedClusterOIDCIssuerProfileOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderOutput) +func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfileOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterOIDCIssuerProfileOutput) } -func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { - return i.ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Background()) +func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { + return i.ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderOutput).ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx) +func (i ManagedClusterOIDCIssuerProfileArgs) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterOIDCIssuerProfileOutput).ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx) } -// ManagedClusterSecurityProfileDefenderPtrInput is an input type that accepts ManagedClusterSecurityProfileDefenderArgs, ManagedClusterSecurityProfileDefenderPtr and ManagedClusterSecurityProfileDefenderPtrOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderPtrInput` via: +// ManagedClusterOIDCIssuerProfilePtrInput is an input type that accepts ManagedClusterOIDCIssuerProfileArgs, ManagedClusterOIDCIssuerProfilePtr and ManagedClusterOIDCIssuerProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterOIDCIssuerProfilePtrInput` via: // -// ManagedClusterSecurityProfileDefenderArgs{...} +// ManagedClusterOIDCIssuerProfileArgs{...} // // or: // // nil -type ManagedClusterSecurityProfileDefenderPtrInput interface { +type ManagedClusterOIDCIssuerProfilePtrInput interface { pulumi.Input - ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput - ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderPtrOutput + ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput + ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Context) ManagedClusterOIDCIssuerProfilePtrOutput } -type managedClusterSecurityProfileDefenderPtrType ManagedClusterSecurityProfileDefenderArgs +type managedClusterOIDCIssuerProfilePtrType ManagedClusterOIDCIssuerProfileArgs + +func ManagedClusterOIDCIssuerProfilePtr(v *ManagedClusterOIDCIssuerProfileArgs) ManagedClusterOIDCIssuerProfilePtrInput { + return (*managedClusterOIDCIssuerProfilePtrType)(v) +} + +func (*managedClusterOIDCIssuerProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterOIDCIssuerProfile)(nil)).Elem() +} + +func (i *managedClusterOIDCIssuerProfilePtrType) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { + return i.ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Background()) +} + +func (i *managedClusterOIDCIssuerProfilePtrType) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterOIDCIssuerProfilePtrOutput) +} + +// The OIDC issuer profile of the Managed Cluster. +type ManagedClusterOIDCIssuerProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterOIDCIssuerProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterOIDCIssuerProfile)(nil)).Elem() +} + +func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfileOutput() ManagedClusterOIDCIssuerProfileOutput { + return o +} + +func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfileOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileOutput { + return o +} + +func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { + return o.ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterOIDCIssuerProfileOutput) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterOIDCIssuerProfile) *ManagedClusterOIDCIssuerProfile { + return &v + }).(ManagedClusterOIDCIssuerProfilePtrOutput) +} + +// Whether the OIDC issuer is enabled. +func (o ManagedClusterOIDCIssuerProfileOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterOIDCIssuerProfile) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +type ManagedClusterOIDCIssuerProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterOIDCIssuerProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterOIDCIssuerProfile)(nil)).Elem() +} + +func (o ManagedClusterOIDCIssuerProfilePtrOutput) ToManagedClusterOIDCIssuerProfilePtrOutput() ManagedClusterOIDCIssuerProfilePtrOutput { + return o +} -func ManagedClusterSecurityProfileDefenderPtr(v *ManagedClusterSecurityProfileDefenderArgs) ManagedClusterSecurityProfileDefenderPtrInput { - return (*managedClusterSecurityProfileDefenderPtrType)(v) +func (o ManagedClusterOIDCIssuerProfilePtrOutput) ToManagedClusterOIDCIssuerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfilePtrOutput { + return o } -func (*managedClusterSecurityProfileDefenderPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileDefender)(nil)).Elem() +func (o ManagedClusterOIDCIssuerProfilePtrOutput) Elem() ManagedClusterOIDCIssuerProfileOutput { + return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfile) ManagedClusterOIDCIssuerProfile { + if v != nil { + return *v + } + var ret ManagedClusterOIDCIssuerProfile + return ret + }).(ManagedClusterOIDCIssuerProfileOutput) } -func (i *managedClusterSecurityProfileDefenderPtrType) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { - return i.ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Background()) +// Whether the OIDC issuer is enabled. +func (o ManagedClusterOIDCIssuerProfilePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfile) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -func (i *managedClusterSecurityProfileDefenderPtrType) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderPtrOutput) +// The OIDC issuer profile of the Managed Cluster. +type ManagedClusterOIDCIssuerProfileResponse struct { + // Whether the OIDC issuer is enabled. + Enabled *bool `pulumi:"enabled"` + // The OIDC issuer url of the Managed Cluster. + IssuerURL string `pulumi:"issuerURL"` } -// Microsoft Defender settings for the security profile. -type ManagedClusterSecurityProfileDefenderOutput struct{ *pulumi.OutputState } +// The OIDC issuer profile of the Managed Cluster. +type ManagedClusterOIDCIssuerProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileDefenderOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileDefender)(nil)).Elem() +func (ManagedClusterOIDCIssuerProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterOIDCIssuerProfileResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderOutput() ManagedClusterSecurityProfileDefenderOutput { +func (o ManagedClusterOIDCIssuerProfileResponseOutput) ToManagedClusterOIDCIssuerProfileResponseOutput() ManagedClusterOIDCIssuerProfileResponseOutput { return o } -func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderOutput { +func (o ManagedClusterOIDCIssuerProfileResponseOutput) ToManagedClusterOIDCIssuerProfileResponseOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileResponseOutput { return o } -func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { - return o.ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Background()) -} - -func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileDefender) *ManagedClusterSecurityProfileDefender { - return &v - }).(ManagedClusterSecurityProfileDefenderPtrOutput) -} - -// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. -func (o ManagedClusterSecurityProfileDefenderOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileDefender) *string { return v.LogAnalyticsWorkspaceResourceId }).(pulumi.StringPtrOutput) +// Whether the OIDC issuer is enabled. +func (o ManagedClusterOIDCIssuerProfileResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterOIDCIssuerProfileResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// Microsoft Defender threat detection for Cloud settings for the security profile. -func (o ManagedClusterSecurityProfileDefenderOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileDefender) *ManagedClusterSecurityProfileDefenderSecurityMonitoring { - return v.SecurityMonitoring - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) +// The OIDC issuer url of the Managed Cluster. +func (o ManagedClusterOIDCIssuerProfileResponseOutput) IssuerURL() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterOIDCIssuerProfileResponse) string { return v.IssuerURL }).(pulumi.StringOutput) } -type ManagedClusterSecurityProfileDefenderPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterOIDCIssuerProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileDefenderPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileDefender)(nil)).Elem() +func (ManagedClusterOIDCIssuerProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterOIDCIssuerProfileResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileDefenderPtrOutput) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { +func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) ToManagedClusterOIDCIssuerProfileResponsePtrOutput() ManagedClusterOIDCIssuerProfileResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfileDefenderPtrOutput) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { +func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) ToManagedClusterOIDCIssuerProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterOIDCIssuerProfileResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfileDefenderPtrOutput) Elem() ManagedClusterSecurityProfileDefenderOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefender) ManagedClusterSecurityProfileDefender { +func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) Elem() ManagedClusterOIDCIssuerProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfileResponse) ManagedClusterOIDCIssuerProfileResponse { if v != nil { return *v } - var ret ManagedClusterSecurityProfileDefender + var ret ManagedClusterOIDCIssuerProfileResponse return ret - }).(ManagedClusterSecurityProfileDefenderOutput) + }).(ManagedClusterOIDCIssuerProfileResponseOutput) } -// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. -func (o ManagedClusterSecurityProfileDefenderPtrOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefender) *string { +// Whether the OIDC issuer is enabled. +func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfileResponse) *bool { if v == nil { return nil } - return v.LogAnalyticsWorkspaceResourceId - }).(pulumi.StringPtrOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Microsoft Defender threat detection for Cloud settings for the security profile. -func (o ManagedClusterSecurityProfileDefenderPtrOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefender) *ManagedClusterSecurityProfileDefenderSecurityMonitoring { +// The OIDC issuer url of the Managed Cluster. +func (o ManagedClusterOIDCIssuerProfileResponsePtrOutput) IssuerURL() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterOIDCIssuerProfileResponse) *string { if v == nil { return nil } - return v.SecurityMonitoring - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) + return &v.IssuerURL + }).(pulumi.StringPtrOutput) } -// Microsoft Defender settings for the security profile. -type ManagedClusterSecurityProfileDefenderResponse struct { - // Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. - LogAnalyticsWorkspaceResourceId *string `pulumi:"logAnalyticsWorkspaceResourceId"` - // Microsoft Defender threat detection for Cloud settings for the security profile. - SecurityMonitoring *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse `pulumi:"securityMonitoring"` +// Details about the pod identity assigned to the Managed Cluster. +type ManagedClusterPodIdentity struct { + // The binding selector to use for the AzureIdentityBinding resource. + BindingSelector *string `pulumi:"bindingSelector"` + // The user assigned identity details. + Identity UserAssignedIdentity `pulumi:"identity"` + // The name of the pod identity. + Name string `pulumi:"name"` + // The namespace of the pod identity. + Namespace string `pulumi:"namespace"` } -// Microsoft Defender settings for the security profile. -type ManagedClusterSecurityProfileDefenderResponseOutput struct{ *pulumi.OutputState } +// ManagedClusterPodIdentityInput is an input type that accepts ManagedClusterPodIdentityArgs and ManagedClusterPodIdentityOutput values. +// You can construct a concrete instance of `ManagedClusterPodIdentityInput` via: +// +// ManagedClusterPodIdentityArgs{...} +type ManagedClusterPodIdentityInput interface { + pulumi.Input -func (ManagedClusterSecurityProfileDefenderResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderResponse)(nil)).Elem() + ToManagedClusterPodIdentityOutput() ManagedClusterPodIdentityOutput + ToManagedClusterPodIdentityOutputWithContext(context.Context) ManagedClusterPodIdentityOutput } -func (o ManagedClusterSecurityProfileDefenderResponseOutput) ToManagedClusterSecurityProfileDefenderResponseOutput() ManagedClusterSecurityProfileDefenderResponseOutput { - return o +// Details about the pod identity assigned to the Managed Cluster. +type ManagedClusterPodIdentityArgs struct { + // The binding selector to use for the AzureIdentityBinding resource. + BindingSelector pulumi.StringPtrInput `pulumi:"bindingSelector"` + // The user assigned identity details. + Identity UserAssignedIdentityInput `pulumi:"identity"` + // The name of the pod identity. + Name pulumi.StringInput `pulumi:"name"` + // The namespace of the pod identity. + Namespace pulumi.StringInput `pulumi:"namespace"` } -func (o ManagedClusterSecurityProfileDefenderResponseOutput) ToManagedClusterSecurityProfileDefenderResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderResponseOutput { - return o +func (ManagedClusterPodIdentityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentity)(nil)).Elem() } -// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. -func (o ManagedClusterSecurityProfileDefenderResponseOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderResponse) *string { - return v.LogAnalyticsWorkspaceResourceId - }).(pulumi.StringPtrOutput) +func (i ManagedClusterPodIdentityArgs) ToManagedClusterPodIdentityOutput() ManagedClusterPodIdentityOutput { + return i.ToManagedClusterPodIdentityOutputWithContext(context.Background()) } -// Microsoft Defender threat detection for Cloud settings for the security profile. -func (o ManagedClusterSecurityProfileDefenderResponseOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderResponse) *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse { - return v.SecurityMonitoring - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) +func (i ManagedClusterPodIdentityArgs) ToManagedClusterPodIdentityOutputWithContext(ctx context.Context) ManagedClusterPodIdentityOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityOutput) } -type ManagedClusterSecurityProfileDefenderResponsePtrOutput struct{ *pulumi.OutputState } +// ManagedClusterPodIdentityArrayInput is an input type that accepts ManagedClusterPodIdentityArray and ManagedClusterPodIdentityArrayOutput values. +// You can construct a concrete instance of `ManagedClusterPodIdentityArrayInput` via: +// +// ManagedClusterPodIdentityArray{ ManagedClusterPodIdentityArgs{...} } +type ManagedClusterPodIdentityArrayInput interface { + pulumi.Input -func (ManagedClusterSecurityProfileDefenderResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderResponse)(nil)).Elem() + ToManagedClusterPodIdentityArrayOutput() ManagedClusterPodIdentityArrayOutput + ToManagedClusterPodIdentityArrayOutputWithContext(context.Context) ManagedClusterPodIdentityArrayOutput } -func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) ToManagedClusterSecurityProfileDefenderResponsePtrOutput() ManagedClusterSecurityProfileDefenderResponsePtrOutput { +type ManagedClusterPodIdentityArray []ManagedClusterPodIdentityInput + +func (ManagedClusterPodIdentityArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentity)(nil)).Elem() +} + +func (i ManagedClusterPodIdentityArray) ToManagedClusterPodIdentityArrayOutput() ManagedClusterPodIdentityArrayOutput { + return i.ToManagedClusterPodIdentityArrayOutputWithContext(context.Background()) +} + +func (i ManagedClusterPodIdentityArray) ToManagedClusterPodIdentityArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityArrayOutput) +} + +// Details about the pod identity assigned to the Managed Cluster. +type ManagedClusterPodIdentityOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPodIdentityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentity)(nil)).Elem() +} + +func (o ManagedClusterPodIdentityOutput) ToManagedClusterPodIdentityOutput() ManagedClusterPodIdentityOutput { return o } -func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) ToManagedClusterSecurityProfileDefenderResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderResponsePtrOutput { +func (o ManagedClusterPodIdentityOutput) ToManagedClusterPodIdentityOutputWithContext(ctx context.Context) ManagedClusterPodIdentityOutput { return o } -func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) Elem() ManagedClusterSecurityProfileDefenderResponseOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderResponse) ManagedClusterSecurityProfileDefenderResponse { - if v != nil { - return *v - } - var ret ManagedClusterSecurityProfileDefenderResponse - return ret - }).(ManagedClusterSecurityProfileDefenderResponseOutput) +// The binding selector to use for the AzureIdentityBinding resource. +func (o ManagedClusterPodIdentityOutput) BindingSelector() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentity) *string { return v.BindingSelector }).(pulumi.StringPtrOutput) } -// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. -func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderResponse) *string { - if v == nil { - return nil - } - return v.LogAnalyticsWorkspaceResourceId - }).(pulumi.StringPtrOutput) +// The user assigned identity details. +func (o ManagedClusterPodIdentityOutput) Identity() UserAssignedIdentityOutput { + return o.ApplyT(func(v ManagedClusterPodIdentity) UserAssignedIdentity { return v.Identity }).(UserAssignedIdentityOutput) } -// Microsoft Defender threat detection for Cloud settings for the security profile. -func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderResponse) *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse { - if v == nil { - return nil - } - return v.SecurityMonitoring - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) +// The name of the pod identity. +func (o ManagedClusterPodIdentityOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentity) string { return v.Name }).(pulumi.StringOutput) } -// Microsoft Defender settings for the security profile threat detection. -type ManagedClusterSecurityProfileDefenderSecurityMonitoring struct { - // Whether to enable Defender threat detection - Enabled *bool `pulumi:"enabled"` +// The namespace of the pod identity. +func (o ManagedClusterPodIdentityOutput) Namespace() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentity) string { return v.Namespace }).(pulumi.StringOutput) } -// ManagedClusterSecurityProfileDefenderSecurityMonitoringInput is an input type that accepts ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs and ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderSecurityMonitoringInput` via: -// -// ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs{...} -type ManagedClusterSecurityProfileDefenderSecurityMonitoringInput interface { - pulumi.Input +type ManagedClusterPodIdentityArrayOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPodIdentityArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentity)(nil)).Elem() +} + +func (o ManagedClusterPodIdentityArrayOutput) ToManagedClusterPodIdentityArrayOutput() ManagedClusterPodIdentityArrayOutput { + return o +} + +func (o ManagedClusterPodIdentityArrayOutput) ToManagedClusterPodIdentityArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityArrayOutput { + return o +} - ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput - ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput +func (o ManagedClusterPodIdentityArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentity { + return vs[0].([]ManagedClusterPodIdentity)[vs[1].(int)] + }).(ManagedClusterPodIdentityOutput) } -// Microsoft Defender settings for the security profile threat detection. -type ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs struct { - // Whether to enable Defender threat detection - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. +type ManagedClusterPodIdentityException struct { + // The name of the pod identity exception. + Name string `pulumi:"name"` + // The namespace of the pod identity exception. + Namespace string `pulumi:"namespace"` + // The pod labels to match. + PodLabels map[string]string `pulumi:"podLabels"` } -func (ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() +// ManagedClusterPodIdentityExceptionInput is an input type that accepts ManagedClusterPodIdentityExceptionArgs and ManagedClusterPodIdentityExceptionOutput values. +// You can construct a concrete instance of `ManagedClusterPodIdentityExceptionInput` via: +// +// ManagedClusterPodIdentityExceptionArgs{...} +type ManagedClusterPodIdentityExceptionInput interface { + pulumi.Input + + ToManagedClusterPodIdentityExceptionOutput() ManagedClusterPodIdentityExceptionOutput + ToManagedClusterPodIdentityExceptionOutputWithContext(context.Context) ManagedClusterPodIdentityExceptionOutput } -func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { - return i.ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(context.Background()) +// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. +type ManagedClusterPodIdentityExceptionArgs struct { + // The name of the pod identity exception. + Name pulumi.StringInput `pulumi:"name"` + // The namespace of the pod identity exception. + Namespace pulumi.StringInput `pulumi:"namespace"` + // The pod labels to match. + PodLabels pulumi.StringMapInput `pulumi:"podLabels"` } -func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) +func (ManagedClusterPodIdentityExceptionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityException)(nil)).Elem() } -func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return i.ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Background()) +func (i ManagedClusterPodIdentityExceptionArgs) ToManagedClusterPodIdentityExceptionOutput() ManagedClusterPodIdentityExceptionOutput { + return i.ToManagedClusterPodIdentityExceptionOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput).ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx) +func (i ManagedClusterPodIdentityExceptionArgs) ToManagedClusterPodIdentityExceptionOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityExceptionOutput) } -// ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput is an input type that accepts ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs, ManagedClusterSecurityProfileDefenderSecurityMonitoringPtr and ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput` via: -// -// ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs{...} -// -// or: +// ManagedClusterPodIdentityExceptionArrayInput is an input type that accepts ManagedClusterPodIdentityExceptionArray and ManagedClusterPodIdentityExceptionArrayOutput values. +// You can construct a concrete instance of `ManagedClusterPodIdentityExceptionArrayInput` via: // -// nil -type ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput interface { +// ManagedClusterPodIdentityExceptionArray{ ManagedClusterPodIdentityExceptionArgs{...} } +type ManagedClusterPodIdentityExceptionArrayInput interface { pulumi.Input - ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput - ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput + ToManagedClusterPodIdentityExceptionArrayOutput() ManagedClusterPodIdentityExceptionArrayOutput + ToManagedClusterPodIdentityExceptionArrayOutputWithContext(context.Context) ManagedClusterPodIdentityExceptionArrayOutput } -type managedClusterSecurityProfileDefenderSecurityMonitoringPtrType ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs - -func ManagedClusterSecurityProfileDefenderSecurityMonitoringPtr(v *ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput { - return (*managedClusterSecurityProfileDefenderSecurityMonitoringPtrType)(v) -} +type ManagedClusterPodIdentityExceptionArray []ManagedClusterPodIdentityExceptionInput -func (*managedClusterSecurityProfileDefenderSecurityMonitoringPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() +func (ManagedClusterPodIdentityExceptionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentityException)(nil)).Elem() } -func (i *managedClusterSecurityProfileDefenderSecurityMonitoringPtrType) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return i.ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Background()) +func (i ManagedClusterPodIdentityExceptionArray) ToManagedClusterPodIdentityExceptionArrayOutput() ManagedClusterPodIdentityExceptionArrayOutput { + return i.ToManagedClusterPodIdentityExceptionArrayOutputWithContext(context.Background()) } -func (i *managedClusterSecurityProfileDefenderSecurityMonitoringPtrType) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) +func (i ManagedClusterPodIdentityExceptionArray) ToManagedClusterPodIdentityExceptionArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityExceptionArrayOutput) } -// Microsoft Defender settings for the security profile threat detection. -type ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput struct{ *pulumi.OutputState } +// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. +type ManagedClusterPodIdentityExceptionOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() +func (ManagedClusterPodIdentityExceptionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityException)(nil)).Elem() } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { +func (o ManagedClusterPodIdentityExceptionOutput) ToManagedClusterPodIdentityExceptionOutput() ManagedClusterPodIdentityExceptionOutput { return o } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { +func (o ManagedClusterPodIdentityExceptionOutput) ToManagedClusterPodIdentityExceptionOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionOutput { return o } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return o.ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Background()) +// The name of the pod identity exception. +func (o ManagedClusterPodIdentityExceptionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityException) string { return v.Name }).(pulumi.StringOutput) } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileDefenderSecurityMonitoring) *ManagedClusterSecurityProfileDefenderSecurityMonitoring { - return &v - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) +// The namespace of the pod identity exception. +func (o ManagedClusterPodIdentityExceptionOutput) Namespace() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityException) string { return v.Namespace }).(pulumi.StringOutput) } -// Whether to enable Defender threat detection -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderSecurityMonitoring) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// The pod labels to match. +func (o ManagedClusterPodIdentityExceptionOutput) PodLabels() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityException) map[string]string { return v.PodLabels }).(pulumi.StringMapOutput) } -type ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterPodIdentityExceptionArrayOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() +func (ManagedClusterPodIdentityExceptionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentityException)(nil)).Elem() } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { +func (o ManagedClusterPodIdentityExceptionArrayOutput) ToManagedClusterPodIdentityExceptionArrayOutput() ManagedClusterPodIdentityExceptionArrayOutput { return o } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { +func (o ManagedClusterPodIdentityExceptionArrayOutput) ToManagedClusterPodIdentityExceptionArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionArrayOutput { return o } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) Elem() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoring) ManagedClusterSecurityProfileDefenderSecurityMonitoring { - if v != nil { - return *v - } - var ret ManagedClusterSecurityProfileDefenderSecurityMonitoring - return ret - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) -} - -// Whether to enable Defender threat detection -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoring) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +func (o ManagedClusterPodIdentityExceptionArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityExceptionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityException { + return vs[0].([]ManagedClusterPodIdentityException)[vs[1].(int)] + }).(ManagedClusterPodIdentityExceptionOutput) } -// Microsoft Defender settings for the security profile threat detection. -type ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse struct { - // Whether to enable Defender threat detection - Enabled *bool `pulumi:"enabled"` +// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. +type ManagedClusterPodIdentityExceptionResponse struct { + // The name of the pod identity exception. + Name string `pulumi:"name"` + // The namespace of the pod identity exception. + Namespace string `pulumi:"namespace"` + // The pod labels to match. + PodLabels map[string]string `pulumi:"podLabels"` } -// Microsoft Defender settings for the security profile threat detection. -type ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput struct{ *pulumi.OutputState } +// See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details. +type ManagedClusterPodIdentityExceptionResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse)(nil)).Elem() +func (ManagedClusterPodIdentityExceptionResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityExceptionResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput { +func (o ManagedClusterPodIdentityExceptionResponseOutput) ToManagedClusterPodIdentityExceptionResponseOutput() ManagedClusterPodIdentityExceptionResponseOutput { return o } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput { +func (o ManagedClusterPodIdentityExceptionResponseOutput) ToManagedClusterPodIdentityExceptionResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionResponseOutput { return o } -// Whether to enable Defender threat detection -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// The name of the pod identity exception. +func (o ManagedClusterPodIdentityExceptionResponseOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityExceptionResponse) string { return v.Name }).(pulumi.StringOutput) } -type ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput struct{ *pulumi.OutputState } +// The namespace of the pod identity exception. +func (o ManagedClusterPodIdentityExceptionResponseOutput) Namespace() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityExceptionResponse) string { return v.Namespace }).(pulumi.StringOutput) +} -func (ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse)(nil)).Elem() +// The pod labels to match. +func (o ManagedClusterPodIdentityExceptionResponseOutput) PodLabels() pulumi.StringMapOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityExceptionResponse) map[string]string { return v.PodLabels }).(pulumi.StringMapOutput) } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { - return o +type ManagedClusterPodIdentityExceptionResponseArrayOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPodIdentityExceptionResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentityExceptionResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { +func (o ManagedClusterPodIdentityExceptionResponseArrayOutput) ToManagedClusterPodIdentityExceptionResponseArrayOutput() ManagedClusterPodIdentityExceptionResponseArrayOutput { return o } -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) Elem() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse) ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse { - if v != nil { - return *v - } - var ret ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse - return ret - }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) +func (o ManagedClusterPodIdentityExceptionResponseArrayOutput) ToManagedClusterPodIdentityExceptionResponseArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityExceptionResponseArrayOutput { + return o } -// Whether to enable Defender threat detection -func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +func (o ManagedClusterPodIdentityExceptionResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityExceptionResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityExceptionResponse { + return vs[0].([]ManagedClusterPodIdentityExceptionResponse)[vs[1].(int)] + }).(ManagedClusterPodIdentityExceptionResponseOutput) } -// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. -type ManagedClusterSecurityProfileImageCleaner struct { - // Whether to enable Image Cleaner on AKS cluster. +// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. +type ManagedClusterPodIdentityProfile struct { + // Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. + AllowNetworkPluginKubenet *bool `pulumi:"allowNetworkPluginKubenet"` + // Whether the pod identity addon is enabled. Enabled *bool `pulumi:"enabled"` - // Image Cleaner scanning interval in hours. - IntervalHours *int `pulumi:"intervalHours"` + // The pod identities to use in the cluster. + UserAssignedIdentities []ManagedClusterPodIdentity `pulumi:"userAssignedIdentities"` + // The pod identity exceptions to allow. + UserAssignedIdentityExceptions []ManagedClusterPodIdentityException `pulumi:"userAssignedIdentityExceptions"` } -// ManagedClusterSecurityProfileImageCleanerInput is an input type that accepts ManagedClusterSecurityProfileImageCleanerArgs and ManagedClusterSecurityProfileImageCleanerOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileImageCleanerInput` via: +// ManagedClusterPodIdentityProfileInput is an input type that accepts ManagedClusterPodIdentityProfileArgs and ManagedClusterPodIdentityProfileOutput values. +// You can construct a concrete instance of `ManagedClusterPodIdentityProfileInput` via: // -// ManagedClusterSecurityProfileImageCleanerArgs{...} -type ManagedClusterSecurityProfileImageCleanerInput interface { +// ManagedClusterPodIdentityProfileArgs{...} +type ManagedClusterPodIdentityProfileInput interface { pulumi.Input - ToManagedClusterSecurityProfileImageCleanerOutput() ManagedClusterSecurityProfileImageCleanerOutput - ToManagedClusterSecurityProfileImageCleanerOutputWithContext(context.Context) ManagedClusterSecurityProfileImageCleanerOutput + ToManagedClusterPodIdentityProfileOutput() ManagedClusterPodIdentityProfileOutput + ToManagedClusterPodIdentityProfileOutputWithContext(context.Context) ManagedClusterPodIdentityProfileOutput } -// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. -type ManagedClusterSecurityProfileImageCleanerArgs struct { - // Whether to enable Image Cleaner on AKS cluster. +// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. +type ManagedClusterPodIdentityProfileArgs struct { + // Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. + AllowNetworkPluginKubenet pulumi.BoolPtrInput `pulumi:"allowNetworkPluginKubenet"` + // Whether the pod identity addon is enabled. Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // Image Cleaner scanning interval in hours. - IntervalHours pulumi.IntPtrInput `pulumi:"intervalHours"` + // The pod identities to use in the cluster. + UserAssignedIdentities ManagedClusterPodIdentityArrayInput `pulumi:"userAssignedIdentities"` + // The pod identity exceptions to allow. + UserAssignedIdentityExceptions ManagedClusterPodIdentityExceptionArrayInput `pulumi:"userAssignedIdentityExceptions"` } -func (ManagedClusterSecurityProfileImageCleanerArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() +func (ManagedClusterPodIdentityProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityProfile)(nil)).Elem() } -func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerOutput() ManagedClusterSecurityProfileImageCleanerOutput { - return i.ToManagedClusterSecurityProfileImageCleanerOutputWithContext(context.Background()) +func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfileOutput() ManagedClusterPodIdentityProfileOutput { + return i.ToManagedClusterPodIdentityProfileOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileImageCleanerOutput) +func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfileOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityProfileOutput) } -func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { - return i.ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Background()) +func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { + return i.ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Background()) } -func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileImageCleanerOutput).ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx) +func (i ManagedClusterPodIdentityProfileArgs) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityProfileOutput).ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx) } -// ManagedClusterSecurityProfileImageCleanerPtrInput is an input type that accepts ManagedClusterSecurityProfileImageCleanerArgs, ManagedClusterSecurityProfileImageCleanerPtr and ManagedClusterSecurityProfileImageCleanerPtrOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileImageCleanerPtrInput` via: +// ManagedClusterPodIdentityProfilePtrInput is an input type that accepts ManagedClusterPodIdentityProfileArgs, ManagedClusterPodIdentityProfilePtr and ManagedClusterPodIdentityProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterPodIdentityProfilePtrInput` via: // -// ManagedClusterSecurityProfileImageCleanerArgs{...} +// ManagedClusterPodIdentityProfileArgs{...} // // or: // // nil -type ManagedClusterSecurityProfileImageCleanerPtrInput interface { +type ManagedClusterPodIdentityProfilePtrInput interface { pulumi.Input - ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput - ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput + ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput + ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Context) ManagedClusterPodIdentityProfilePtrOutput } -type managedClusterSecurityProfileImageCleanerPtrType ManagedClusterSecurityProfileImageCleanerArgs +type managedClusterPodIdentityProfilePtrType ManagedClusterPodIdentityProfileArgs -func ManagedClusterSecurityProfileImageCleanerPtr(v *ManagedClusterSecurityProfileImageCleanerArgs) ManagedClusterSecurityProfileImageCleanerPtrInput { - return (*managedClusterSecurityProfileImageCleanerPtrType)(v) +func ManagedClusterPodIdentityProfilePtr(v *ManagedClusterPodIdentityProfileArgs) ManagedClusterPodIdentityProfilePtrInput { + return (*managedClusterPodIdentityProfilePtrType)(v) } -func (*managedClusterSecurityProfileImageCleanerPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() +func (*managedClusterPodIdentityProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPodIdentityProfile)(nil)).Elem() } -func (i *managedClusterSecurityProfileImageCleanerPtrType) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { - return i.ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Background()) +func (i *managedClusterPodIdentityProfilePtrType) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { + return i.ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Background()) } -func (i *managedClusterSecurityProfileImageCleanerPtrType) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileImageCleanerPtrOutput) +func (i *managedClusterPodIdentityProfilePtrType) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPodIdentityProfilePtrOutput) } -// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. -type ManagedClusterSecurityProfileImageCleanerOutput struct{ *pulumi.OutputState } +// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. +type ManagedClusterPodIdentityProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileImageCleanerOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() +func (ManagedClusterPodIdentityProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityProfile)(nil)).Elem() } -func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerOutput() ManagedClusterSecurityProfileImageCleanerOutput { +func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfileOutput() ManagedClusterPodIdentityProfileOutput { return o } -func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerOutput { +func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfileOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileOutput { return o } -func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { - return o.ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Background()) +func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { + return o.ToManagedClusterPodIdentityProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileImageCleaner) *ManagedClusterSecurityProfileImageCleaner { +func (o ManagedClusterPodIdentityProfileOutput) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterPodIdentityProfile) *ManagedClusterPodIdentityProfile { return &v - }).(ManagedClusterSecurityProfileImageCleanerPtrOutput) + }).(ManagedClusterPodIdentityProfilePtrOutput) } -// Whether to enable Image Cleaner on AKS cluster. -func (o ManagedClusterSecurityProfileImageCleanerOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleaner) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. +func (o ManagedClusterPodIdentityProfileOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfile) *bool { return v.AllowNetworkPluginKubenet }).(pulumi.BoolPtrOutput) } -// Image Cleaner scanning interval in hours. -func (o ManagedClusterSecurityProfileImageCleanerOutput) IntervalHours() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleaner) *int { return v.IntervalHours }).(pulumi.IntPtrOutput) +// Whether the pod identity addon is enabled. +func (o ManagedClusterPodIdentityProfileOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfile) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type ManagedClusterSecurityProfileImageCleanerPtrOutput struct{ *pulumi.OutputState } +// The pod identities to use in the cluster. +func (o ManagedClusterPodIdentityProfileOutput) UserAssignedIdentities() ManagedClusterPodIdentityArrayOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentity { return v.UserAssignedIdentities }).(ManagedClusterPodIdentityArrayOutput) +} -func (ManagedClusterSecurityProfileImageCleanerPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() +// The pod identity exceptions to allow. +func (o ManagedClusterPodIdentityProfileOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionArrayOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentityException { + return v.UserAssignedIdentityExceptions + }).(ManagedClusterPodIdentityExceptionArrayOutput) } -func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { +type ManagedClusterPodIdentityProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPodIdentityProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPodIdentityProfile)(nil)).Elem() +} + +func (o ManagedClusterPodIdentityProfilePtrOutput) ToManagedClusterPodIdentityProfilePtrOutput() ManagedClusterPodIdentityProfilePtrOutput { return o } -func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { +func (o ManagedClusterPodIdentityProfilePtrOutput) ToManagedClusterPodIdentityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfilePtrOutput { return o } -func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) Elem() ManagedClusterSecurityProfileImageCleanerOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleaner) ManagedClusterSecurityProfileImageCleaner { +func (o ManagedClusterPodIdentityProfilePtrOutput) Elem() ManagedClusterPodIdentityProfileOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) ManagedClusterPodIdentityProfile { if v != nil { return *v } - var ret ManagedClusterSecurityProfileImageCleaner + var ret ManagedClusterPodIdentityProfile return ret - }).(ManagedClusterSecurityProfileImageCleanerOutput) + }).(ManagedClusterPodIdentityProfileOutput) } -// Whether to enable Image Cleaner on AKS cluster. -func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleaner) *bool { +// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. +func (o ManagedClusterPodIdentityProfilePtrOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) *bool { if v == nil { return nil } - return v.Enabled + return v.AllowNetworkPluginKubenet }).(pulumi.BoolPtrOutput) } -// Image Cleaner scanning interval in hours. -func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) IntervalHours() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleaner) *int { +// Whether the pod identity addon is enabled. +func (o ManagedClusterPodIdentityProfilePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) *bool { if v == nil { return nil } - return v.IntervalHours - }).(pulumi.IntPtrOutput) -} - -// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. -type ManagedClusterSecurityProfileImageCleanerResponse struct { - // Whether to enable Image Cleaner on AKS cluster. - Enabled *bool `pulumi:"enabled"` - // Image Cleaner scanning interval in hours. - IntervalHours *int `pulumi:"intervalHours"` -} - -// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. -type ManagedClusterSecurityProfileImageCleanerResponseOutput struct{ *pulumi.OutputState } - -func (ManagedClusterSecurityProfileImageCleanerResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileImageCleanerResponse)(nil)).Elem() -} - -func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) ToManagedClusterSecurityProfileImageCleanerResponseOutput() ManagedClusterSecurityProfileImageCleanerResponseOutput { - return o -} - -func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) ToManagedClusterSecurityProfileImageCleanerResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerResponseOutput { - return o -} - -// Whether to enable Image Cleaner on AKS cluster. -func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleanerResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -// Image Cleaner scanning interval in hours. -func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) IntervalHours() pulumi.IntPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleanerResponse) *int { return v.IntervalHours }).(pulumi.IntPtrOutput) -} - -type ManagedClusterSecurityProfileImageCleanerResponsePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileImageCleanerResponse)(nil)).Elem() -} - -func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) ToManagedClusterSecurityProfileImageCleanerResponsePtrOutput() ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { - return o -} - -func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) ToManagedClusterSecurityProfileImageCleanerResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { - return o -} - -func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) Elem() ManagedClusterSecurityProfileImageCleanerResponseOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleanerResponse) ManagedClusterSecurityProfileImageCleanerResponse { - if v != nil { - return *v - } - var ret ManagedClusterSecurityProfileImageCleanerResponse - return ret - }).(ManagedClusterSecurityProfileImageCleanerResponseOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Whether to enable Image Cleaner on AKS cluster. -func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleanerResponse) *bool { +// The pod identities to use in the cluster. +func (o ManagedClusterPodIdentityProfilePtrOutput) UserAssignedIdentities() ManagedClusterPodIdentityArrayOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentity { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.UserAssignedIdentities + }).(ManagedClusterPodIdentityArrayOutput) } -// Image Cleaner scanning interval in hours. -func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) IntervalHours() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleanerResponse) *int { +// The pod identity exceptions to allow. +func (o ManagedClusterPodIdentityProfilePtrOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionArrayOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfile) []ManagedClusterPodIdentityException { if v == nil { return nil } - return v.IntervalHours - }).(pulumi.IntPtrOutput) -} - -// Security profile for the container service cluster. -type ManagedClusterSecurityProfileResponse struct { - // Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. - AzureKeyVaultKms *AzureKeyVaultKmsResponse `pulumi:"azureKeyVaultKms"` - // Microsoft Defender settings for the security profile. - Defender *ManagedClusterSecurityProfileDefenderResponse `pulumi:"defender"` - // Image Cleaner settings for the security profile. - ImageCleaner *ManagedClusterSecurityProfileImageCleanerResponse `pulumi:"imageCleaner"` - // Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. - WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentityResponse `pulumi:"workloadIdentity"` + return v.UserAssignedIdentityExceptions + }).(ManagedClusterPodIdentityExceptionArrayOutput) } -// Defaults sets the appropriate defaults for ManagedClusterSecurityProfileResponse -func (val *ManagedClusterSecurityProfileResponse) Defaults() *ManagedClusterSecurityProfileResponse { - if val == nil { - return nil - } - tmp := *val - tmp.AzureKeyVaultKms = tmp.AzureKeyVaultKms.Defaults() - - return &tmp +// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. +type ManagedClusterPodIdentityProfileResponse struct { + // Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. + AllowNetworkPluginKubenet *bool `pulumi:"allowNetworkPluginKubenet"` + // Whether the pod identity addon is enabled. + Enabled *bool `pulumi:"enabled"` + // The pod identities to use in the cluster. + UserAssignedIdentities []ManagedClusterPodIdentityResponse `pulumi:"userAssignedIdentities"` + // The pod identity exceptions to allow. + UserAssignedIdentityExceptions []ManagedClusterPodIdentityExceptionResponse `pulumi:"userAssignedIdentityExceptions"` } -// Security profile for the container service cluster. -type ManagedClusterSecurityProfileResponseOutput struct{ *pulumi.OutputState } +// See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration. +type ManagedClusterPodIdentityProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileResponse)(nil)).Elem() +func (ManagedClusterPodIdentityProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityProfileResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileResponseOutput) ToManagedClusterSecurityProfileResponseOutput() ManagedClusterSecurityProfileResponseOutput { +func (o ManagedClusterPodIdentityProfileResponseOutput) ToManagedClusterPodIdentityProfileResponseOutput() ManagedClusterPodIdentityProfileResponseOutput { return o } -func (o ManagedClusterSecurityProfileResponseOutput) ToManagedClusterSecurityProfileResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileResponseOutput { +func (o ManagedClusterPodIdentityProfileResponseOutput) ToManagedClusterPodIdentityProfileResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileResponseOutput { return o } -// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. -func (o ManagedClusterSecurityProfileResponseOutput) AzureKeyVaultKms() AzureKeyVaultKmsResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *AzureKeyVaultKmsResponse { return v.AzureKeyVaultKms }).(AzureKeyVaultKmsResponsePtrOutput) +// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. +func (o ManagedClusterPodIdentityProfileResponseOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) *bool { return v.AllowNetworkPluginKubenet }).(pulumi.BoolPtrOutput) } -// Microsoft Defender settings for the security profile. -func (o ManagedClusterSecurityProfileResponseOutput) Defender() ManagedClusterSecurityProfileDefenderResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileDefenderResponse { - return v.Defender - }).(ManagedClusterSecurityProfileDefenderResponsePtrOutput) +// Whether the pod identity addon is enabled. +func (o ManagedClusterPodIdentityProfileResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// Image Cleaner settings for the security profile. -func (o ManagedClusterSecurityProfileResponseOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileImageCleanerResponse { - return v.ImageCleaner - }).(ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) +// The pod identities to use in the cluster. +func (o ManagedClusterPodIdentityProfileResponseOutput) UserAssignedIdentities() ManagedClusterPodIdentityResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityResponse { + return v.UserAssignedIdentities + }).(ManagedClusterPodIdentityResponseArrayOutput) } -// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. -func (o ManagedClusterSecurityProfileResponseOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileWorkloadIdentityResponse { - return v.WorkloadIdentity - }).(ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) +// The pod identity exceptions to allow. +func (o ManagedClusterPodIdentityProfileResponseOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityExceptionResponse { + return v.UserAssignedIdentityExceptions + }).(ManagedClusterPodIdentityExceptionResponseArrayOutput) } -type ManagedClusterSecurityProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterPodIdentityProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileResponse)(nil)).Elem() +func (ManagedClusterPodIdentityProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPodIdentityProfileResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileResponsePtrOutput) ToManagedClusterSecurityProfileResponsePtrOutput() ManagedClusterSecurityProfileResponsePtrOutput { +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) ToManagedClusterPodIdentityProfileResponsePtrOutput() ManagedClusterPodIdentityProfileResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfileResponsePtrOutput) ToManagedClusterSecurityProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileResponsePtrOutput { +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) ToManagedClusterPodIdentityProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProfileResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfileResponsePtrOutput) Elem() ManagedClusterSecurityProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) ManagedClusterSecurityProfileResponse { +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) Elem() ManagedClusterPodIdentityProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) ManagedClusterPodIdentityProfileResponse { if v != nil { return *v } - var ret ManagedClusterSecurityProfileResponse + var ret ManagedClusterPodIdentityProfileResponse return ret - }).(ManagedClusterSecurityProfileResponseOutput) + }).(ManagedClusterPodIdentityProfileResponseOutput) } -// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. -func (o ManagedClusterSecurityProfileResponsePtrOutput) AzureKeyVaultKms() AzureKeyVaultKmsResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *AzureKeyVaultKmsResponse { +// Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information. +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) AllowNetworkPluginKubenet() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) *bool { if v == nil { return nil } - return v.AzureKeyVaultKms - }).(AzureKeyVaultKmsResponsePtrOutput) + return v.AllowNetworkPluginKubenet + }).(pulumi.BoolPtrOutput) } -// Microsoft Defender settings for the security profile. -func (o ManagedClusterSecurityProfileResponsePtrOutput) Defender() ManagedClusterSecurityProfileDefenderResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileDefenderResponse { +// Whether the pod identity addon is enabled. +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) *bool { if v == nil { return nil } - return v.Defender - }).(ManagedClusterSecurityProfileDefenderResponsePtrOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Image Cleaner settings for the security profile. -func (o ManagedClusterSecurityProfileResponsePtrOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileImageCleanerResponse { +// The pod identities to use in the cluster. +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) UserAssignedIdentities() ManagedClusterPodIdentityResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityResponse { if v == nil { return nil } - return v.ImageCleaner - }).(ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) + return v.UserAssignedIdentities + }).(ManagedClusterPodIdentityResponseArrayOutput) } -// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. -func (o ManagedClusterSecurityProfileResponsePtrOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileWorkloadIdentityResponse { +// The pod identity exceptions to allow. +func (o ManagedClusterPodIdentityProfileResponsePtrOutput) UserAssignedIdentityExceptions() ManagedClusterPodIdentityExceptionResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProfileResponse) []ManagedClusterPodIdentityExceptionResponse { if v == nil { return nil } - return v.WorkloadIdentity - }).(ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) + return v.UserAssignedIdentityExceptions + }).(ManagedClusterPodIdentityExceptionResponseArrayOutput) } -// Workload identity settings for the security profile. -type ManagedClusterSecurityProfileWorkloadIdentity struct { - // Whether to enable workload identity. - Enabled *bool `pulumi:"enabled"` +// An error response from the pod identity provisioning. +type ManagedClusterPodIdentityProvisioningErrorBodyResponse struct { + // An identifier for the error. Codes are invariant and are intended to be consumed programmatically. + Code *string `pulumi:"code"` + // A list of additional details about the error. + Details []ManagedClusterPodIdentityProvisioningErrorBodyResponse `pulumi:"details"` + // A message describing the error, intended to be suitable for display in a user interface. + Message *string `pulumi:"message"` + // The target of the particular error. For example, the name of the property in error. + Target *string `pulumi:"target"` } -// ManagedClusterSecurityProfileWorkloadIdentityInput is an input type that accepts ManagedClusterSecurityProfileWorkloadIdentityArgs and ManagedClusterSecurityProfileWorkloadIdentityOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileWorkloadIdentityInput` via: -// -// ManagedClusterSecurityProfileWorkloadIdentityArgs{...} -type ManagedClusterSecurityProfileWorkloadIdentityInput interface { - pulumi.Input +// An error response from the pod identity provisioning. +type ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput struct{ *pulumi.OutputState } - ToManagedClusterSecurityProfileWorkloadIdentityOutput() ManagedClusterSecurityProfileWorkloadIdentityOutput - ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(context.Context) ManagedClusterSecurityProfileWorkloadIdentityOutput +func (ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityProvisioningErrorBodyResponse)(nil)).Elem() } -// Workload identity settings for the security profile. -type ManagedClusterSecurityProfileWorkloadIdentityArgs struct { - // Whether to enable workload identity. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseOutput() ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { + return o } -func (ManagedClusterSecurityProfileWorkloadIdentityArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { + return o } -func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityOutput() ManagedClusterSecurityProfileWorkloadIdentityOutput { - return i.ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(context.Background()) +// An identifier for the error. Codes are invariant and are intended to be consumed programmatically. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Code() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { return v.Code }).(pulumi.StringPtrOutput) } -func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileWorkloadIdentityOutput) +// A list of additional details about the error. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Details() ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) []ManagedClusterPodIdentityProvisioningErrorBodyResponse { + return v.Details + }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) } -func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return i.ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Background()) +// A message describing the error, intended to be suitable for display in a user interface. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Message() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { return v.Message }).(pulumi.StringPtrOutput) } -func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileWorkloadIdentityOutput).ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx) +// The target of the particular error. For example, the name of the property in error. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) Target() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { return v.Target }).(pulumi.StringPtrOutput) } -// ManagedClusterSecurityProfileWorkloadIdentityPtrInput is an input type that accepts ManagedClusterSecurityProfileWorkloadIdentityArgs, ManagedClusterSecurityProfileWorkloadIdentityPtr and ManagedClusterSecurityProfileWorkloadIdentityPtrOutput values. -// You can construct a concrete instance of `ManagedClusterSecurityProfileWorkloadIdentityPtrInput` via: -// -// ManagedClusterSecurityProfileWorkloadIdentityArgs{...} -// -// or: -// -// nil -type ManagedClusterSecurityProfileWorkloadIdentityPtrInput interface { - pulumi.Input +type ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput struct{ *pulumi.OutputState } - ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput - ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput +func (ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPodIdentityProvisioningErrorBodyResponse)(nil)).Elem() } -type managedClusterSecurityProfileWorkloadIdentityPtrType ManagedClusterSecurityProfileWorkloadIdentityArgs +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput() ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { + return o +} -func ManagedClusterSecurityProfileWorkloadIdentityPtr(v *ManagedClusterSecurityProfileWorkloadIdentityArgs) ManagedClusterSecurityProfileWorkloadIdentityPtrInput { - return (*managedClusterSecurityProfileWorkloadIdentityPtrType)(v) +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { + return o } -func (*managedClusterSecurityProfileWorkloadIdentityPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Elem() ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) ManagedClusterPodIdentityProvisioningErrorBodyResponse { + if v != nil { + return *v + } + var ret ManagedClusterPodIdentityProvisioningErrorBodyResponse + return ret + }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) } -func (i *managedClusterSecurityProfileWorkloadIdentityPtrType) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return i.ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Background()) +// An identifier for the error. Codes are invariant and are intended to be consumed programmatically. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Code() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { + if v == nil { + return nil + } + return v.Code + }).(pulumi.StringPtrOutput) } -func (i *managedClusterSecurityProfileWorkloadIdentityPtrType) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) +// A list of additional details about the error. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Details() ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) []ManagedClusterPodIdentityProvisioningErrorBodyResponse { + if v == nil { + return nil + } + return v.Details + }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) } -// Workload identity settings for the security profile. -type ManagedClusterSecurityProfileWorkloadIdentityOutput struct{ *pulumi.OutputState } +// A message describing the error, intended to be suitable for display in a user interface. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Message() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { + if v == nil { + return nil + } + return v.Message + }).(pulumi.StringPtrOutput) +} -func (ManagedClusterSecurityProfileWorkloadIdentityOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() +// The target of the particular error. For example, the name of the property in error. +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) Target() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorBodyResponse) *string { + if v == nil { + return nil + } + return v.Target + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityOutput() ManagedClusterSecurityProfileWorkloadIdentityOutput { +type ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentityProvisioningErrorBodyResponse)(nil)).Elem() +} + +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput() ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { return o } -func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityOutput { +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) ToManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput { return o } -func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return o.ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Background()) +func (o ManagedClusterPodIdentityProvisioningErrorBodyResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityProvisioningErrorBodyResponse { + return vs[0].([]ManagedClusterPodIdentityProvisioningErrorBodyResponse)[vs[1].(int)] + }).(ManagedClusterPodIdentityProvisioningErrorBodyResponseOutput) +} + +// An error response from the pod identity provisioning. +type ManagedClusterPodIdentityProvisioningErrorResponse struct { + // Details about the error. + Error *ManagedClusterPodIdentityProvisioningErrorBodyResponse `pulumi:"error"` +} + +// An error response from the pod identity provisioning. +type ManagedClusterPodIdentityProvisioningErrorResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPodIdentityProvisioningErrorResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityProvisioningErrorResponse)(nil)).Elem() +} + +func (o ManagedClusterPodIdentityProvisioningErrorResponseOutput) ToManagedClusterPodIdentityProvisioningErrorResponseOutput() ManagedClusterPodIdentityProvisioningErrorResponseOutput { + return o } -func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileWorkloadIdentity) *ManagedClusterSecurityProfileWorkloadIdentity { - return &v - }).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) +func (o ManagedClusterPodIdentityProvisioningErrorResponseOutput) ToManagedClusterPodIdentityProvisioningErrorResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorResponseOutput { + return o } -// Whether to enable workload identity. -func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileWorkloadIdentity) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// Details about the error. +func (o ManagedClusterPodIdentityProvisioningErrorResponseOutput) Error() ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityProvisioningErrorResponse) *ManagedClusterPodIdentityProvisioningErrorBodyResponse { + return v.Error + }).(ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) } -type ManagedClusterSecurityProfileWorkloadIdentityPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() +func (ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPodIdentityProvisioningErrorResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { +func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorResponsePtrOutput() ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { +func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) ToManagedClusterPodIdentityProvisioningErrorResponsePtrOutputWithContext(ctx context.Context) ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput { return o } -func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) Elem() ManagedClusterSecurityProfileWorkloadIdentityOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentity) ManagedClusterSecurityProfileWorkloadIdentity { +func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) Elem() ManagedClusterPodIdentityProvisioningErrorResponseOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorResponse) ManagedClusterPodIdentityProvisioningErrorResponse { if v != nil { return *v } - var ret ManagedClusterSecurityProfileWorkloadIdentity + var ret ManagedClusterPodIdentityProvisioningErrorResponse return ret - }).(ManagedClusterSecurityProfileWorkloadIdentityOutput) + }).(ManagedClusterPodIdentityProvisioningErrorResponseOutput) } -// Whether to enable workload identity. -func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentity) *bool { +// Details about the error. +func (o ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) Error() ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterPodIdentityProvisioningErrorResponse) *ManagedClusterPodIdentityProvisioningErrorBodyResponse { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.Error + }).(ManagedClusterPodIdentityProvisioningErrorBodyResponsePtrOutput) } -// Workload identity settings for the security profile. -type ManagedClusterSecurityProfileWorkloadIdentityResponse struct { - // Whether to enable workload identity. - Enabled *bool `pulumi:"enabled"` +// Details about the pod identity assigned to the Managed Cluster. +type ManagedClusterPodIdentityResponse struct { + // The binding selector to use for the AzureIdentityBinding resource. + BindingSelector *string `pulumi:"bindingSelector"` + // The user assigned identity details. + Identity UserAssignedIdentityResponse `pulumi:"identity"` + // The name of the pod identity. + Name string `pulumi:"name"` + // The namespace of the pod identity. + Namespace string `pulumi:"namespace"` + ProvisioningInfo ManagedClusterPodIdentityResponseProvisioningInfo `pulumi:"provisioningInfo"` + // The current provisioning state of the pod identity. + ProvisioningState string `pulumi:"provisioningState"` } -// Workload identity settings for the security profile. -type ManagedClusterSecurityProfileWorkloadIdentityResponseOutput struct{ *pulumi.OutputState } +// Details about the pod identity assigned to the Managed Cluster. +type ManagedClusterPodIdentityResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterSecurityProfileWorkloadIdentityResponse)(nil)).Elem() +func (ManagedClusterPodIdentityResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityResponse)(nil)).Elem() } -func (o ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponseOutput() ManagedClusterSecurityProfileWorkloadIdentityResponseOutput { +func (o ManagedClusterPodIdentityResponseOutput) ToManagedClusterPodIdentityResponseOutput() ManagedClusterPodIdentityResponseOutput { return o } -func (o ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityResponseOutput { +func (o ManagedClusterPodIdentityResponseOutput) ToManagedClusterPodIdentityResponseOutputWithContext(ctx context.Context) ManagedClusterPodIdentityResponseOutput { return o } -// Whether to enable workload identity. -func (o ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterSecurityProfileWorkloadIdentityResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -type ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterSecurityProfileWorkloadIdentityResponse)(nil)).Elem() -} - -func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput() ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { - return o +// The binding selector to use for the AzureIdentityBinding resource. +func (o ManagedClusterPodIdentityResponseOutput) BindingSelector() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponse) *string { return v.BindingSelector }).(pulumi.StringPtrOutput) } -func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { - return o +// The user assigned identity details. +func (o ManagedClusterPodIdentityResponseOutput) Identity() UserAssignedIdentityResponseOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponse) UserAssignedIdentityResponse { return v.Identity }).(UserAssignedIdentityResponseOutput) } -func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) Elem() ManagedClusterSecurityProfileWorkloadIdentityResponseOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentityResponse) ManagedClusterSecurityProfileWorkloadIdentityResponse { - if v != nil { - return *v - } - var ret ManagedClusterSecurityProfileWorkloadIdentityResponse - return ret - }).(ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) +// The name of the pod identity. +func (o ManagedClusterPodIdentityResponseOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponse) string { return v.Name }).(pulumi.StringOutput) } -// Whether to enable workload identity. -func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentityResponse) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +// The namespace of the pod identity. +func (o ManagedClusterPodIdentityResponseOutput) Namespace() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponse) string { return v.Namespace }).(pulumi.StringOutput) } -// Information about a service principal identity for the cluster to use for manipulating Azure APIs. -type ManagedClusterServicePrincipalProfile struct { - // The ID for the service principal. - ClientId string `pulumi:"clientId"` - // The secret password associated with the service principal in plain text. - Secret *string `pulumi:"secret"` +func (o ManagedClusterPodIdentityResponseOutput) ProvisioningInfo() ManagedClusterPodIdentityResponseProvisioningInfoOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponse) ManagedClusterPodIdentityResponseProvisioningInfo { + return v.ProvisioningInfo + }).(ManagedClusterPodIdentityResponseProvisioningInfoOutput) } -// ManagedClusterServicePrincipalProfileInput is an input type that accepts ManagedClusterServicePrincipalProfileArgs and ManagedClusterServicePrincipalProfileOutput values. -// You can construct a concrete instance of `ManagedClusterServicePrincipalProfileInput` via: -// -// ManagedClusterServicePrincipalProfileArgs{...} -type ManagedClusterServicePrincipalProfileInput interface { - pulumi.Input - - ToManagedClusterServicePrincipalProfileOutput() ManagedClusterServicePrincipalProfileOutput - ToManagedClusterServicePrincipalProfileOutputWithContext(context.Context) ManagedClusterServicePrincipalProfileOutput +// The current provisioning state of the pod identity. +func (o ManagedClusterPodIdentityResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) } -// Information about a service principal identity for the cluster to use for manipulating Azure APIs. -type ManagedClusterServicePrincipalProfileArgs struct { - // The ID for the service principal. - ClientId pulumi.StringInput `pulumi:"clientId"` - // The secret password associated with the service principal in plain text. - Secret pulumi.StringPtrInput `pulumi:"secret"` -} +type ManagedClusterPodIdentityResponseArrayOutput struct{ *pulumi.OutputState } -func (ManagedClusterServicePrincipalProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterServicePrincipalProfile)(nil)).Elem() +func (ManagedClusterPodIdentityResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ManagedClusterPodIdentityResponse)(nil)).Elem() } -func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfileOutput() ManagedClusterServicePrincipalProfileOutput { - return i.ToManagedClusterServicePrincipalProfileOutputWithContext(context.Background()) +func (o ManagedClusterPodIdentityResponseArrayOutput) ToManagedClusterPodIdentityResponseArrayOutput() ManagedClusterPodIdentityResponseArrayOutput { + return o } -func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfileOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterServicePrincipalProfileOutput) +func (o ManagedClusterPodIdentityResponseArrayOutput) ToManagedClusterPodIdentityResponseArrayOutputWithContext(ctx context.Context) ManagedClusterPodIdentityResponseArrayOutput { + return o } -func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { - return i.ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterPodIdentityResponseArrayOutput) Index(i pulumi.IntInput) ManagedClusterPodIdentityResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ManagedClusterPodIdentityResponse { + return vs[0].([]ManagedClusterPodIdentityResponse)[vs[1].(int)] + }).(ManagedClusterPodIdentityResponseOutput) } -func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterServicePrincipalProfileOutput).ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx) +type ManagedClusterPodIdentityResponseProvisioningInfo struct { + // Pod identity assignment error (if any). + Error *ManagedClusterPodIdentityProvisioningErrorResponse `pulumi:"error"` } -// ManagedClusterServicePrincipalProfilePtrInput is an input type that accepts ManagedClusterServicePrincipalProfileArgs, ManagedClusterServicePrincipalProfilePtr and ManagedClusterServicePrincipalProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterServicePrincipalProfilePtrInput` via: -// -// ManagedClusterServicePrincipalProfileArgs{...} -// -// or: -// -// nil -type ManagedClusterServicePrincipalProfilePtrInput interface { - pulumi.Input +type ManagedClusterPodIdentityResponseProvisioningInfoOutput struct{ *pulumi.OutputState } - ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput - ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Context) ManagedClusterServicePrincipalProfilePtrOutput +func (ManagedClusterPodIdentityResponseProvisioningInfoOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPodIdentityResponseProvisioningInfo)(nil)).Elem() } -type managedClusterServicePrincipalProfilePtrType ManagedClusterServicePrincipalProfileArgs - -func ManagedClusterServicePrincipalProfilePtr(v *ManagedClusterServicePrincipalProfileArgs) ManagedClusterServicePrincipalProfilePtrInput { - return (*managedClusterServicePrincipalProfilePtrType)(v) +func (o ManagedClusterPodIdentityResponseProvisioningInfoOutput) ToManagedClusterPodIdentityResponseProvisioningInfoOutput() ManagedClusterPodIdentityResponseProvisioningInfoOutput { + return o } -func (*managedClusterServicePrincipalProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterServicePrincipalProfile)(nil)).Elem() +func (o ManagedClusterPodIdentityResponseProvisioningInfoOutput) ToManagedClusterPodIdentityResponseProvisioningInfoOutputWithContext(ctx context.Context) ManagedClusterPodIdentityResponseProvisioningInfoOutput { + return o } -func (i *managedClusterServicePrincipalProfilePtrType) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { - return i.ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Background()) +// Pod identity assignment error (if any). +func (o ManagedClusterPodIdentityResponseProvisioningInfoOutput) Error() ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterPodIdentityResponseProvisioningInfo) *ManagedClusterPodIdentityProvisioningErrorResponse { + return v.Error + }).(ManagedClusterPodIdentityProvisioningErrorResponsePtrOutput) } -func (i *managedClusterServicePrincipalProfilePtrType) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterServicePrincipalProfilePtrOutput) +// Parameters to be applied to the cluster-autoscaler when enabled +type ManagedClusterPropertiesAutoScalerProfile struct { + // Valid values are 'true' and 'false' + BalanceSimilarNodeGroups *string `pulumi:"balanceSimilarNodeGroups"` + // If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. + DaemonsetEvictionForEmptyNodes *bool `pulumi:"daemonsetEvictionForEmptyNodes"` + // If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. + DaemonsetEvictionForOccupiedNodes *bool `pulumi:"daemonsetEvictionForOccupiedNodes"` + // If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. + Expander *string `pulumi:"expander"` + // If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. + IgnoreDaemonsetsUtilization *bool `pulumi:"ignoreDaemonsetsUtilization"` + // The default is 10. + MaxEmptyBulkDelete *string `pulumi:"maxEmptyBulkDelete"` + // The default is 600. + MaxGracefulTerminationSec *string `pulumi:"maxGracefulTerminationSec"` + // The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + MaxNodeProvisionTime *string `pulumi:"maxNodeProvisionTime"` + // The default is 45. The maximum is 100 and the minimum is 0. + MaxTotalUnreadyPercentage *string `pulumi:"maxTotalUnreadyPercentage"` + // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). + NewPodScaleUpDelay *string `pulumi:"newPodScaleUpDelay"` + // This must be an integer. The default is 3. + OkTotalUnreadyCount *string `pulumi:"okTotalUnreadyCount"` + // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterAdd *string `pulumi:"scaleDownDelayAfterAdd"` + // The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterDelete *string `pulumi:"scaleDownDelayAfterDelete"` + // The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterFailure *string `pulumi:"scaleDownDelayAfterFailure"` + // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownUnneededTime *string `pulumi:"scaleDownUnneededTime"` + // The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownUnreadyTime *string `pulumi:"scaleDownUnreadyTime"` + // The default is '0.5'. + ScaleDownUtilizationThreshold *string `pulumi:"scaleDownUtilizationThreshold"` + // The default is '10'. Values must be an integer number of seconds. + ScanInterval *string `pulumi:"scanInterval"` + // The default is true. + SkipNodesWithLocalStorage *string `pulumi:"skipNodesWithLocalStorage"` + // The default is true. + SkipNodesWithSystemPods *string `pulumi:"skipNodesWithSystemPods"` } -// Information about a service principal identity for the cluster to use for manipulating Azure APIs. -type ManagedClusterServicePrincipalProfileOutput struct{ *pulumi.OutputState } +// ManagedClusterPropertiesAutoScalerProfileInput is an input type that accepts ManagedClusterPropertiesAutoScalerProfileArgs and ManagedClusterPropertiesAutoScalerProfileOutput values. +// You can construct a concrete instance of `ManagedClusterPropertiesAutoScalerProfileInput` via: +// +// ManagedClusterPropertiesAutoScalerProfileArgs{...} +type ManagedClusterPropertiesAutoScalerProfileInput interface { + pulumi.Input -func (ManagedClusterServicePrincipalProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterServicePrincipalProfile)(nil)).Elem() + ToManagedClusterPropertiesAutoScalerProfileOutput() ManagedClusterPropertiesAutoScalerProfileOutput + ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(context.Context) ManagedClusterPropertiesAutoScalerProfileOutput } -func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfileOutput() ManagedClusterServicePrincipalProfileOutput { - return o +// Parameters to be applied to the cluster-autoscaler when enabled +type ManagedClusterPropertiesAutoScalerProfileArgs struct { + // Valid values are 'true' and 'false' + BalanceSimilarNodeGroups pulumi.StringPtrInput `pulumi:"balanceSimilarNodeGroups"` + // If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. + DaemonsetEvictionForEmptyNodes pulumi.BoolPtrInput `pulumi:"daemonsetEvictionForEmptyNodes"` + // If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. + DaemonsetEvictionForOccupiedNodes pulumi.BoolPtrInput `pulumi:"daemonsetEvictionForOccupiedNodes"` + // If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. + Expander pulumi.StringPtrInput `pulumi:"expander"` + // If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. + IgnoreDaemonsetsUtilization pulumi.BoolPtrInput `pulumi:"ignoreDaemonsetsUtilization"` + // The default is 10. + MaxEmptyBulkDelete pulumi.StringPtrInput `pulumi:"maxEmptyBulkDelete"` + // The default is 600. + MaxGracefulTerminationSec pulumi.StringPtrInput `pulumi:"maxGracefulTerminationSec"` + // The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + MaxNodeProvisionTime pulumi.StringPtrInput `pulumi:"maxNodeProvisionTime"` + // The default is 45. The maximum is 100 and the minimum is 0. + MaxTotalUnreadyPercentage pulumi.StringPtrInput `pulumi:"maxTotalUnreadyPercentage"` + // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). + NewPodScaleUpDelay pulumi.StringPtrInput `pulumi:"newPodScaleUpDelay"` + // This must be an integer. The default is 3. + OkTotalUnreadyCount pulumi.StringPtrInput `pulumi:"okTotalUnreadyCount"` + // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterAdd pulumi.StringPtrInput `pulumi:"scaleDownDelayAfterAdd"` + // The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterDelete pulumi.StringPtrInput `pulumi:"scaleDownDelayAfterDelete"` + // The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterFailure pulumi.StringPtrInput `pulumi:"scaleDownDelayAfterFailure"` + // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownUnneededTime pulumi.StringPtrInput `pulumi:"scaleDownUnneededTime"` + // The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownUnreadyTime pulumi.StringPtrInput `pulumi:"scaleDownUnreadyTime"` + // The default is '0.5'. + ScaleDownUtilizationThreshold pulumi.StringPtrInput `pulumi:"scaleDownUtilizationThreshold"` + // The default is '10'. Values must be an integer number of seconds. + ScanInterval pulumi.StringPtrInput `pulumi:"scanInterval"` + // The default is true. + SkipNodesWithLocalStorage pulumi.StringPtrInput `pulumi:"skipNodesWithLocalStorage"` + // The default is true. + SkipNodesWithSystemPods pulumi.StringPtrInput `pulumi:"skipNodesWithSystemPods"` } -func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfileOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileOutput { - return o +func (ManagedClusterPropertiesAutoScalerProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() } -func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { - return o.ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfileOutput() ManagedClusterPropertiesAutoScalerProfileOutput { + return i.ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(context.Background()) } -func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterServicePrincipalProfile) *ManagedClusterServicePrincipalProfile { - return &v - }).(ManagedClusterServicePrincipalProfilePtrOutput) +func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPropertiesAutoScalerProfileOutput) } -// The ID for the service principal. -func (o ManagedClusterServicePrincipalProfileOutput) ClientId() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterServicePrincipalProfile) string { return v.ClientId }).(pulumi.StringOutput) +func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { + return i.ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Background()) } -// The secret password associated with the service principal in plain text. -func (o ManagedClusterServicePrincipalProfileOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterServicePrincipalProfile) *string { return v.Secret }).(pulumi.StringPtrOutput) +func (i ManagedClusterPropertiesAutoScalerProfileArgs) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPropertiesAutoScalerProfileOutput).ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx) } -type ManagedClusterServicePrincipalProfilePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterServicePrincipalProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterServicePrincipalProfile)(nil)).Elem() -} +// ManagedClusterPropertiesAutoScalerProfilePtrInput is an input type that accepts ManagedClusterPropertiesAutoScalerProfileArgs, ManagedClusterPropertiesAutoScalerProfilePtr and ManagedClusterPropertiesAutoScalerProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterPropertiesAutoScalerProfilePtrInput` via: +// +// ManagedClusterPropertiesAutoScalerProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterPropertiesAutoScalerProfilePtrInput interface { + pulumi.Input -func (o ManagedClusterServicePrincipalProfilePtrOutput) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { - return o + ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput + ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput } -func (o ManagedClusterServicePrincipalProfilePtrOutput) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { - return o -} +type managedClusterPropertiesAutoScalerProfilePtrType ManagedClusterPropertiesAutoScalerProfileArgs -func (o ManagedClusterServicePrincipalProfilePtrOutput) Elem() ManagedClusterServicePrincipalProfileOutput { - return o.ApplyT(func(v *ManagedClusterServicePrincipalProfile) ManagedClusterServicePrincipalProfile { - if v != nil { - return *v - } - var ret ManagedClusterServicePrincipalProfile - return ret - }).(ManagedClusterServicePrincipalProfileOutput) +func ManagedClusterPropertiesAutoScalerProfilePtr(v *ManagedClusterPropertiesAutoScalerProfileArgs) ManagedClusterPropertiesAutoScalerProfilePtrInput { + return (*managedClusterPropertiesAutoScalerProfilePtrType)(v) } -// The ID for the service principal. -func (o ManagedClusterServicePrincipalProfilePtrOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterServicePrincipalProfile) *string { - if v == nil { - return nil - } - return &v.ClientId - }).(pulumi.StringPtrOutput) +func (*managedClusterPropertiesAutoScalerProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() } -// The secret password associated with the service principal in plain text. -func (o ManagedClusterServicePrincipalProfilePtrOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterServicePrincipalProfile) *string { - if v == nil { - return nil - } - return v.Secret - }).(pulumi.StringPtrOutput) +func (i *managedClusterPropertiesAutoScalerProfilePtrType) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { + return i.ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Background()) } -// Information about a service principal identity for the cluster to use for manipulating Azure APIs. -type ManagedClusterServicePrincipalProfileResponse struct { - // The ID for the service principal. - ClientId string `pulumi:"clientId"` - // The secret password associated with the service principal in plain text. - Secret *string `pulumi:"secret"` +func (i *managedClusterPropertiesAutoScalerProfilePtrType) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterPropertiesAutoScalerProfilePtrOutput) } -// Information about a service principal identity for the cluster to use for manipulating Azure APIs. -type ManagedClusterServicePrincipalProfileResponseOutput struct{ *pulumi.OutputState } +// Parameters to be applied to the cluster-autoscaler when enabled +type ManagedClusterPropertiesAutoScalerProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterServicePrincipalProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterServicePrincipalProfileResponse)(nil)).Elem() +func (ManagedClusterPropertiesAutoScalerProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() } -func (o ManagedClusterServicePrincipalProfileResponseOutput) ToManagedClusterServicePrincipalProfileResponseOutput() ManagedClusterServicePrincipalProfileResponseOutput { +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfileOutput() ManagedClusterPropertiesAutoScalerProfileOutput { return o } -func (o ManagedClusterServicePrincipalProfileResponseOutput) ToManagedClusterServicePrincipalProfileResponseOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileResponseOutput { +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfileOutput { return o } -// The ID for the service principal. -func (o ManagedClusterServicePrincipalProfileResponseOutput) ClientId() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterServicePrincipalProfileResponse) string { return v.ClientId }).(pulumi.StringOutput) -} - -// The secret password associated with the service principal in plain text. -func (o ManagedClusterServicePrincipalProfileResponseOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterServicePrincipalProfileResponse) *string { return v.Secret }).(pulumi.StringPtrOutput) -} - -type ManagedClusterServicePrincipalProfileResponsePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterServicePrincipalProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterServicePrincipalProfileResponse)(nil)).Elem() +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { + return o.ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) ToManagedClusterServicePrincipalProfileResponsePtrOutput() ManagedClusterServicePrincipalProfileResponsePtrOutput { - return o +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterPropertiesAutoScalerProfile) *ManagedClusterPropertiesAutoScalerProfile { + return &v + }).(ManagedClusterPropertiesAutoScalerProfilePtrOutput) } -func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) ToManagedClusterServicePrincipalProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileResponsePtrOutput { - return o +// Valid values are 'true' and 'false' +func (o ManagedClusterPropertiesAutoScalerProfileOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.BalanceSimilarNodeGroups }).(pulumi.StringPtrOutput) } -func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) Elem() ManagedClusterServicePrincipalProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterServicePrincipalProfileResponse) ManagedClusterServicePrincipalProfileResponse { - if v != nil { - return *v - } - var ret ManagedClusterServicePrincipalProfileResponse - return ret - }).(ManagedClusterServicePrincipalProfileResponseOutput) +// If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) DaemonsetEvictionForEmptyNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *bool { return v.DaemonsetEvictionForEmptyNodes }).(pulumi.BoolPtrOutput) } -// The ID for the service principal. -func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterServicePrincipalProfileResponse) *string { - if v == nil { - return nil - } - return &v.ClientId - }).(pulumi.StringPtrOutput) +// If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) DaemonsetEvictionForOccupiedNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *bool { return v.DaemonsetEvictionForOccupiedNodes }).(pulumi.BoolPtrOutput) } -// The secret password associated with the service principal in plain text. -func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterServicePrincipalProfileResponse) *string { - if v == nil { - return nil - } - return v.Secret - }).(pulumi.StringPtrOutput) +// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) Expander() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.Expander }).(pulumi.StringPtrOutput) } -// Storage profile for the container service cluster. -type ManagedClusterStorageProfile struct { - // AzureBlob CSI Driver settings for the storage profile. - BlobCSIDriver *ManagedClusterStorageProfileBlobCSIDriver `pulumi:"blobCSIDriver"` - // AzureDisk CSI Driver settings for the storage profile. - DiskCSIDriver *ManagedClusterStorageProfileDiskCSIDriver `pulumi:"diskCSIDriver"` - // AzureFile CSI Driver settings for the storage profile. - FileCSIDriver *ManagedClusterStorageProfileFileCSIDriver `pulumi:"fileCSIDriver"` - // Snapshot Controller settings for the storage profile. - SnapshotController *ManagedClusterStorageProfileSnapshotController `pulumi:"snapshotController"` +// If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) IgnoreDaemonsetsUtilization() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *bool { return v.IgnoreDaemonsetsUtilization }).(pulumi.BoolPtrOutput) } -// ManagedClusterStorageProfileInput is an input type that accepts ManagedClusterStorageProfileArgs and ManagedClusterStorageProfileOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileInput` via: -// -// ManagedClusterStorageProfileArgs{...} -type ManagedClusterStorageProfileInput interface { - pulumi.Input - - ToManagedClusterStorageProfileOutput() ManagedClusterStorageProfileOutput - ToManagedClusterStorageProfileOutputWithContext(context.Context) ManagedClusterStorageProfileOutput +// The default is 10. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxEmptyBulkDelete }).(pulumi.StringPtrOutput) } -// Storage profile for the container service cluster. -type ManagedClusterStorageProfileArgs struct { - // AzureBlob CSI Driver settings for the storage profile. - BlobCSIDriver ManagedClusterStorageProfileBlobCSIDriverPtrInput `pulumi:"blobCSIDriver"` - // AzureDisk CSI Driver settings for the storage profile. - DiskCSIDriver ManagedClusterStorageProfileDiskCSIDriverPtrInput `pulumi:"diskCSIDriver"` - // AzureFile CSI Driver settings for the storage profile. - FileCSIDriver ManagedClusterStorageProfileFileCSIDriverPtrInput `pulumi:"fileCSIDriver"` - // Snapshot Controller settings for the storage profile. - SnapshotController ManagedClusterStorageProfileSnapshotControllerPtrInput `pulumi:"snapshotController"` +// The default is 600. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxGracefulTerminationSec }).(pulumi.StringPtrOutput) } -func (ManagedClusterStorageProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfile)(nil)).Elem() +// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxNodeProvisionTime }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfileOutput() ManagedClusterStorageProfileOutput { - return i.ToManagedClusterStorageProfileOutputWithContext(context.Background()) +// The default is 45. The maximum is 100 and the minimum is 0. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.MaxTotalUnreadyPercentage }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfileOutputWithContext(ctx context.Context) ManagedClusterStorageProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileOutput) +// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). +func (o ManagedClusterPropertiesAutoScalerProfileOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.NewPodScaleUpDelay }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { - return i.ToManagedClusterStorageProfilePtrOutputWithContext(context.Background()) +// This must be an integer. The default is 3. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.OkTotalUnreadyCount }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileOutput).ToManagedClusterStorageProfilePtrOutputWithContext(ctx) +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownDelayAfterAdd }).(pulumi.StringPtrOutput) } -// ManagedClusterStorageProfilePtrInput is an input type that accepts ManagedClusterStorageProfileArgs, ManagedClusterStorageProfilePtr and ManagedClusterStorageProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfilePtrInput` via: -// -// ManagedClusterStorageProfileArgs{...} -// -// or: -// -// nil -type ManagedClusterStorageProfilePtrInput interface { - pulumi.Input +// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownDelayAfterDelete }).(pulumi.StringPtrOutput) +} - ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput - ToManagedClusterStorageProfilePtrOutputWithContext(context.Context) ManagedClusterStorageProfilePtrOutput +// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownDelayAfterFailure }).(pulumi.StringPtrOutput) } -type managedClusterStorageProfilePtrType ManagedClusterStorageProfileArgs +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownUnneededTime }).(pulumi.StringPtrOutput) +} -func ManagedClusterStorageProfilePtr(v *ManagedClusterStorageProfileArgs) ManagedClusterStorageProfilePtrInput { - return (*managedClusterStorageProfilePtrType)(v) +// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownUnreadyTime }).(pulumi.StringPtrOutput) } -func (*managedClusterStorageProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfile)(nil)).Elem() +// The default is '0.5'. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScaleDownUtilizationThreshold }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfilePtrType) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { - return i.ToManagedClusterStorageProfilePtrOutputWithContext(context.Background()) +// The default is '10'. Values must be an integer number of seconds. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) ScanInterval() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.ScanInterval }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfilePtrType) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfilePtrOutput) +// The default is true. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.SkipNodesWithLocalStorage }).(pulumi.StringPtrOutput) } -// Storage profile for the container service cluster. -type ManagedClusterStorageProfileOutput struct{ *pulumi.OutputState } +// The default is true. +func (o ManagedClusterPropertiesAutoScalerProfileOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesAutoScalerProfile) *string { return v.SkipNodesWithSystemPods }).(pulumi.StringPtrOutput) +} -func (ManagedClusterStorageProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfile)(nil)).Elem() +type ManagedClusterPropertiesAutoScalerProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterPropertiesAutoScalerProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPropertiesAutoScalerProfile)(nil)).Elem() } -func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfileOutput() ManagedClusterStorageProfileOutput { +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutput() ManagedClusterPropertiesAutoScalerProfilePtrOutput { return o } -func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfileOutputWithContext(ctx context.Context) ManagedClusterStorageProfileOutput { +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ToManagedClusterPropertiesAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesAutoScalerProfilePtrOutput { return o } -func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { - return o.ToManagedClusterStorageProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) Elem() ManagedClusterPropertiesAutoScalerProfileOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) ManagedClusterPropertiesAutoScalerProfile { + if v != nil { + return *v + } + var ret ManagedClusterPropertiesAutoScalerProfile + return ret + }).(ManagedClusterPropertiesAutoScalerProfileOutput) } -func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfile) *ManagedClusterStorageProfile { - return &v - }).(ManagedClusterStorageProfilePtrOutput) +// Valid values are 'true' and 'false' +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.BalanceSimilarNodeGroups + }).(pulumi.StringPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileBlobCSIDriver { - return v.BlobCSIDriver - }).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) +// If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) DaemonsetEvictionForEmptyNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *bool { + if v == nil { + return nil + } + return v.DaemonsetEvictionForEmptyNodes + }).(pulumi.BoolPtrOutput) } -// AzureDisk CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileDiskCSIDriver { - return v.DiskCSIDriver - }).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) +// If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) DaemonsetEvictionForOccupiedNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *bool { + if v == nil { + return nil + } + return v.DaemonsetEvictionForOccupiedNodes + }).(pulumi.BoolPtrOutput) } -// AzureFile CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileFileCSIDriver { - return v.FileCSIDriver - }).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) +// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) Expander() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.Expander + }).(pulumi.StringPtrOutput) } -// Snapshot Controller settings for the storage profile. -func (o ManagedClusterStorageProfileOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileSnapshotController { - return v.SnapshotController - }).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) +// If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) IgnoreDaemonsetsUtilization() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *bool { + if v == nil { + return nil + } + return v.IgnoreDaemonsetsUtilization + }).(pulumi.BoolPtrOutput) } -type ManagedClusterStorageProfilePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterStorageProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfile)(nil)).Elem() +// The default is 10. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxEmptyBulkDelete + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfilePtrOutput) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { - return o +// The default is 600. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxGracefulTerminationSec + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfilePtrOutput) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { - return o +// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxNodeProvisionTime + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfilePtrOutput) Elem() ManagedClusterStorageProfileOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfile) ManagedClusterStorageProfile { - if v != nil { - return *v +// The default is 45. The maximum is 100 and the minimum is 0. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil } - var ret ManagedClusterStorageProfile - return ret - }).(ManagedClusterStorageProfileOutput) + return v.MaxTotalUnreadyPercentage + }).(pulumi.StringPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfilePtrOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileBlobCSIDriver { +// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { if v == nil { return nil } - return v.BlobCSIDriver - }).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) + return v.NewPodScaleUpDelay + }).(pulumi.StringPtrOutput) } -// AzureDisk CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfilePtrOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileDiskCSIDriver { +// This must be an integer. The default is 3. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { if v == nil { return nil } - return v.DiskCSIDriver - }).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) + return v.OkTotalUnreadyCount + }).(pulumi.StringPtrOutput) } -// AzureFile CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfilePtrOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileFileCSIDriver { +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { if v == nil { return nil } - return v.FileCSIDriver - }).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) + return v.ScaleDownDelayAfterAdd + }).(pulumi.StringPtrOutput) } -// Snapshot Controller settings for the storage profile. -func (o ManagedClusterStorageProfilePtrOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileSnapshotController { +// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { if v == nil { return nil } - return v.SnapshotController - }).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) + return v.ScaleDownDelayAfterDelete + }).(pulumi.StringPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileBlobCSIDriver struct { - // Whether to enable AzureBlob CSI Driver. The default value is false. - Enabled *bool `pulumi:"enabled"` +// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownDelayAfterFailure + }).(pulumi.StringPtrOutput) } -// ManagedClusterStorageProfileBlobCSIDriverInput is an input type that accepts ManagedClusterStorageProfileBlobCSIDriverArgs and ManagedClusterStorageProfileBlobCSIDriverOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileBlobCSIDriverInput` via: -// -// ManagedClusterStorageProfileBlobCSIDriverArgs{...} -type ManagedClusterStorageProfileBlobCSIDriverInput interface { - pulumi.Input - - ToManagedClusterStorageProfileBlobCSIDriverOutput() ManagedClusterStorageProfileBlobCSIDriverOutput - ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(context.Context) ManagedClusterStorageProfileBlobCSIDriverOutput +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownUnneededTime + }).(pulumi.StringPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileBlobCSIDriverArgs struct { - // Whether to enable AzureBlob CSI Driver. The default value is false. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownUnreadyTime + }).(pulumi.StringPtrOutput) } -func (ManagedClusterStorageProfileBlobCSIDriverArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() +// The default is '0.5'. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownUtilizationThreshold + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverOutput() ManagedClusterStorageProfileBlobCSIDriverOutput { - return i.ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(context.Background()) +// The default is '10'. Values must be an integer number of seconds. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) ScanInterval() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScanInterval + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileBlobCSIDriverOutput) +// The default is true. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.SkipNodesWithLocalStorage + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return i.ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Background()) +// The default is true. +func (o ManagedClusterPropertiesAutoScalerProfilePtrOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.SkipNodesWithSystemPods + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileBlobCSIDriverOutput).ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx) +// Parameters to be applied to the cluster-autoscaler when enabled +type ManagedClusterPropertiesResponseAutoScalerProfile struct { + // Valid values are 'true' and 'false' + BalanceSimilarNodeGroups *string `pulumi:"balanceSimilarNodeGroups"` + // If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. + DaemonsetEvictionForEmptyNodes *bool `pulumi:"daemonsetEvictionForEmptyNodes"` + // If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. + DaemonsetEvictionForOccupiedNodes *bool `pulumi:"daemonsetEvictionForOccupiedNodes"` + // If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. + Expander *string `pulumi:"expander"` + // If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. + IgnoreDaemonsetsUtilization *bool `pulumi:"ignoreDaemonsetsUtilization"` + // The default is 10. + MaxEmptyBulkDelete *string `pulumi:"maxEmptyBulkDelete"` + // The default is 600. + MaxGracefulTerminationSec *string `pulumi:"maxGracefulTerminationSec"` + // The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + MaxNodeProvisionTime *string `pulumi:"maxNodeProvisionTime"` + // The default is 45. The maximum is 100 and the minimum is 0. + MaxTotalUnreadyPercentage *string `pulumi:"maxTotalUnreadyPercentage"` + // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). + NewPodScaleUpDelay *string `pulumi:"newPodScaleUpDelay"` + // This must be an integer. The default is 3. + OkTotalUnreadyCount *string `pulumi:"okTotalUnreadyCount"` + // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterAdd *string `pulumi:"scaleDownDelayAfterAdd"` + // The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterDelete *string `pulumi:"scaleDownDelayAfterDelete"` + // The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownDelayAfterFailure *string `pulumi:"scaleDownDelayAfterFailure"` + // The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownUnneededTime *string `pulumi:"scaleDownUnneededTime"` + // The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. + ScaleDownUnreadyTime *string `pulumi:"scaleDownUnreadyTime"` + // The default is '0.5'. + ScaleDownUtilizationThreshold *string `pulumi:"scaleDownUtilizationThreshold"` + // The default is '10'. Values must be an integer number of seconds. + ScanInterval *string `pulumi:"scanInterval"` + // The default is true. + SkipNodesWithLocalStorage *string `pulumi:"skipNodesWithLocalStorage"` + // The default is true. + SkipNodesWithSystemPods *string `pulumi:"skipNodesWithSystemPods"` } -// ManagedClusterStorageProfileBlobCSIDriverPtrInput is an input type that accepts ManagedClusterStorageProfileBlobCSIDriverArgs, ManagedClusterStorageProfileBlobCSIDriverPtr and ManagedClusterStorageProfileBlobCSIDriverPtrOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileBlobCSIDriverPtrInput` via: -// -// ManagedClusterStorageProfileBlobCSIDriverArgs{...} -// -// or: -// -// nil -type ManagedClusterStorageProfileBlobCSIDriverPtrInput interface { - pulumi.Input +// Parameters to be applied to the cluster-autoscaler when enabled +type ManagedClusterPropertiesResponseAutoScalerProfileOutput struct{ *pulumi.OutputState } - ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput - ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput +func (ManagedClusterPropertiesResponseAutoScalerProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterPropertiesResponseAutoScalerProfile)(nil)).Elem() } -type managedClusterStorageProfileBlobCSIDriverPtrType ManagedClusterStorageProfileBlobCSIDriverArgs - -func ManagedClusterStorageProfileBlobCSIDriverPtr(v *ManagedClusterStorageProfileBlobCSIDriverArgs) ManagedClusterStorageProfileBlobCSIDriverPtrInput { - return (*managedClusterStorageProfileBlobCSIDriverPtrType)(v) +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ToManagedClusterPropertiesResponseAutoScalerProfileOutput() ManagedClusterPropertiesResponseAutoScalerProfileOutput { + return o } -func (*managedClusterStorageProfileBlobCSIDriverPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ToManagedClusterPropertiesResponseAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterPropertiesResponseAutoScalerProfileOutput { + return o } -func (i *managedClusterStorageProfileBlobCSIDriverPtrType) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return i.ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Background()) +// Valid values are 'true' and 'false' +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.BalanceSimilarNodeGroups }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfileBlobCSIDriverPtrType) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) +// If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) DaemonsetEvictionForEmptyNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *bool { + return v.DaemonsetEvictionForEmptyNodes + }).(pulumi.BoolPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileBlobCSIDriverOutput struct{ *pulumi.OutputState } - -func (ManagedClusterStorageProfileBlobCSIDriverOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() +// If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) DaemonsetEvictionForOccupiedNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *bool { + return v.DaemonsetEvictionForOccupiedNodes + }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverOutput() ManagedClusterStorageProfileBlobCSIDriverOutput { - return o +// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) Expander() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.Expander }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverOutput { - return o +// If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) IgnoreDaemonsetsUtilization() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *bool { return v.IgnoreDaemonsetsUtilization }).(pulumi.BoolPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return o.ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Background()) +// The default is 10. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxEmptyBulkDelete }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileBlobCSIDriver) *ManagedClusterStorageProfileBlobCSIDriver { - return &v - }).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) +// The default is 600. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxGracefulTerminationSec }).(pulumi.StringPtrOutput) } -// Whether to enable AzureBlob CSI Driver. The default value is false. -func (o ManagedClusterStorageProfileBlobCSIDriverOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileBlobCSIDriver) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxNodeProvisionTime }).(pulumi.StringPtrOutput) } -type ManagedClusterStorageProfileBlobCSIDriverPtrOutput struct{ *pulumi.OutputState } +// The default is 45. The maximum is 100 and the minimum is 0. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.MaxTotalUnreadyPercentage }).(pulumi.StringPtrOutput) +} -func (ManagedClusterStorageProfileBlobCSIDriverPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() +// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.NewPodScaleUpDelay }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return o +// This must be an integer. The default is 3. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.OkTotalUnreadyCount }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { - return o +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownDelayAfterAdd }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) Elem() ManagedClusterStorageProfileBlobCSIDriverOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriver) ManagedClusterStorageProfileBlobCSIDriver { - if v != nil { - return *v - } - var ret ManagedClusterStorageProfileBlobCSIDriver - return ret - }).(ManagedClusterStorageProfileBlobCSIDriverOutput) +// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownDelayAfterDelete }).(pulumi.StringPtrOutput) } -// Whether to enable AzureBlob CSI Driver. The default value is false. -func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriver) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownDelayAfterFailure }).(pulumi.StringPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileBlobCSIDriverResponse struct { - // Whether to enable AzureBlob CSI Driver. The default value is false. - Enabled *bool `pulumi:"enabled"` +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownUnneededTime }).(pulumi.StringPtrOutput) } -// AzureBlob CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileBlobCSIDriverResponseOutput struct{ *pulumi.OutputState } +// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScaleDownUnreadyTime }).(pulumi.StringPtrOutput) +} -func (ManagedClusterStorageProfileBlobCSIDriverResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileBlobCSIDriverResponse)(nil)).Elem() +// The default is '0.5'. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { + return v.ScaleDownUtilizationThreshold + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverResponseOutput) ToManagedClusterStorageProfileBlobCSIDriverResponseOutput() ManagedClusterStorageProfileBlobCSIDriverResponseOutput { - return o +// The default is '10'. Values must be an integer number of seconds. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) ScanInterval() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.ScanInterval }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileBlobCSIDriverResponseOutput) ToManagedClusterStorageProfileBlobCSIDriverResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverResponseOutput { - return o +// The default is true. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.SkipNodesWithLocalStorage }).(pulumi.StringPtrOutput) } -// Whether to enable AzureBlob CSI Driver. The default value is false. -func (o ManagedClusterStorageProfileBlobCSIDriverResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileBlobCSIDriverResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// The default is true. +func (o ManagedClusterPropertiesResponseAutoScalerProfileOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterPropertiesResponseAutoScalerProfile) *string { return v.SkipNodesWithSystemPods }).(pulumi.StringPtrOutput) } -type ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileBlobCSIDriverResponse)(nil)).Elem() +func (ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterPropertiesResponseAutoScalerProfile)(nil)).Elem() } -func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput() ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ToManagedClusterPropertiesResponseAutoScalerProfilePtrOutput() ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput { return o } -func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileBlobCSIDriverResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ToManagedClusterPropertiesResponseAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput { return o } -func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) Elem() ManagedClusterStorageProfileBlobCSIDriverResponseOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriverResponse) ManagedClusterStorageProfileBlobCSIDriverResponse { +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) Elem() ManagedClusterPropertiesResponseAutoScalerProfileOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) ManagedClusterPropertiesResponseAutoScalerProfile { if v != nil { return *v } - var ret ManagedClusterStorageProfileBlobCSIDriverResponse + var ret ManagedClusterPropertiesResponseAutoScalerProfile return ret - }).(ManagedClusterStorageProfileBlobCSIDriverResponseOutput) + }).(ManagedClusterPropertiesResponseAutoScalerProfileOutput) } -// Whether to enable AzureBlob CSI Driver. The default value is false. -func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriverResponse) *bool { +// Valid values are 'true' and 'false' +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) BalanceSimilarNodeGroups() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.BalanceSimilarNodeGroups + }).(pulumi.StringPtrOutput) } -// AzureDisk CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileDiskCSIDriver struct { - // Whether to enable AzureDisk CSI Driver. The default value is true. - Enabled *bool `pulumi:"enabled"` +// If set to true, all daemonset pods on empty nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) DaemonsetEvictionForEmptyNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *bool { + if v == nil { + return nil + } + return v.DaemonsetEvictionForEmptyNodes + }).(pulumi.BoolPtrOutput) } -// ManagedClusterStorageProfileDiskCSIDriverInput is an input type that accepts ManagedClusterStorageProfileDiskCSIDriverArgs and ManagedClusterStorageProfileDiskCSIDriverOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileDiskCSIDriverInput` via: -// -// ManagedClusterStorageProfileDiskCSIDriverArgs{...} -type ManagedClusterStorageProfileDiskCSIDriverInput interface { - pulumi.Input +// If set to true, all daemonset pods on occupied nodes will be evicted before deletion of the node. If the daemonset pod cannot be evicted another node will be chosen for scaling. If set to false, the node will be deleted without ensuring that daemonset pods are deleted or evicted. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) DaemonsetEvictionForOccupiedNodes() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *bool { + if v == nil { + return nil + } + return v.DaemonsetEvictionForOccupiedNodes + }).(pulumi.BoolPtrOutput) +} - ToManagedClusterStorageProfileDiskCSIDriverOutput() ManagedClusterStorageProfileDiskCSIDriverOutput - ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(context.Context) ManagedClusterStorageProfileDiskCSIDriverOutput +// If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) Expander() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.Expander + }).(pulumi.StringPtrOutput) } -// AzureDisk CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileDiskCSIDriverArgs struct { - // Whether to enable AzureDisk CSI Driver. The default value is true. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +// If set to true, the resources used by daemonset will be taken into account when making scaling down decisions. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) IgnoreDaemonsetsUtilization() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *bool { + if v == nil { + return nil + } + return v.IgnoreDaemonsetsUtilization + }).(pulumi.BoolPtrOutput) } -func (ManagedClusterStorageProfileDiskCSIDriverArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() +// The default is 10. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxEmptyBulkDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxEmptyBulkDelete + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverOutput() ManagedClusterStorageProfileDiskCSIDriverOutput { - return i.ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(context.Background()) +// The default is 600. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxGracefulTerminationSec() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxGracefulTerminationSec + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileDiskCSIDriverOutput) +// The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxNodeProvisionTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxNodeProvisionTime + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return i.ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Background()) +// The default is 45. The maximum is 100 and the minimum is 0. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) MaxTotalUnreadyPercentage() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.MaxTotalUnreadyPercentage + }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileDiskCSIDriverOutput).ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx) +// For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc). +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) NewPodScaleUpDelay() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.NewPodScaleUpDelay + }).(pulumi.StringPtrOutput) } -// ManagedClusterStorageProfileDiskCSIDriverPtrInput is an input type that accepts ManagedClusterStorageProfileDiskCSIDriverArgs, ManagedClusterStorageProfileDiskCSIDriverPtr and ManagedClusterStorageProfileDiskCSIDriverPtrOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileDiskCSIDriverPtrInput` via: -// -// ManagedClusterStorageProfileDiskCSIDriverArgs{...} -// -// or: -// -// nil -type ManagedClusterStorageProfileDiskCSIDriverPtrInput interface { - pulumi.Input - - ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput - ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput +// This must be an integer. The default is 3. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) OkTotalUnreadyCount() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.OkTotalUnreadyCount + }).(pulumi.StringPtrOutput) } -type managedClusterStorageProfileDiskCSIDriverPtrType ManagedClusterStorageProfileDiskCSIDriverArgs - -func ManagedClusterStorageProfileDiskCSIDriverPtr(v *ManagedClusterStorageProfileDiskCSIDriverArgs) ManagedClusterStorageProfileDiskCSIDriverPtrInput { - return (*managedClusterStorageProfileDiskCSIDriverPtrType)(v) +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownDelayAfterAdd() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownDelayAfterAdd + }).(pulumi.StringPtrOutput) } -func (*managedClusterStorageProfileDiskCSIDriverPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() +// The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownDelayAfterDelete() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownDelayAfterDelete + }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfileDiskCSIDriverPtrType) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return i.ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Background()) +// The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownDelayAfterFailure() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownDelayAfterFailure + }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfileDiskCSIDriverPtrType) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) +// The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownUnneededTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownUnneededTime + }).(pulumi.StringPtrOutput) } -// AzureDisk CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileDiskCSIDriverOutput struct{ *pulumi.OutputState } - -func (ManagedClusterStorageProfileDiskCSIDriverOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() +// The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownUnreadyTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownUnreadyTime + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverOutput() ManagedClusterStorageProfileDiskCSIDriverOutput { - return o +// The default is '0.5'. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScaleDownUtilizationThreshold() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScaleDownUtilizationThreshold + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverOutput { - return o +// The default is '10'. Values must be an integer number of seconds. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) ScanInterval() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.ScanInterval + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return o.ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Background()) +// The default is true. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) SkipNodesWithLocalStorage() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.SkipNodesWithLocalStorage + }).(pulumi.StringPtrOutput) } -func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileDiskCSIDriver) *ManagedClusterStorageProfileDiskCSIDriver { - return &v - }).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) +// The default is true. +func (o ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput) SkipNodesWithSystemPods() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterPropertiesResponseAutoScalerProfile) *string { + if v == nil { + return nil + } + return v.SkipNodesWithSystemPods + }).(pulumi.StringPtrOutput) } -// Whether to enable AzureDisk CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileDiskCSIDriverOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileDiskCSIDriver) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// The SKU of a Managed Cluster. +type ManagedClusterSKU struct { + // The name of a managed cluster SKU. + Name *string `pulumi:"name"` + // If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. + Tier *string `pulumi:"tier"` } -type ManagedClusterStorageProfileDiskCSIDriverPtrOutput struct{ *pulumi.OutputState } +// ManagedClusterSKUInput is an input type that accepts ManagedClusterSKUArgs and ManagedClusterSKUOutput values. +// You can construct a concrete instance of `ManagedClusterSKUInput` via: +// +// ManagedClusterSKUArgs{...} +type ManagedClusterSKUInput interface { + pulumi.Input -func (ManagedClusterStorageProfileDiskCSIDriverPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() + ToManagedClusterSKUOutput() ManagedClusterSKUOutput + ToManagedClusterSKUOutputWithContext(context.Context) ManagedClusterSKUOutput } -func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return o +// The SKU of a Managed Cluster. +type ManagedClusterSKUArgs struct { + // The name of a managed cluster SKU. + Name pulumi.StringPtrInput `pulumi:"name"` + // If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. + Tier pulumi.StringPtrInput `pulumi:"tier"` } -func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { - return o +func (ManagedClusterSKUArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSKU)(nil)).Elem() } -func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) Elem() ManagedClusterStorageProfileDiskCSIDriverOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriver) ManagedClusterStorageProfileDiskCSIDriver { - if v != nil { - return *v - } - var ret ManagedClusterStorageProfileDiskCSIDriver - return ret - }).(ManagedClusterStorageProfileDiskCSIDriverOutput) +func (i ManagedClusterSKUArgs) ToManagedClusterSKUOutput() ManagedClusterSKUOutput { + return i.ToManagedClusterSKUOutputWithContext(context.Background()) } -// Whether to enable AzureDisk CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriver) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +func (i ManagedClusterSKUArgs) ToManagedClusterSKUOutputWithContext(ctx context.Context) ManagedClusterSKUOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSKUOutput) } -// AzureDisk CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileDiskCSIDriverResponse struct { - // Whether to enable AzureDisk CSI Driver. The default value is true. - Enabled *bool `pulumi:"enabled"` +func (i ManagedClusterSKUArgs) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { + return i.ToManagedClusterSKUPtrOutputWithContext(context.Background()) } -// AzureDisk CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileDiskCSIDriverResponseOutput struct{ *pulumi.OutputState } +func (i ManagedClusterSKUArgs) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSKUOutput).ToManagedClusterSKUPtrOutputWithContext(ctx) +} -func (ManagedClusterStorageProfileDiskCSIDriverResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileDiskCSIDriverResponse)(nil)).Elem() +// ManagedClusterSKUPtrInput is an input type that accepts ManagedClusterSKUArgs, ManagedClusterSKUPtr and ManagedClusterSKUPtrOutput values. +// You can construct a concrete instance of `ManagedClusterSKUPtrInput` via: +// +// ManagedClusterSKUArgs{...} +// +// or: +// +// nil +type ManagedClusterSKUPtrInput interface { + pulumi.Input + + ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput + ToManagedClusterSKUPtrOutputWithContext(context.Context) ManagedClusterSKUPtrOutput } -func (o ManagedClusterStorageProfileDiskCSIDriverResponseOutput) ToManagedClusterStorageProfileDiskCSIDriverResponseOutput() ManagedClusterStorageProfileDiskCSIDriverResponseOutput { - return o -} +type managedClusterSKUPtrType ManagedClusterSKUArgs -func (o ManagedClusterStorageProfileDiskCSIDriverResponseOutput) ToManagedClusterStorageProfileDiskCSIDriverResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverResponseOutput { - return o +func ManagedClusterSKUPtr(v *ManagedClusterSKUArgs) ManagedClusterSKUPtrInput { + return (*managedClusterSKUPtrType)(v) } -// Whether to enable AzureDisk CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileDiskCSIDriverResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileDiskCSIDriverResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +func (*managedClusterSKUPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSKU)(nil)).Elem() } -type ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput struct{ *pulumi.OutputState } - -func (ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileDiskCSIDriverResponse)(nil)).Elem() +func (i *managedClusterSKUPtrType) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { + return i.ToManagedClusterSKUPtrOutputWithContext(context.Background()) } -func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput() ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { - return o +func (i *managedClusterSKUPtrType) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSKUPtrOutput) } -func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileDiskCSIDriverResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { - return o -} +// The SKU of a Managed Cluster. +type ManagedClusterSKUOutput struct{ *pulumi.OutputState } -func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) Elem() ManagedClusterStorageProfileDiskCSIDriverResponseOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriverResponse) ManagedClusterStorageProfileDiskCSIDriverResponse { - if v != nil { - return *v - } - var ret ManagedClusterStorageProfileDiskCSIDriverResponse - return ret - }).(ManagedClusterStorageProfileDiskCSIDriverResponseOutput) +func (ManagedClusterSKUOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSKU)(nil)).Elem() } -// Whether to enable AzureDisk CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriverResponse) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +func (o ManagedClusterSKUOutput) ToManagedClusterSKUOutput() ManagedClusterSKUOutput { + return o } -// AzureFile CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileFileCSIDriver struct { - // Whether to enable AzureFile CSI Driver. The default value is true. - Enabled *bool `pulumi:"enabled"` +func (o ManagedClusterSKUOutput) ToManagedClusterSKUOutputWithContext(ctx context.Context) ManagedClusterSKUOutput { + return o } -// ManagedClusterStorageProfileFileCSIDriverInput is an input type that accepts ManagedClusterStorageProfileFileCSIDriverArgs and ManagedClusterStorageProfileFileCSIDriverOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileFileCSIDriverInput` via: -// -// ManagedClusterStorageProfileFileCSIDriverArgs{...} -type ManagedClusterStorageProfileFileCSIDriverInput interface { - pulumi.Input - - ToManagedClusterStorageProfileFileCSIDriverOutput() ManagedClusterStorageProfileFileCSIDriverOutput - ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(context.Context) ManagedClusterStorageProfileFileCSIDriverOutput +func (o ManagedClusterSKUOutput) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { + return o.ToManagedClusterSKUPtrOutputWithContext(context.Background()) } -// AzureFile CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileFileCSIDriverArgs struct { - // Whether to enable AzureFile CSI Driver. The default value is true. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +func (o ManagedClusterSKUOutput) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSKU) *ManagedClusterSKU { + return &v + }).(ManagedClusterSKUPtrOutput) } -func (ManagedClusterStorageProfileFileCSIDriverArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() +// The name of a managed cluster SKU. +func (o ManagedClusterSKUOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterSKU) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverOutput() ManagedClusterStorageProfileFileCSIDriverOutput { - return i.ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(context.Background()) +// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. +func (o ManagedClusterSKUOutput) Tier() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterSKU) *string { return v.Tier }).(pulumi.StringPtrOutput) } -func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileFileCSIDriverOutput) -} +type ManagedClusterSKUPtrOutput struct{ *pulumi.OutputState } -func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return i.ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Background()) +func (ManagedClusterSKUPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSKU)(nil)).Elem() } -func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileFileCSIDriverOutput).ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx) +func (o ManagedClusterSKUPtrOutput) ToManagedClusterSKUPtrOutput() ManagedClusterSKUPtrOutput { + return o } -// ManagedClusterStorageProfileFileCSIDriverPtrInput is an input type that accepts ManagedClusterStorageProfileFileCSIDriverArgs, ManagedClusterStorageProfileFileCSIDriverPtr and ManagedClusterStorageProfileFileCSIDriverPtrOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileFileCSIDriverPtrInput` via: -// -// ManagedClusterStorageProfileFileCSIDriverArgs{...} -// -// or: -// -// nil -type ManagedClusterStorageProfileFileCSIDriverPtrInput interface { - pulumi.Input - - ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput - ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput +func (o ManagedClusterSKUPtrOutput) ToManagedClusterSKUPtrOutputWithContext(ctx context.Context) ManagedClusterSKUPtrOutput { + return o } -type managedClusterStorageProfileFileCSIDriverPtrType ManagedClusterStorageProfileFileCSIDriverArgs - -func ManagedClusterStorageProfileFileCSIDriverPtr(v *ManagedClusterStorageProfileFileCSIDriverArgs) ManagedClusterStorageProfileFileCSIDriverPtrInput { - return (*managedClusterStorageProfileFileCSIDriverPtrType)(v) +func (o ManagedClusterSKUPtrOutput) Elem() ManagedClusterSKUOutput { + return o.ApplyT(func(v *ManagedClusterSKU) ManagedClusterSKU { + if v != nil { + return *v + } + var ret ManagedClusterSKU + return ret + }).(ManagedClusterSKUOutput) } -func (*managedClusterStorageProfileFileCSIDriverPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() +// The name of a managed cluster SKU. +func (o ManagedClusterSKUPtrOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSKU) *string { + if v == nil { + return nil + } + return v.Name + }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfileFileCSIDriverPtrType) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return i.ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Background()) +// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. +func (o ManagedClusterSKUPtrOutput) Tier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSKU) *string { + if v == nil { + return nil + } + return v.Tier + }).(pulumi.StringPtrOutput) } -func (i *managedClusterStorageProfileFileCSIDriverPtrType) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) +// The SKU of a Managed Cluster. +type ManagedClusterSKUResponse struct { + // The name of a managed cluster SKU. + Name *string `pulumi:"name"` + // If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. + Tier *string `pulumi:"tier"` } -// AzureFile CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileFileCSIDriverOutput struct{ *pulumi.OutputState } +// The SKU of a Managed Cluster. +type ManagedClusterSKUResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterStorageProfileFileCSIDriverOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() +func (ManagedClusterSKUResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSKUResponse)(nil)).Elem() } -func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverOutput() ManagedClusterStorageProfileFileCSIDriverOutput { +func (o ManagedClusterSKUResponseOutput) ToManagedClusterSKUResponseOutput() ManagedClusterSKUResponseOutput { return o } -func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverOutput { +func (o ManagedClusterSKUResponseOutput) ToManagedClusterSKUResponseOutputWithContext(ctx context.Context) ManagedClusterSKUResponseOutput { return o } -func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return o.ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Background()) -} - -func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileFileCSIDriver) *ManagedClusterStorageProfileFileCSIDriver { - return &v - }).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) +// The name of a managed cluster SKU. +func (o ManagedClusterSKUResponseOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterSKUResponse) *string { return v.Name }).(pulumi.StringPtrOutput) } -// Whether to enable AzureFile CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileFileCSIDriverOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileFileCSIDriver) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. +func (o ManagedClusterSKUResponseOutput) Tier() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterSKUResponse) *string { return v.Tier }).(pulumi.StringPtrOutput) } -type ManagedClusterStorageProfileFileCSIDriverPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterSKUResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterStorageProfileFileCSIDriverPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() +func (ManagedClusterSKUResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSKUResponse)(nil)).Elem() } -func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { +func (o ManagedClusterSKUResponsePtrOutput) ToManagedClusterSKUResponsePtrOutput() ManagedClusterSKUResponsePtrOutput { return o } -func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { +func (o ManagedClusterSKUResponsePtrOutput) ToManagedClusterSKUResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSKUResponsePtrOutput { return o } -func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) Elem() ManagedClusterStorageProfileFileCSIDriverOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriver) ManagedClusterStorageProfileFileCSIDriver { +func (o ManagedClusterSKUResponsePtrOutput) Elem() ManagedClusterSKUResponseOutput { + return o.ApplyT(func(v *ManagedClusterSKUResponse) ManagedClusterSKUResponse { if v != nil { return *v } - var ret ManagedClusterStorageProfileFileCSIDriver + var ret ManagedClusterSKUResponse return ret - }).(ManagedClusterStorageProfileFileCSIDriverOutput) + }).(ManagedClusterSKUResponseOutput) } -// Whether to enable AzureFile CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriver) *bool { +// The name of a managed cluster SKU. +func (o ManagedClusterSKUResponsePtrOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSKUResponse) *string { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.Name + }).(pulumi.StringPtrOutput) +} + +// If not specified, the default is 'Free'. See [AKS Pricing Tier](https://learn.microsoft.com/azure/aks/free-standard-pricing-tiers) for more details. +func (o ManagedClusterSKUResponsePtrOutput) Tier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSKUResponse) *string { + if v == nil { + return nil + } + return v.Tier + }).(pulumi.StringPtrOutput) +} + +// Security profile for the container service cluster. +type ManagedClusterSecurityProfile struct { + // Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. + AzureKeyVaultKms *AzureKeyVaultKms `pulumi:"azureKeyVaultKms"` + // Microsoft Defender settings for the security profile. + Defender *ManagedClusterSecurityProfileDefender `pulumi:"defender"` + // Image Cleaner settings for the security profile. + ImageCleaner *ManagedClusterSecurityProfileImageCleaner `pulumi:"imageCleaner"` + // Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. + WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentity `pulumi:"workloadIdentity"` +} + +// Defaults sets the appropriate defaults for ManagedClusterSecurityProfile +func (val *ManagedClusterSecurityProfile) Defaults() *ManagedClusterSecurityProfile { + if val == nil { + return nil + } + tmp := *val + tmp.AzureKeyVaultKms = tmp.AzureKeyVaultKms.Defaults() + + return &tmp +} + +// ManagedClusterSecurityProfileInput is an input type that accepts ManagedClusterSecurityProfileArgs and ManagedClusterSecurityProfileOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileInput` via: +// +// ManagedClusterSecurityProfileArgs{...} +type ManagedClusterSecurityProfileInput interface { + pulumi.Input + + ToManagedClusterSecurityProfileOutput() ManagedClusterSecurityProfileOutput + ToManagedClusterSecurityProfileOutputWithContext(context.Context) ManagedClusterSecurityProfileOutput +} + +// Security profile for the container service cluster. +type ManagedClusterSecurityProfileArgs struct { + // Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. + AzureKeyVaultKms AzureKeyVaultKmsPtrInput `pulumi:"azureKeyVaultKms"` + // Microsoft Defender settings for the security profile. + Defender ManagedClusterSecurityProfileDefenderPtrInput `pulumi:"defender"` + // Image Cleaner settings for the security profile. + ImageCleaner ManagedClusterSecurityProfileImageCleanerPtrInput `pulumi:"imageCleaner"` + // Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. + WorkloadIdentity ManagedClusterSecurityProfileWorkloadIdentityPtrInput `pulumi:"workloadIdentity"` } -// AzureFile CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileFileCSIDriverResponse struct { - // Whether to enable AzureFile CSI Driver. The default value is true. - Enabled *bool `pulumi:"enabled"` -} +// Defaults sets the appropriate defaults for ManagedClusterSecurityProfileArgs +func (val *ManagedClusterSecurityProfileArgs) Defaults() *ManagedClusterSecurityProfileArgs { + if val == nil { + return nil + } + tmp := *val -// AzureFile CSI Driver settings for the storage profile. -type ManagedClusterStorageProfileFileCSIDriverResponseOutput struct{ *pulumi.OutputState } + return &tmp +} +func (ManagedClusterSecurityProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfile)(nil)).Elem() +} -func (ManagedClusterStorageProfileFileCSIDriverResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileFileCSIDriverResponse)(nil)).Elem() +func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfileOutput() ManagedClusterSecurityProfileOutput { + return i.ToManagedClusterSecurityProfileOutputWithContext(context.Background()) } -func (o ManagedClusterStorageProfileFileCSIDriverResponseOutput) ToManagedClusterStorageProfileFileCSIDriverResponseOutput() ManagedClusterStorageProfileFileCSIDriverResponseOutput { - return o +func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfileOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileOutput) } -func (o ManagedClusterStorageProfileFileCSIDriverResponseOutput) ToManagedClusterStorageProfileFileCSIDriverResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverResponseOutput { - return o +func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { + return i.ToManagedClusterSecurityProfilePtrOutputWithContext(context.Background()) } -// Whether to enable AzureFile CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileFileCSIDriverResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileFileCSIDriverResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +func (i ManagedClusterSecurityProfileArgs) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileOutput).ToManagedClusterSecurityProfilePtrOutputWithContext(ctx) } -type ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput struct{ *pulumi.OutputState } +// ManagedClusterSecurityProfilePtrInput is an input type that accepts ManagedClusterSecurityProfileArgs, ManagedClusterSecurityProfilePtr and ManagedClusterSecurityProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfilePtrInput` via: +// +// ManagedClusterSecurityProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterSecurityProfilePtrInput interface { + pulumi.Input -func (ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileFileCSIDriverResponse)(nil)).Elem() + ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput + ToManagedClusterSecurityProfilePtrOutputWithContext(context.Context) ManagedClusterSecurityProfilePtrOutput } -func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileFileCSIDriverResponsePtrOutput() ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { - return o -} +type managedClusterSecurityProfilePtrType ManagedClusterSecurityProfileArgs -func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileFileCSIDriverResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { - return o +func ManagedClusterSecurityProfilePtr(v *ManagedClusterSecurityProfileArgs) ManagedClusterSecurityProfilePtrInput { + return (*managedClusterSecurityProfilePtrType)(v) } -func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) Elem() ManagedClusterStorageProfileFileCSIDriverResponseOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriverResponse) ManagedClusterStorageProfileFileCSIDriverResponse { - if v != nil { - return *v - } - var ret ManagedClusterStorageProfileFileCSIDriverResponse - return ret - }).(ManagedClusterStorageProfileFileCSIDriverResponseOutput) +func (*managedClusterSecurityProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfile)(nil)).Elem() } -// Whether to enable AzureFile CSI Driver. The default value is true. -func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriverResponse) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) +func (i *managedClusterSecurityProfilePtrType) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { + return i.ToManagedClusterSecurityProfilePtrOutputWithContext(context.Background()) } -// Storage profile for the container service cluster. -type ManagedClusterStorageProfileResponse struct { - // AzureBlob CSI Driver settings for the storage profile. - BlobCSIDriver *ManagedClusterStorageProfileBlobCSIDriverResponse `pulumi:"blobCSIDriver"` - // AzureDisk CSI Driver settings for the storage profile. - DiskCSIDriver *ManagedClusterStorageProfileDiskCSIDriverResponse `pulumi:"diskCSIDriver"` - // AzureFile CSI Driver settings for the storage profile. - FileCSIDriver *ManagedClusterStorageProfileFileCSIDriverResponse `pulumi:"fileCSIDriver"` - // Snapshot Controller settings for the storage profile. - SnapshotController *ManagedClusterStorageProfileSnapshotControllerResponse `pulumi:"snapshotController"` +func (i *managedClusterSecurityProfilePtrType) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfilePtrOutput) } -// Storage profile for the container service cluster. -type ManagedClusterStorageProfileResponseOutput struct{ *pulumi.OutputState } +// Security profile for the container service cluster. +type ManagedClusterSecurityProfileOutput struct{ *pulumi.OutputState } -func (ManagedClusterStorageProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileResponse)(nil)).Elem() +func (ManagedClusterSecurityProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfile)(nil)).Elem() } -func (o ManagedClusterStorageProfileResponseOutput) ToManagedClusterStorageProfileResponseOutput() ManagedClusterStorageProfileResponseOutput { +func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfileOutput() ManagedClusterSecurityProfileOutput { return o } -func (o ManagedClusterStorageProfileResponseOutput) ToManagedClusterStorageProfileResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileResponseOutput { +func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfileOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileOutput { return o } -// AzureBlob CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileResponseOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileBlobCSIDriverResponse { - return v.BlobCSIDriver - }).(ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) +func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { + return o.ToManagedClusterSecurityProfilePtrOutputWithContext(context.Background()) } -// AzureDisk CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileResponseOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileDiskCSIDriverResponse { - return v.DiskCSIDriver - }).(ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) +func (o ManagedClusterSecurityProfileOutput) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfile { + return &v + }).(ManagedClusterSecurityProfilePtrOutput) } -// AzureFile CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileResponseOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileFileCSIDriverResponse { - return v.FileCSIDriver - }).(ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) +// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. +func (o ManagedClusterSecurityProfileOutput) AzureKeyVaultKms() AzureKeyVaultKmsPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfile) *AzureKeyVaultKms { return v.AzureKeyVaultKms }).(AzureKeyVaultKmsPtrOutput) } -// Snapshot Controller settings for the storage profile. -func (o ManagedClusterStorageProfileResponseOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileSnapshotControllerResponse { - return v.SnapshotController - }).(ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) +// Microsoft Defender settings for the security profile. +func (o ManagedClusterSecurityProfileOutput) Defender() ManagedClusterSecurityProfileDefenderPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileDefender { return v.Defender }).(ManagedClusterSecurityProfileDefenderPtrOutput) } -type ManagedClusterStorageProfileResponsePtrOutput struct{ *pulumi.OutputState } +// Image Cleaner settings for the security profile. +func (o ManagedClusterSecurityProfileOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileImageCleaner { + return v.ImageCleaner + }).(ManagedClusterSecurityProfileImageCleanerPtrOutput) +} -func (ManagedClusterStorageProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileResponse)(nil)).Elem() +// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. +func (o ManagedClusterSecurityProfileOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileWorkloadIdentity { + return v.WorkloadIdentity + }).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) } -func (o ManagedClusterStorageProfileResponsePtrOutput) ToManagedClusterStorageProfileResponsePtrOutput() ManagedClusterStorageProfileResponsePtrOutput { +type ManagedClusterSecurityProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterSecurityProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfile)(nil)).Elem() +} + +func (o ManagedClusterSecurityProfilePtrOutput) ToManagedClusterSecurityProfilePtrOutput() ManagedClusterSecurityProfilePtrOutput { return o } -func (o ManagedClusterStorageProfileResponsePtrOutput) ToManagedClusterStorageProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileResponsePtrOutput { +func (o ManagedClusterSecurityProfilePtrOutput) ToManagedClusterSecurityProfilePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfilePtrOutput { return o } -func (o ManagedClusterStorageProfileResponsePtrOutput) Elem() ManagedClusterStorageProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) ManagedClusterStorageProfileResponse { +func (o ManagedClusterSecurityProfilePtrOutput) Elem() ManagedClusterSecurityProfileOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfile) ManagedClusterSecurityProfile { if v != nil { return *v } - var ret ManagedClusterStorageProfileResponse + var ret ManagedClusterSecurityProfile return ret - }).(ManagedClusterStorageProfileResponseOutput) + }).(ManagedClusterSecurityProfileOutput) } -// AzureBlob CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileResponsePtrOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileBlobCSIDriverResponse { +// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. +func (o ManagedClusterSecurityProfilePtrOutput) AzureKeyVaultKms() AzureKeyVaultKmsPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfile) *AzureKeyVaultKms { if v == nil { return nil } - return v.BlobCSIDriver - }).(ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) + return v.AzureKeyVaultKms + }).(AzureKeyVaultKmsPtrOutput) } -// AzureDisk CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileResponsePtrOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileDiskCSIDriverResponse { +// Microsoft Defender settings for the security profile. +func (o ManagedClusterSecurityProfilePtrOutput) Defender() ManagedClusterSecurityProfileDefenderPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileDefender { if v == nil { return nil } - return v.DiskCSIDriver - }).(ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) + return v.Defender + }).(ManagedClusterSecurityProfileDefenderPtrOutput) } -// AzureFile CSI Driver settings for the storage profile. -func (o ManagedClusterStorageProfileResponsePtrOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileFileCSIDriverResponse { +// Image Cleaner settings for the security profile. +func (o ManagedClusterSecurityProfilePtrOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileImageCleaner { if v == nil { return nil } - return v.FileCSIDriver - }).(ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) + return v.ImageCleaner + }).(ManagedClusterSecurityProfileImageCleanerPtrOutput) } -// Snapshot Controller settings for the storage profile. -func (o ManagedClusterStorageProfileResponsePtrOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileSnapshotControllerResponse { +// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. +func (o ManagedClusterSecurityProfilePtrOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfile) *ManagedClusterSecurityProfileWorkloadIdentity { if v == nil { return nil } - return v.SnapshotController - }).(ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) + return v.WorkloadIdentity + }).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) } -// Snapshot Controller settings for the storage profile. -type ManagedClusterStorageProfileSnapshotController struct { - // Whether to enable Snapshot Controller. The default value is true. - Enabled *bool `pulumi:"enabled"` +// Microsoft Defender settings for the security profile. +type ManagedClusterSecurityProfileDefender struct { + // Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. + LogAnalyticsWorkspaceResourceId *string `pulumi:"logAnalyticsWorkspaceResourceId"` + // Microsoft Defender threat detection for Cloud settings for the security profile. + SecurityMonitoring *ManagedClusterSecurityProfileDefenderSecurityMonitoring `pulumi:"securityMonitoring"` } -// ManagedClusterStorageProfileSnapshotControllerInput is an input type that accepts ManagedClusterStorageProfileSnapshotControllerArgs and ManagedClusterStorageProfileSnapshotControllerOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileSnapshotControllerInput` via: +// ManagedClusterSecurityProfileDefenderInput is an input type that accepts ManagedClusterSecurityProfileDefenderArgs and ManagedClusterSecurityProfileDefenderOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderInput` via: // -// ManagedClusterStorageProfileSnapshotControllerArgs{...} -type ManagedClusterStorageProfileSnapshotControllerInput interface { +// ManagedClusterSecurityProfileDefenderArgs{...} +type ManagedClusterSecurityProfileDefenderInput interface { pulumi.Input - ToManagedClusterStorageProfileSnapshotControllerOutput() ManagedClusterStorageProfileSnapshotControllerOutput - ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(context.Context) ManagedClusterStorageProfileSnapshotControllerOutput + ToManagedClusterSecurityProfileDefenderOutput() ManagedClusterSecurityProfileDefenderOutput + ToManagedClusterSecurityProfileDefenderOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderOutput } -// Snapshot Controller settings for the storage profile. -type ManagedClusterStorageProfileSnapshotControllerArgs struct { - // Whether to enable Snapshot Controller. The default value is true. - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +// Microsoft Defender settings for the security profile. +type ManagedClusterSecurityProfileDefenderArgs struct { + // Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. + LogAnalyticsWorkspaceResourceId pulumi.StringPtrInput `pulumi:"logAnalyticsWorkspaceResourceId"` + // Microsoft Defender threat detection for Cloud settings for the security profile. + SecurityMonitoring ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput `pulumi:"securityMonitoring"` } -func (ManagedClusterStorageProfileSnapshotControllerArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileSnapshotController)(nil)).Elem() +func (ManagedClusterSecurityProfileDefenderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileDefender)(nil)).Elem() } -func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerOutput() ManagedClusterStorageProfileSnapshotControllerOutput { - return i.ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(context.Background()) +func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderOutput() ManagedClusterSecurityProfileDefenderOutput { + return i.ToManagedClusterSecurityProfileDefenderOutputWithContext(context.Background()) } -func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileSnapshotControllerOutput) +func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderOutput) } -func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return i.ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Background()) +func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { + return i.ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Background()) } -func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileSnapshotControllerOutput).ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx) +func (i ManagedClusterSecurityProfileDefenderArgs) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderOutput).ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx) } -// ManagedClusterStorageProfileSnapshotControllerPtrInput is an input type that accepts ManagedClusterStorageProfileSnapshotControllerArgs, ManagedClusterStorageProfileSnapshotControllerPtr and ManagedClusterStorageProfileSnapshotControllerPtrOutput values. -// You can construct a concrete instance of `ManagedClusterStorageProfileSnapshotControllerPtrInput` via: +// ManagedClusterSecurityProfileDefenderPtrInput is an input type that accepts ManagedClusterSecurityProfileDefenderArgs, ManagedClusterSecurityProfileDefenderPtr and ManagedClusterSecurityProfileDefenderPtrOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderPtrInput` via: // -// ManagedClusterStorageProfileSnapshotControllerArgs{...} +// ManagedClusterSecurityProfileDefenderArgs{...} // // or: // // nil -type ManagedClusterStorageProfileSnapshotControllerPtrInput interface { +type ManagedClusterSecurityProfileDefenderPtrInput interface { pulumi.Input - ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput - ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput + ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput + ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderPtrOutput } -type managedClusterStorageProfileSnapshotControllerPtrType ManagedClusterStorageProfileSnapshotControllerArgs +type managedClusterSecurityProfileDefenderPtrType ManagedClusterSecurityProfileDefenderArgs -func ManagedClusterStorageProfileSnapshotControllerPtr(v *ManagedClusterStorageProfileSnapshotControllerArgs) ManagedClusterStorageProfileSnapshotControllerPtrInput { - return (*managedClusterStorageProfileSnapshotControllerPtrType)(v) +func ManagedClusterSecurityProfileDefenderPtr(v *ManagedClusterSecurityProfileDefenderArgs) ManagedClusterSecurityProfileDefenderPtrInput { + return (*managedClusterSecurityProfileDefenderPtrType)(v) } -func (*managedClusterStorageProfileSnapshotControllerPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileSnapshotController)(nil)).Elem() +func (*managedClusterSecurityProfileDefenderPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileDefender)(nil)).Elem() } -func (i *managedClusterStorageProfileSnapshotControllerPtrType) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return i.ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Background()) +func (i *managedClusterSecurityProfileDefenderPtrType) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { + return i.ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Background()) } -func (i *managedClusterStorageProfileSnapshotControllerPtrType) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) +func (i *managedClusterSecurityProfileDefenderPtrType) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderPtrOutput) } -// Snapshot Controller settings for the storage profile. -type ManagedClusterStorageProfileSnapshotControllerOutput struct{ *pulumi.OutputState } +// Microsoft Defender settings for the security profile. +type ManagedClusterSecurityProfileDefenderOutput struct{ *pulumi.OutputState } -func (ManagedClusterStorageProfileSnapshotControllerOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileSnapshotController)(nil)).Elem() +func (ManagedClusterSecurityProfileDefenderOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileDefender)(nil)).Elem() } -func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerOutput() ManagedClusterStorageProfileSnapshotControllerOutput { +func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderOutput() ManagedClusterSecurityProfileDefenderOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerOutput { +func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return o.ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Background()) +func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { + return o.ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(context.Background()) } -func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileSnapshotController) *ManagedClusterStorageProfileSnapshotController { +func (o ManagedClusterSecurityProfileDefenderOutput) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileDefender) *ManagedClusterSecurityProfileDefender { return &v - }).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) + }).(ManagedClusterSecurityProfileDefenderPtrOutput) } -// Whether to enable Snapshot Controller. The default value is true. -func (o ManagedClusterStorageProfileSnapshotControllerOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileSnapshotController) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. +func (o ManagedClusterSecurityProfileDefenderOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileDefender) *string { return v.LogAnalyticsWorkspaceResourceId }).(pulumi.StringPtrOutput) } -type ManagedClusterStorageProfileSnapshotControllerPtrOutput struct{ *pulumi.OutputState } +// Microsoft Defender threat detection for Cloud settings for the security profile. +func (o ManagedClusterSecurityProfileDefenderOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileDefender) *ManagedClusterSecurityProfileDefenderSecurityMonitoring { + return v.SecurityMonitoring + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) +} -func (ManagedClusterStorageProfileSnapshotControllerPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileSnapshotController)(nil)).Elem() +type ManagedClusterSecurityProfileDefenderPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterSecurityProfileDefenderPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileDefender)(nil)).Elem() } -func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { +func (o ManagedClusterSecurityProfileDefenderPtrOutput) ToManagedClusterSecurityProfileDefenderPtrOutput() ManagedClusterSecurityProfileDefenderPtrOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { +func (o ManagedClusterSecurityProfileDefenderPtrOutput) ToManagedClusterSecurityProfileDefenderPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderPtrOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) Elem() ManagedClusterStorageProfileSnapshotControllerOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotController) ManagedClusterStorageProfileSnapshotController { +func (o ManagedClusterSecurityProfileDefenderPtrOutput) Elem() ManagedClusterSecurityProfileDefenderOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefender) ManagedClusterSecurityProfileDefender { if v != nil { return *v } - var ret ManagedClusterStorageProfileSnapshotController + var ret ManagedClusterSecurityProfileDefender return ret - }).(ManagedClusterStorageProfileSnapshotControllerOutput) + }).(ManagedClusterSecurityProfileDefenderOutput) } -// Whether to enable Snapshot Controller. The default value is true. -func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotController) *bool { +// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. +func (o ManagedClusterSecurityProfileDefenderPtrOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefender) *string { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.LogAnalyticsWorkspaceResourceId + }).(pulumi.StringPtrOutput) } -// Snapshot Controller settings for the storage profile. -type ManagedClusterStorageProfileSnapshotControllerResponse struct { - // Whether to enable Snapshot Controller. The default value is true. - Enabled *bool `pulumi:"enabled"` +// Microsoft Defender threat detection for Cloud settings for the security profile. +func (o ManagedClusterSecurityProfileDefenderPtrOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefender) *ManagedClusterSecurityProfileDefenderSecurityMonitoring { + if v == nil { + return nil + } + return v.SecurityMonitoring + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) } -// Snapshot Controller settings for the storage profile. -type ManagedClusterStorageProfileSnapshotControllerResponseOutput struct{ *pulumi.OutputState } +// Microsoft Defender settings for the security profile. +type ManagedClusterSecurityProfileDefenderResponse struct { + // Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. + LogAnalyticsWorkspaceResourceId *string `pulumi:"logAnalyticsWorkspaceResourceId"` + // Microsoft Defender threat detection for Cloud settings for the security profile. + SecurityMonitoring *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse `pulumi:"securityMonitoring"` +} -func (ManagedClusterStorageProfileSnapshotControllerResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterStorageProfileSnapshotControllerResponse)(nil)).Elem() +// Microsoft Defender settings for the security profile. +type ManagedClusterSecurityProfileDefenderResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterSecurityProfileDefenderResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderResponse)(nil)).Elem() } -func (o ManagedClusterStorageProfileSnapshotControllerResponseOutput) ToManagedClusterStorageProfileSnapshotControllerResponseOutput() ManagedClusterStorageProfileSnapshotControllerResponseOutput { +func (o ManagedClusterSecurityProfileDefenderResponseOutput) ToManagedClusterSecurityProfileDefenderResponseOutput() ManagedClusterSecurityProfileDefenderResponseOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerResponseOutput) ToManagedClusterStorageProfileSnapshotControllerResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerResponseOutput { +func (o ManagedClusterSecurityProfileDefenderResponseOutput) ToManagedClusterSecurityProfileDefenderResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderResponseOutput { return o } -// Whether to enable Snapshot Controller. The default value is true. -func (o ManagedClusterStorageProfileSnapshotControllerResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterStorageProfileSnapshotControllerResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. +func (o ManagedClusterSecurityProfileDefenderResponseOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderResponse) *string { + return v.LogAnalyticsWorkspaceResourceId + }).(pulumi.StringPtrOutput) } -type ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput struct{ *pulumi.OutputState } +// Microsoft Defender threat detection for Cloud settings for the security profile. +func (o ManagedClusterSecurityProfileDefenderResponseOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderResponse) *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse { + return v.SecurityMonitoring + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) +} -func (ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterStorageProfileSnapshotControllerResponse)(nil)).Elem() +type ManagedClusterSecurityProfileDefenderResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterSecurityProfileDefenderResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderResponse)(nil)).Elem() } -func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) ToManagedClusterStorageProfileSnapshotControllerResponsePtrOutput() ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { +func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) ToManagedClusterSecurityProfileDefenderResponsePtrOutput() ManagedClusterSecurityProfileDefenderResponsePtrOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) ToManagedClusterStorageProfileSnapshotControllerResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { +func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) ToManagedClusterSecurityProfileDefenderResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderResponsePtrOutput { return o } -func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) Elem() ManagedClusterStorageProfileSnapshotControllerResponseOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotControllerResponse) ManagedClusterStorageProfileSnapshotControllerResponse { +func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) Elem() ManagedClusterSecurityProfileDefenderResponseOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderResponse) ManagedClusterSecurityProfileDefenderResponse { if v != nil { return *v } - var ret ManagedClusterStorageProfileSnapshotControllerResponse + var ret ManagedClusterSecurityProfileDefenderResponse return ret - }).(ManagedClusterStorageProfileSnapshotControllerResponseOutput) + }).(ManagedClusterSecurityProfileDefenderResponseOutput) } -// Whether to enable Snapshot Controller. The default value is true. -func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotControllerResponse) *bool { +// Resource ID of the Log Analytics workspace to be associated with Microsoft Defender. When Microsoft Defender is enabled, this field is required and must be a valid workspace resource ID. When Microsoft Defender is disabled, leave the field empty. +func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) LogAnalyticsWorkspaceResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderResponse) *string { if v == nil { return nil } - return v.Enabled - }).(pulumi.BoolPtrOutput) + return v.LogAnalyticsWorkspaceResourceId + }).(pulumi.StringPtrOutput) +} + +// Microsoft Defender threat detection for Cloud settings for the security profile. +func (o ManagedClusterSecurityProfileDefenderResponsePtrOutput) SecurityMonitoring() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderResponse) *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse { + if v == nil { + return nil + } + return v.SecurityMonitoring + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) +} + +// Microsoft Defender settings for the security profile threat detection. +type ManagedClusterSecurityProfileDefenderSecurityMonitoring struct { + // Whether to enable Defender threat detection + Enabled *bool `pulumi:"enabled"` +} + +// ManagedClusterSecurityProfileDefenderSecurityMonitoringInput is an input type that accepts ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs and ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderSecurityMonitoringInput` via: +// +// ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs{...} +type ManagedClusterSecurityProfileDefenderSecurityMonitoringInput interface { + pulumi.Input + + ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput + ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput +} + +// Microsoft Defender settings for the security profile threat detection. +type ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs struct { + // Whether to enable Defender threat detection + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +} + +func (ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() +} + +func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { + return i.ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(context.Background()) +} + +func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) +} + +func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return i.ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Background()) } -// The update to be applied to the ManagedClusters. -type ManagedClusterUpdate struct { - // The upgrade to apply to the ManagedClusters. - Upgrade ManagedClusterUpgradeSpec `pulumi:"upgrade"` +func (i ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput).ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx) } -// ManagedClusterUpdateInput is an input type that accepts ManagedClusterUpdateArgs and ManagedClusterUpdateOutput values. -// You can construct a concrete instance of `ManagedClusterUpdateInput` via: +// ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput is an input type that accepts ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs, ManagedClusterSecurityProfileDefenderSecurityMonitoringPtr and ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput` via: +// +// ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs{...} // -// ManagedClusterUpdateArgs{...} -type ManagedClusterUpdateInput interface { +// or: +// +// nil +type ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput interface { pulumi.Input - ToManagedClusterUpdateOutput() ManagedClusterUpdateOutput - ToManagedClusterUpdateOutputWithContext(context.Context) ManagedClusterUpdateOutput + ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput + ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput } -// The update to be applied to the ManagedClusters. -type ManagedClusterUpdateArgs struct { - // The upgrade to apply to the ManagedClusters. - Upgrade ManagedClusterUpgradeSpecInput `pulumi:"upgrade"` +type managedClusterSecurityProfileDefenderSecurityMonitoringPtrType ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs + +func ManagedClusterSecurityProfileDefenderSecurityMonitoringPtr(v *ManagedClusterSecurityProfileDefenderSecurityMonitoringArgs) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrInput { + return (*managedClusterSecurityProfileDefenderSecurityMonitoringPtrType)(v) } -func (ManagedClusterUpdateArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpdate)(nil)).Elem() +func (*managedClusterSecurityProfileDefenderSecurityMonitoringPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() } -func (i ManagedClusterUpdateArgs) ToManagedClusterUpdateOutput() ManagedClusterUpdateOutput { - return i.ToManagedClusterUpdateOutputWithContext(context.Background()) +func (i *managedClusterSecurityProfileDefenderSecurityMonitoringPtrType) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return i.ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Background()) } -func (i ManagedClusterUpdateArgs) ToManagedClusterUpdateOutputWithContext(ctx context.Context) ManagedClusterUpdateOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterUpdateOutput) +func (i *managedClusterSecurityProfileDefenderSecurityMonitoringPtrType) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) } -// The update to be applied to the ManagedClusters. -type ManagedClusterUpdateOutput struct{ *pulumi.OutputState } +// Microsoft Defender settings for the security profile threat detection. +type ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput struct{ *pulumi.OutputState } -func (ManagedClusterUpdateOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpdate)(nil)).Elem() +func (ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() } -func (o ManagedClusterUpdateOutput) ToManagedClusterUpdateOutput() ManagedClusterUpdateOutput { +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { return o } -func (o ManagedClusterUpdateOutput) ToManagedClusterUpdateOutputWithContext(ctx context.Context) ManagedClusterUpdateOutput { +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { return o } -// The upgrade to apply to the ManagedClusters. -func (o ManagedClusterUpdateOutput) Upgrade() ManagedClusterUpgradeSpecOutput { - return o.ApplyT(func(v ManagedClusterUpdate) ManagedClusterUpgradeSpec { return v.Upgrade }).(ManagedClusterUpgradeSpecOutput) +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return o.ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(context.Background()) +} + +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileDefenderSecurityMonitoring) *ManagedClusterSecurityProfileDefenderSecurityMonitoring { + return &v + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) } -// The update to be applied to the ManagedClusters. -type ManagedClusterUpdateResponse struct { - // The upgrade to apply to the ManagedClusters. - Upgrade ManagedClusterUpgradeSpecResponse `pulumi:"upgrade"` +// Whether to enable Defender threat detection +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderSecurityMonitoring) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// The update to be applied to the ManagedClusters. -type ManagedClusterUpdateResponseOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterUpdateResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpdateResponse)(nil)).Elem() +func (ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderSecurityMonitoring)(nil)).Elem() } -func (o ManagedClusterUpdateResponseOutput) ToManagedClusterUpdateResponseOutput() ManagedClusterUpdateResponseOutput { +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { return o } -func (o ManagedClusterUpdateResponseOutput) ToManagedClusterUpdateResponseOutputWithContext(ctx context.Context) ManagedClusterUpdateResponseOutput { +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput { return o } -// The upgrade to apply to the ManagedClusters. -func (o ManagedClusterUpdateResponseOutput) Upgrade() ManagedClusterUpgradeSpecResponseOutput { - return o.ApplyT(func(v ManagedClusterUpdateResponse) ManagedClusterUpgradeSpecResponse { return v.Upgrade }).(ManagedClusterUpgradeSpecResponseOutput) +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) Elem() ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoring) ManagedClusterSecurityProfileDefenderSecurityMonitoring { + if v != nil { + return *v + } + var ret ManagedClusterSecurityProfileDefenderSecurityMonitoring + return ret + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringOutput) } -// The upgrade to apply to a ManagedCluster. -type ManagedClusterUpgradeSpec struct { - // The Kubernetes version to upgrade the member clusters to. - KubernetesVersion *string `pulumi:"kubernetesVersion"` - // ManagedClusterUpgradeType is the type of upgrade to be applied. - Type string `pulumi:"type"` +// Whether to enable Defender threat detection +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoring) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// ManagedClusterUpgradeSpecInput is an input type that accepts ManagedClusterUpgradeSpecArgs and ManagedClusterUpgradeSpecOutput values. -// You can construct a concrete instance of `ManagedClusterUpgradeSpecInput` via: -// -// ManagedClusterUpgradeSpecArgs{...} -type ManagedClusterUpgradeSpecInput interface { - pulumi.Input - - ToManagedClusterUpgradeSpecOutput() ManagedClusterUpgradeSpecOutput - ToManagedClusterUpgradeSpecOutputWithContext(context.Context) ManagedClusterUpgradeSpecOutput +// Microsoft Defender settings for the security profile threat detection. +type ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse struct { + // Whether to enable Defender threat detection + Enabled *bool `pulumi:"enabled"` } -// The upgrade to apply to a ManagedCluster. -type ManagedClusterUpgradeSpecArgs struct { - // The Kubernetes version to upgrade the member clusters to. - KubernetesVersion pulumi.StringPtrInput `pulumi:"kubernetesVersion"` - // ManagedClusterUpgradeType is the type of upgrade to be applied. - Type pulumi.StringInput `pulumi:"type"` +// Microsoft Defender settings for the security profile threat detection. +type ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse)(nil)).Elem() } -func (ManagedClusterUpgradeSpecArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpgradeSpec)(nil)).Elem() +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput { + return o } -func (i ManagedClusterUpgradeSpecArgs) ToManagedClusterUpgradeSpecOutput() ManagedClusterUpgradeSpecOutput { - return i.ToManagedClusterUpgradeSpecOutputWithContext(context.Background()) +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput { + return o } -func (i ManagedClusterUpgradeSpecArgs) ToManagedClusterUpgradeSpecOutputWithContext(ctx context.Context) ManagedClusterUpgradeSpecOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterUpgradeSpecOutput) +// Whether to enable Defender threat detection +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// The upgrade to apply to a ManagedCluster. -type ManagedClusterUpgradeSpecOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterUpgradeSpecOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpgradeSpec)(nil)).Elem() +func (ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse)(nil)).Elem() } -func (o ManagedClusterUpgradeSpecOutput) ToManagedClusterUpgradeSpecOutput() ManagedClusterUpgradeSpecOutput { +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { return o } -func (o ManagedClusterUpgradeSpecOutput) ToManagedClusterUpgradeSpecOutputWithContext(ctx context.Context) ManagedClusterUpgradeSpecOutput { +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) ToManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput { return o } -// The Kubernetes version to upgrade the member clusters to. -func (o ManagedClusterUpgradeSpecOutput) KubernetesVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterUpgradeSpec) *string { return v.KubernetesVersion }).(pulumi.StringPtrOutput) +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) Elem() ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse) ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse { + if v != nil { + return *v + } + var ret ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse + return ret + }).(ManagedClusterSecurityProfileDefenderSecurityMonitoringResponseOutput) } -// ManagedClusterUpgradeType is the type of upgrade to be applied. -func (o ManagedClusterUpgradeSpecOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterUpgradeSpec) string { return v.Type }).(pulumi.StringOutput) +// Whether to enable Defender threat detection +func (o ManagedClusterSecurityProfileDefenderSecurityMonitoringResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileDefenderSecurityMonitoringResponse) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// The upgrade to apply to a ManagedCluster. -type ManagedClusterUpgradeSpecResponse struct { - // The Kubernetes version to upgrade the member clusters to. - KubernetesVersion *string `pulumi:"kubernetesVersion"` - // ManagedClusterUpgradeType is the type of upgrade to be applied. - Type string `pulumi:"type"` +// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. +type ManagedClusterSecurityProfileImageCleaner struct { + // Whether to enable Image Cleaner on AKS cluster. + Enabled *bool `pulumi:"enabled"` + // Image Cleaner scanning interval in hours. + IntervalHours *int `pulumi:"intervalHours"` } -// The upgrade to apply to a ManagedCluster. -type ManagedClusterUpgradeSpecResponseOutput struct{ *pulumi.OutputState } +// ManagedClusterSecurityProfileImageCleanerInput is an input type that accepts ManagedClusterSecurityProfileImageCleanerArgs and ManagedClusterSecurityProfileImageCleanerOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileImageCleanerInput` via: +// +// ManagedClusterSecurityProfileImageCleanerArgs{...} +type ManagedClusterSecurityProfileImageCleanerInput interface { + pulumi.Input + + ToManagedClusterSecurityProfileImageCleanerOutput() ManagedClusterSecurityProfileImageCleanerOutput + ToManagedClusterSecurityProfileImageCleanerOutputWithContext(context.Context) ManagedClusterSecurityProfileImageCleanerOutput +} -func (ManagedClusterUpgradeSpecResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterUpgradeSpecResponse)(nil)).Elem() +// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. +type ManagedClusterSecurityProfileImageCleanerArgs struct { + // Whether to enable Image Cleaner on AKS cluster. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Image Cleaner scanning interval in hours. + IntervalHours pulumi.IntPtrInput `pulumi:"intervalHours"` } -func (o ManagedClusterUpgradeSpecResponseOutput) ToManagedClusterUpgradeSpecResponseOutput() ManagedClusterUpgradeSpecResponseOutput { - return o +func (ManagedClusterSecurityProfileImageCleanerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() } -func (o ManagedClusterUpgradeSpecResponseOutput) ToManagedClusterUpgradeSpecResponseOutputWithContext(ctx context.Context) ManagedClusterUpgradeSpecResponseOutput { - return o +func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerOutput() ManagedClusterSecurityProfileImageCleanerOutput { + return i.ToManagedClusterSecurityProfileImageCleanerOutputWithContext(context.Background()) } -// The Kubernetes version to upgrade the member clusters to. -func (o ManagedClusterUpgradeSpecResponseOutput) KubernetesVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterUpgradeSpecResponse) *string { return v.KubernetesVersion }).(pulumi.StringPtrOutput) +func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileImageCleanerOutput) } -// ManagedClusterUpgradeType is the type of upgrade to be applied. -func (o ManagedClusterUpgradeSpecResponseOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterUpgradeSpecResponse) string { return v.Type }).(pulumi.StringOutput) +func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { + return i.ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Background()) } -// Profile for Windows VMs in the managed cluster. -type ManagedClusterWindowsProfile struct { - // Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" - AdminPassword *string `pulumi:"adminPassword"` - // Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters - AdminUsername string `pulumi:"adminUsername"` - // For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). - EnableCSIProxy *bool `pulumi:"enableCSIProxy"` - // The Windows gMSA Profile in the Managed Cluster. - GmsaProfile *WindowsGmsaProfile `pulumi:"gmsaProfile"` - // The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. - LicenseType *string `pulumi:"licenseType"` +func (i ManagedClusterSecurityProfileImageCleanerArgs) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileImageCleanerOutput).ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx) } -// ManagedClusterWindowsProfileInput is an input type that accepts ManagedClusterWindowsProfileArgs and ManagedClusterWindowsProfileOutput values. -// You can construct a concrete instance of `ManagedClusterWindowsProfileInput` via: +// ManagedClusterSecurityProfileImageCleanerPtrInput is an input type that accepts ManagedClusterSecurityProfileImageCleanerArgs, ManagedClusterSecurityProfileImageCleanerPtr and ManagedClusterSecurityProfileImageCleanerPtrOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileImageCleanerPtrInput` via: // -// ManagedClusterWindowsProfileArgs{...} -type ManagedClusterWindowsProfileInput interface { +// ManagedClusterSecurityProfileImageCleanerArgs{...} +// +// or: +// +// nil +type ManagedClusterSecurityProfileImageCleanerPtrInput interface { pulumi.Input - ToManagedClusterWindowsProfileOutput() ManagedClusterWindowsProfileOutput - ToManagedClusterWindowsProfileOutputWithContext(context.Context) ManagedClusterWindowsProfileOutput + ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput + ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput } -// Profile for Windows VMs in the managed cluster. -type ManagedClusterWindowsProfileArgs struct { - // Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" - AdminPassword pulumi.StringPtrInput `pulumi:"adminPassword"` - // Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters - AdminUsername pulumi.StringInput `pulumi:"adminUsername"` - // For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). - EnableCSIProxy pulumi.BoolPtrInput `pulumi:"enableCSIProxy"` - // The Windows gMSA Profile in the Managed Cluster. - GmsaProfile WindowsGmsaProfilePtrInput `pulumi:"gmsaProfile"` - // The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. - LicenseType pulumi.StringPtrInput `pulumi:"licenseType"` -} +type managedClusterSecurityProfileImageCleanerPtrType ManagedClusterSecurityProfileImageCleanerArgs -func (ManagedClusterWindowsProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWindowsProfile)(nil)).Elem() +func ManagedClusterSecurityProfileImageCleanerPtr(v *ManagedClusterSecurityProfileImageCleanerArgs) ManagedClusterSecurityProfileImageCleanerPtrInput { + return (*managedClusterSecurityProfileImageCleanerPtrType)(v) } -func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfileOutput() ManagedClusterWindowsProfileOutput { - return i.ToManagedClusterWindowsProfileOutputWithContext(context.Background()) +func (*managedClusterSecurityProfileImageCleanerPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() } -func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfileOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWindowsProfileOutput) +func (i *managedClusterSecurityProfileImageCleanerPtrType) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { + return i.ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Background()) } -func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { - return i.ToManagedClusterWindowsProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterSecurityProfileImageCleanerPtrType) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileImageCleanerPtrOutput) } -func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWindowsProfileOutput).ToManagedClusterWindowsProfilePtrOutputWithContext(ctx) -} +// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. +type ManagedClusterSecurityProfileImageCleanerOutput struct{ *pulumi.OutputState } -// ManagedClusterWindowsProfilePtrInput is an input type that accepts ManagedClusterWindowsProfileArgs, ManagedClusterWindowsProfilePtr and ManagedClusterWindowsProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterWindowsProfilePtrInput` via: -// -// ManagedClusterWindowsProfileArgs{...} -// -// or: -// -// nil -type ManagedClusterWindowsProfilePtrInput interface { - pulumi.Input +func (ManagedClusterSecurityProfileImageCleanerOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() +} - ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput - ToManagedClusterWindowsProfilePtrOutputWithContext(context.Context) ManagedClusterWindowsProfilePtrOutput +func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerOutput() ManagedClusterSecurityProfileImageCleanerOutput { + return o } -type managedClusterWindowsProfilePtrType ManagedClusterWindowsProfileArgs +func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerOutput { + return o +} -func ManagedClusterWindowsProfilePtr(v *ManagedClusterWindowsProfileArgs) ManagedClusterWindowsProfilePtrInput { - return (*managedClusterWindowsProfilePtrType)(v) +func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { + return o.ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(context.Background()) } -func (*managedClusterWindowsProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWindowsProfile)(nil)).Elem() +func (o ManagedClusterSecurityProfileImageCleanerOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileImageCleaner) *ManagedClusterSecurityProfileImageCleaner { + return &v + }).(ManagedClusterSecurityProfileImageCleanerPtrOutput) } -func (i *managedClusterWindowsProfilePtrType) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { - return i.ToManagedClusterWindowsProfilePtrOutputWithContext(context.Background()) +// Whether to enable Image Cleaner on AKS cluster. +func (o ManagedClusterSecurityProfileImageCleanerOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleaner) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -func (i *managedClusterWindowsProfilePtrType) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWindowsProfilePtrOutput) +// Image Cleaner scanning interval in hours. +func (o ManagedClusterSecurityProfileImageCleanerOutput) IntervalHours() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleaner) *int { return v.IntervalHours }).(pulumi.IntPtrOutput) } -// Profile for Windows VMs in the managed cluster. -type ManagedClusterWindowsProfileOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileImageCleanerPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterWindowsProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWindowsProfile)(nil)).Elem() +func (ManagedClusterSecurityProfileImageCleanerPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileImageCleaner)(nil)).Elem() } -func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfileOutput() ManagedClusterWindowsProfileOutput { +func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutput() ManagedClusterSecurityProfileImageCleanerPtrOutput { return o } -func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfileOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileOutput { +func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) ToManagedClusterSecurityProfileImageCleanerPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerPtrOutput { return o } -func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { - return o.ToManagedClusterWindowsProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) Elem() ManagedClusterSecurityProfileImageCleanerOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleaner) ManagedClusterSecurityProfileImageCleaner { + if v != nil { + return *v + } + var ret ManagedClusterSecurityProfileImageCleaner + return ret + }).(ManagedClusterSecurityProfileImageCleanerOutput) +} + +// Whether to enable Image Cleaner on AKS cluster. +func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleaner) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} + +// Image Cleaner scanning interval in hours. +func (o ManagedClusterSecurityProfileImageCleanerPtrOutput) IntervalHours() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleaner) *int { + if v == nil { + return nil + } + return v.IntervalHours + }).(pulumi.IntPtrOutput) +} + +// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. +type ManagedClusterSecurityProfileImageCleanerResponse struct { + // Whether to enable Image Cleaner on AKS cluster. + Enabled *bool `pulumi:"enabled"` + // Image Cleaner scanning interval in hours. + IntervalHours *int `pulumi:"intervalHours"` } -func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWindowsProfile) *ManagedClusterWindowsProfile { - return &v - }).(ManagedClusterWindowsProfilePtrOutput) -} +// Image Cleaner removes unused images from nodes, freeing up disk space and helping to reduce attack surface area. Here are settings for the security profile. +type ManagedClusterSecurityProfileImageCleanerResponseOutput struct{ *pulumi.OutputState } -// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" -func (o ManagedClusterWindowsProfileOutput) AdminPassword() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfile) *string { return v.AdminPassword }).(pulumi.StringPtrOutput) +func (ManagedClusterSecurityProfileImageCleanerResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileImageCleanerResponse)(nil)).Elem() } -// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters -func (o ManagedClusterWindowsProfileOutput) AdminUsername() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfile) string { return v.AdminUsername }).(pulumi.StringOutput) +func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) ToManagedClusterSecurityProfileImageCleanerResponseOutput() ManagedClusterSecurityProfileImageCleanerResponseOutput { + return o } -// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). -func (o ManagedClusterWindowsProfileOutput) EnableCSIProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfile) *bool { return v.EnableCSIProxy }).(pulumi.BoolPtrOutput) +func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) ToManagedClusterSecurityProfileImageCleanerResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerResponseOutput { + return o } -// The Windows gMSA Profile in the Managed Cluster. -func (o ManagedClusterWindowsProfileOutput) GmsaProfile() WindowsGmsaProfilePtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfile) *WindowsGmsaProfile { return v.GmsaProfile }).(WindowsGmsaProfilePtrOutput) +// Whether to enable Image Cleaner on AKS cluster. +func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleanerResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. -func (o ManagedClusterWindowsProfileOutput) LicenseType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfile) *string { return v.LicenseType }).(pulumi.StringPtrOutput) +// Image Cleaner scanning interval in hours. +func (o ManagedClusterSecurityProfileImageCleanerResponseOutput) IntervalHours() pulumi.IntPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileImageCleanerResponse) *int { return v.IntervalHours }).(pulumi.IntPtrOutput) } -type ManagedClusterWindowsProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileImageCleanerResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterWindowsProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWindowsProfile)(nil)).Elem() +func (ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileImageCleanerResponse)(nil)).Elem() } -func (o ManagedClusterWindowsProfilePtrOutput) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { +func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) ToManagedClusterSecurityProfileImageCleanerResponsePtrOutput() ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { return o } -func (o ManagedClusterWindowsProfilePtrOutput) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { +func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) ToManagedClusterSecurityProfileImageCleanerResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { return o } -func (o ManagedClusterWindowsProfilePtrOutput) Elem() ManagedClusterWindowsProfileOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfile) ManagedClusterWindowsProfile { +func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) Elem() ManagedClusterSecurityProfileImageCleanerResponseOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleanerResponse) ManagedClusterSecurityProfileImageCleanerResponse { if v != nil { return *v } - var ret ManagedClusterWindowsProfile + var ret ManagedClusterSecurityProfileImageCleanerResponse return ret - }).(ManagedClusterWindowsProfileOutput) -} - -// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" -func (o ManagedClusterWindowsProfilePtrOutput) AdminPassword() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfile) *string { - if v == nil { - return nil - } - return v.AdminPassword - }).(pulumi.StringPtrOutput) -} - -// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters -func (o ManagedClusterWindowsProfilePtrOutput) AdminUsername() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfile) *string { - if v == nil { - return nil - } - return &v.AdminUsername - }).(pulumi.StringPtrOutput) + }).(ManagedClusterSecurityProfileImageCleanerResponseOutput) } -// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). -func (o ManagedClusterWindowsProfilePtrOutput) EnableCSIProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfile) *bool { +// Whether to enable Image Cleaner on AKS cluster. +func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleanerResponse) *bool { if v == nil { return nil } - return v.EnableCSIProxy + return v.Enabled }).(pulumi.BoolPtrOutput) } -// The Windows gMSA Profile in the Managed Cluster. -func (o ManagedClusterWindowsProfilePtrOutput) GmsaProfile() WindowsGmsaProfilePtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfile) *WindowsGmsaProfile { +// Image Cleaner scanning interval in hours. +func (o ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) IntervalHours() pulumi.IntPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileImageCleanerResponse) *int { if v == nil { return nil } - return v.GmsaProfile - }).(WindowsGmsaProfilePtrOutput) + return v.IntervalHours + }).(pulumi.IntPtrOutput) } -// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. -func (o ManagedClusterWindowsProfilePtrOutput) LicenseType() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfile) *string { - if v == nil { - return nil - } - return v.LicenseType - }).(pulumi.StringPtrOutput) +// Security profile for the container service cluster. +type ManagedClusterSecurityProfileResponse struct { + // Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. + AzureKeyVaultKms *AzureKeyVaultKmsResponse `pulumi:"azureKeyVaultKms"` + // Microsoft Defender settings for the security profile. + Defender *ManagedClusterSecurityProfileDefenderResponse `pulumi:"defender"` + // Image Cleaner settings for the security profile. + ImageCleaner *ManagedClusterSecurityProfileImageCleanerResponse `pulumi:"imageCleaner"` + // Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. + WorkloadIdentity *ManagedClusterSecurityProfileWorkloadIdentityResponse `pulumi:"workloadIdentity"` } -// Profile for Windows VMs in the managed cluster. -type ManagedClusterWindowsProfileResponse struct { - // Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" - AdminPassword *string `pulumi:"adminPassword"` - // Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters - AdminUsername string `pulumi:"adminUsername"` - // For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). - EnableCSIProxy *bool `pulumi:"enableCSIProxy"` - // The Windows gMSA Profile in the Managed Cluster. - GmsaProfile *WindowsGmsaProfileResponse `pulumi:"gmsaProfile"` - // The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. - LicenseType *string `pulumi:"licenseType"` +// Defaults sets the appropriate defaults for ManagedClusterSecurityProfileResponse +func (val *ManagedClusterSecurityProfileResponse) Defaults() *ManagedClusterSecurityProfileResponse { + if val == nil { + return nil + } + tmp := *val + tmp.AzureKeyVaultKms = tmp.AzureKeyVaultKms.Defaults() + + return &tmp } -// Profile for Windows VMs in the managed cluster. -type ManagedClusterWindowsProfileResponseOutput struct{ *pulumi.OutputState } +// Security profile for the container service cluster. +type ManagedClusterSecurityProfileResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterWindowsProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWindowsProfileResponse)(nil)).Elem() +func (ManagedClusterSecurityProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileResponse)(nil)).Elem() } -func (o ManagedClusterWindowsProfileResponseOutput) ToManagedClusterWindowsProfileResponseOutput() ManagedClusterWindowsProfileResponseOutput { +func (o ManagedClusterSecurityProfileResponseOutput) ToManagedClusterSecurityProfileResponseOutput() ManagedClusterSecurityProfileResponseOutput { return o } -func (o ManagedClusterWindowsProfileResponseOutput) ToManagedClusterWindowsProfileResponseOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileResponseOutput { +func (o ManagedClusterSecurityProfileResponseOutput) ToManagedClusterSecurityProfileResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileResponseOutput { return o } -// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" -func (o ManagedClusterWindowsProfileResponseOutput) AdminPassword() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *string { return v.AdminPassword }).(pulumi.StringPtrOutput) -} - -// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters -func (o ManagedClusterWindowsProfileResponseOutput) AdminUsername() pulumi.StringOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) string { return v.AdminUsername }).(pulumi.StringOutput) +// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. +func (o ManagedClusterSecurityProfileResponseOutput) AzureKeyVaultKms() AzureKeyVaultKmsResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *AzureKeyVaultKmsResponse { return v.AzureKeyVaultKms }).(AzureKeyVaultKmsResponsePtrOutput) } -// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). -func (o ManagedClusterWindowsProfileResponseOutput) EnableCSIProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *bool { return v.EnableCSIProxy }).(pulumi.BoolPtrOutput) +// Microsoft Defender settings for the security profile. +func (o ManagedClusterSecurityProfileResponseOutput) Defender() ManagedClusterSecurityProfileDefenderResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileDefenderResponse { + return v.Defender + }).(ManagedClusterSecurityProfileDefenderResponsePtrOutput) } -// The Windows gMSA Profile in the Managed Cluster. -func (o ManagedClusterWindowsProfileResponseOutput) GmsaProfile() WindowsGmsaProfileResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *WindowsGmsaProfileResponse { return v.GmsaProfile }).(WindowsGmsaProfileResponsePtrOutput) +// Image Cleaner settings for the security profile. +func (o ManagedClusterSecurityProfileResponseOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileImageCleanerResponse { + return v.ImageCleaner + }).(ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) } -// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. -func (o ManagedClusterWindowsProfileResponseOutput) LicenseType() pulumi.StringPtrOutput { - return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *string { return v.LicenseType }).(pulumi.StringPtrOutput) +// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. +func (o ManagedClusterSecurityProfileResponseOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileWorkloadIdentityResponse { + return v.WorkloadIdentity + }).(ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) } -type ManagedClusterWindowsProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterWindowsProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWindowsProfileResponse)(nil)).Elem() +func (ManagedClusterSecurityProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileResponse)(nil)).Elem() } -func (o ManagedClusterWindowsProfileResponsePtrOutput) ToManagedClusterWindowsProfileResponsePtrOutput() ManagedClusterWindowsProfileResponsePtrOutput { +func (o ManagedClusterSecurityProfileResponsePtrOutput) ToManagedClusterSecurityProfileResponsePtrOutput() ManagedClusterSecurityProfileResponsePtrOutput { return o } -func (o ManagedClusterWindowsProfileResponsePtrOutput) ToManagedClusterWindowsProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileResponsePtrOutput { +func (o ManagedClusterSecurityProfileResponsePtrOutput) ToManagedClusterSecurityProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileResponsePtrOutput { return o } -func (o ManagedClusterWindowsProfileResponsePtrOutput) Elem() ManagedClusterWindowsProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) ManagedClusterWindowsProfileResponse { +func (o ManagedClusterSecurityProfileResponsePtrOutput) Elem() ManagedClusterSecurityProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) ManagedClusterSecurityProfileResponse { if v != nil { return *v } - var ret ManagedClusterWindowsProfileResponse + var ret ManagedClusterSecurityProfileResponse return ret - }).(ManagedClusterWindowsProfileResponseOutput) -} - -// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" -func (o ManagedClusterWindowsProfileResponsePtrOutput) AdminPassword() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *string { - if v == nil { - return nil - } - return v.AdminPassword - }).(pulumi.StringPtrOutput) + }).(ManagedClusterSecurityProfileResponseOutput) } -// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters -func (o ManagedClusterWindowsProfileResponsePtrOutput) AdminUsername() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *string { +// Azure Key Vault [key management service](https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/) settings for the security profile. +func (o ManagedClusterSecurityProfileResponsePtrOutput) AzureKeyVaultKms() AzureKeyVaultKmsResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *AzureKeyVaultKmsResponse { if v == nil { return nil } - return &v.AdminUsername - }).(pulumi.StringPtrOutput) + return v.AzureKeyVaultKms + }).(AzureKeyVaultKmsResponsePtrOutput) } -// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). -func (o ManagedClusterWindowsProfileResponsePtrOutput) EnableCSIProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *bool { +// Microsoft Defender settings for the security profile. +func (o ManagedClusterSecurityProfileResponsePtrOutput) Defender() ManagedClusterSecurityProfileDefenderResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileDefenderResponse { if v == nil { return nil } - return v.EnableCSIProxy - }).(pulumi.BoolPtrOutput) + return v.Defender + }).(ManagedClusterSecurityProfileDefenderResponsePtrOutput) } -// The Windows gMSA Profile in the Managed Cluster. -func (o ManagedClusterWindowsProfileResponsePtrOutput) GmsaProfile() WindowsGmsaProfileResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *WindowsGmsaProfileResponse { +// Image Cleaner settings for the security profile. +func (o ManagedClusterSecurityProfileResponsePtrOutput) ImageCleaner() ManagedClusterSecurityProfileImageCleanerResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileImageCleanerResponse { if v == nil { return nil } - return v.GmsaProfile - }).(WindowsGmsaProfileResponsePtrOutput) + return v.ImageCleaner + }).(ManagedClusterSecurityProfileImageCleanerResponsePtrOutput) } -// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. -func (o ManagedClusterWindowsProfileResponsePtrOutput) LicenseType() pulumi.StringPtrOutput { - return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *string { +// Workload identity settings for the security profile. Workload identity enables Kubernetes applications to access Azure cloud resources securely with Azure AD. See https://aka.ms/aks/wi for more details. +func (o ManagedClusterSecurityProfileResponsePtrOutput) WorkloadIdentity() ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileResponse) *ManagedClusterSecurityProfileWorkloadIdentityResponse { if v == nil { return nil } - return v.LicenseType - }).(pulumi.StringPtrOutput) + return v.WorkloadIdentity + }).(ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) } -// Workload Auto-scaler profile for the managed cluster. -type ManagedClusterWorkloadAutoScalerProfile struct { - // KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. - Keda *ManagedClusterWorkloadAutoScalerProfileKeda `pulumi:"keda"` +// Workload identity settings for the security profile. +type ManagedClusterSecurityProfileWorkloadIdentity struct { + // Whether to enable workload identity. + Enabled *bool `pulumi:"enabled"` } - -// ManagedClusterWorkloadAutoScalerProfileInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileArgs and ManagedClusterWorkloadAutoScalerProfileOutput values. -// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileInput` via: + +// ManagedClusterSecurityProfileWorkloadIdentityInput is an input type that accepts ManagedClusterSecurityProfileWorkloadIdentityArgs and ManagedClusterSecurityProfileWorkloadIdentityOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileWorkloadIdentityInput` via: // -// ManagedClusterWorkloadAutoScalerProfileArgs{...} -type ManagedClusterWorkloadAutoScalerProfileInput interface { +// ManagedClusterSecurityProfileWorkloadIdentityArgs{...} +type ManagedClusterSecurityProfileWorkloadIdentityInput interface { pulumi.Input - ToManagedClusterWorkloadAutoScalerProfileOutput() ManagedClusterWorkloadAutoScalerProfileOutput - ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileOutput + ToManagedClusterSecurityProfileWorkloadIdentityOutput() ManagedClusterSecurityProfileWorkloadIdentityOutput + ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(context.Context) ManagedClusterSecurityProfileWorkloadIdentityOutput } -// Workload Auto-scaler profile for the managed cluster. -type ManagedClusterWorkloadAutoScalerProfileArgs struct { - // KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. - Keda ManagedClusterWorkloadAutoScalerProfileKedaPtrInput `pulumi:"keda"` +// Workload identity settings for the security profile. +type ManagedClusterSecurityProfileWorkloadIdentityArgs struct { + // Whether to enable workload identity. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -func (ManagedClusterWorkloadAutoScalerProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() +func (ManagedClusterSecurityProfileWorkloadIdentityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() } -func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfileOutput() ManagedClusterWorkloadAutoScalerProfileOutput { - return i.ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(context.Background()) +func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityOutput() ManagedClusterSecurityProfileWorkloadIdentityOutput { + return i.ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(context.Background()) } -func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileOutput) +func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileWorkloadIdentityOutput) } -func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { - return i.ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return i.ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Background()) } -func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileOutput).ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx) +func (i ManagedClusterSecurityProfileWorkloadIdentityArgs) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileWorkloadIdentityOutput).ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx) } -// ManagedClusterWorkloadAutoScalerProfilePtrInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileArgs, ManagedClusterWorkloadAutoScalerProfilePtr and ManagedClusterWorkloadAutoScalerProfilePtrOutput values. -// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfilePtrInput` via: +// ManagedClusterSecurityProfileWorkloadIdentityPtrInput is an input type that accepts ManagedClusterSecurityProfileWorkloadIdentityArgs, ManagedClusterSecurityProfileWorkloadIdentityPtr and ManagedClusterSecurityProfileWorkloadIdentityPtrOutput values. +// You can construct a concrete instance of `ManagedClusterSecurityProfileWorkloadIdentityPtrInput` via: // -// ManagedClusterWorkloadAutoScalerProfileArgs{...} +// ManagedClusterSecurityProfileWorkloadIdentityArgs{...} // // or: // // nil -type ManagedClusterWorkloadAutoScalerProfilePtrInput interface { +type ManagedClusterSecurityProfileWorkloadIdentityPtrInput interface { pulumi.Input - ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput - ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput + ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput + ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput } -type managedClusterWorkloadAutoScalerProfilePtrType ManagedClusterWorkloadAutoScalerProfileArgs +type managedClusterSecurityProfileWorkloadIdentityPtrType ManagedClusterSecurityProfileWorkloadIdentityArgs -func ManagedClusterWorkloadAutoScalerProfilePtr(v *ManagedClusterWorkloadAutoScalerProfileArgs) ManagedClusterWorkloadAutoScalerProfilePtrInput { - return (*managedClusterWorkloadAutoScalerProfilePtrType)(v) +func ManagedClusterSecurityProfileWorkloadIdentityPtr(v *ManagedClusterSecurityProfileWorkloadIdentityArgs) ManagedClusterSecurityProfileWorkloadIdentityPtrInput { + return (*managedClusterSecurityProfileWorkloadIdentityPtrType)(v) } -func (*managedClusterWorkloadAutoScalerProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() +func (*managedClusterSecurityProfileWorkloadIdentityPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() } -func (i *managedClusterWorkloadAutoScalerProfilePtrType) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { - return i.ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterSecurityProfileWorkloadIdentityPtrType) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return i.ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Background()) } -func (i *managedClusterWorkloadAutoScalerProfilePtrType) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfilePtrOutput) +func (i *managedClusterSecurityProfileWorkloadIdentityPtrType) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) } -// Workload Auto-scaler profile for the managed cluster. -type ManagedClusterWorkloadAutoScalerProfileOutput struct{ *pulumi.OutputState } +// Workload identity settings for the security profile. +type ManagedClusterSecurityProfileWorkloadIdentityOutput struct{ *pulumi.OutputState } -func (ManagedClusterWorkloadAutoScalerProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() +func (ManagedClusterSecurityProfileWorkloadIdentityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() } -func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfileOutput() ManagedClusterWorkloadAutoScalerProfileOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityOutput() ManagedClusterSecurityProfileWorkloadIdentityOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { - return o.ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return o.ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(context.Background()) } -func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfile { +func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterSecurityProfileWorkloadIdentity) *ManagedClusterSecurityProfileWorkloadIdentity { return &v - }).(ManagedClusterWorkloadAutoScalerProfilePtrOutput) + }).(ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -func (o ManagedClusterWorkloadAutoScalerProfileOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfileKeda { - return v.Keda - }).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) +// Whether to enable workload identity. +func (o ManagedClusterSecurityProfileWorkloadIdentityOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileWorkloadIdentity) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type ManagedClusterWorkloadAutoScalerProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileWorkloadIdentityPtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterWorkloadAutoScalerProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() +func (ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileWorkloadIdentity)(nil)).Elem() } -func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutput() ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityPtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityPtrOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfile) ManagedClusterWorkloadAutoScalerProfile { +func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) Elem() ManagedClusterSecurityProfileWorkloadIdentityOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentity) ManagedClusterSecurityProfileWorkloadIdentity { if v != nil { return *v } - var ret ManagedClusterWorkloadAutoScalerProfile + var ret ManagedClusterSecurityProfileWorkloadIdentity return ret - }).(ManagedClusterWorkloadAutoScalerProfileOutput) + }).(ManagedClusterSecurityProfileWorkloadIdentityOutput) } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfileKeda { +// Whether to enable workload identity. +func (o ManagedClusterSecurityProfileWorkloadIdentityPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentity) *bool { if v == nil { return nil } - return v.Keda - }).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) -} - -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -type ManagedClusterWorkloadAutoScalerProfileKeda struct { - // Whether to enable KEDA. - Enabled bool `pulumi:"enabled"` -} - -// ManagedClusterWorkloadAutoScalerProfileKedaInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileKedaArgs and ManagedClusterWorkloadAutoScalerProfileKedaOutput values. -// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileKedaInput` via: -// -// ManagedClusterWorkloadAutoScalerProfileKedaArgs{...} -type ManagedClusterWorkloadAutoScalerProfileKedaInput interface { - pulumi.Input - - ToManagedClusterWorkloadAutoScalerProfileKedaOutput() ManagedClusterWorkloadAutoScalerProfileKedaOutput - ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileKedaOutput -} - -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -type ManagedClusterWorkloadAutoScalerProfileKedaArgs struct { - // Whether to enable KEDA. - Enabled pulumi.BoolInput `pulumi:"enabled"` -} - -func (ManagedClusterWorkloadAutoScalerProfileKedaArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() -} - -func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaOutput() ManagedClusterWorkloadAutoScalerProfileKedaOutput { - return i.ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(context.Background()) -} - -func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileKedaOutput) -} - -func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return i.ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Background()) -} - -func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileKedaOutput).ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx) -} - -// ManagedClusterWorkloadAutoScalerProfileKedaPtrInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileKedaArgs, ManagedClusterWorkloadAutoScalerProfileKedaPtr and ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput values. -// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileKedaPtrInput` via: -// -// ManagedClusterWorkloadAutoScalerProfileKedaArgs{...} -// -// or: -// -// nil -type ManagedClusterWorkloadAutoScalerProfileKedaPtrInput interface { - pulumi.Input - - ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput - ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput -} - -type managedClusterWorkloadAutoScalerProfileKedaPtrType ManagedClusterWorkloadAutoScalerProfileKedaArgs - -func ManagedClusterWorkloadAutoScalerProfileKedaPtr(v *ManagedClusterWorkloadAutoScalerProfileKedaArgs) ManagedClusterWorkloadAutoScalerProfileKedaPtrInput { - return (*managedClusterWorkloadAutoScalerProfileKedaPtrType)(v) -} - -func (*managedClusterWorkloadAutoScalerProfileKedaPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() -} - -func (i *managedClusterWorkloadAutoScalerProfileKedaPtrType) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return i.ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Background()) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -func (i *managedClusterWorkloadAutoScalerProfileKedaPtrType) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) +// Workload identity settings for the security profile. +type ManagedClusterSecurityProfileWorkloadIdentityResponse struct { + // Whether to enable workload identity. + Enabled *bool `pulumi:"enabled"` } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -type ManagedClusterWorkloadAutoScalerProfileKedaOutput struct{ *pulumi.OutputState } +// Workload identity settings for the security profile. +type ManagedClusterSecurityProfileWorkloadIdentityResponseOutput struct{ *pulumi.OutputState } -func (ManagedClusterWorkloadAutoScalerProfileKedaOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() +func (ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterSecurityProfileWorkloadIdentityResponse)(nil)).Elem() } -func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaOutput() ManagedClusterWorkloadAutoScalerProfileKedaOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponseOutput() ManagedClusterSecurityProfileWorkloadIdentityResponseOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponseOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityResponseOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return o.ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Background()) -} - -func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWorkloadAutoScalerProfileKeda) *ManagedClusterWorkloadAutoScalerProfileKeda { - return &v - }).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) -} - -// Whether to enable KEDA. -func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) Enabled() pulumi.BoolOutput { - return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileKeda) bool { return v.Enabled }).(pulumi.BoolOutput) +// Whether to enable workload identity. +func (o ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterSecurityProfileWorkloadIdentityResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput struct{ *pulumi.OutputState } -func (ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() +func (ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterSecurityProfileWorkloadIdentityResponse)(nil)).Elem() } -func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput() ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { +func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) ToManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutputWithContext(ctx context.Context) ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileKedaOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKeda) ManagedClusterWorkloadAutoScalerProfileKeda { +func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) Elem() ManagedClusterSecurityProfileWorkloadIdentityResponseOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentityResponse) ManagedClusterSecurityProfileWorkloadIdentityResponse { if v != nil { return *v } - var ret ManagedClusterWorkloadAutoScalerProfileKeda + var ret ManagedClusterSecurityProfileWorkloadIdentityResponse return ret - }).(ManagedClusterWorkloadAutoScalerProfileKedaOutput) + }).(ManagedClusterSecurityProfileWorkloadIdentityResponseOutput) } -// Whether to enable KEDA. -func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKeda) *bool { +// Whether to enable workload identity. +func (o ManagedClusterSecurityProfileWorkloadIdentityResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterSecurityProfileWorkloadIdentityResponse) *bool { if v == nil { return nil } - return &v.Enabled + return v.Enabled }).(pulumi.BoolPtrOutput) } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -type ManagedClusterWorkloadAutoScalerProfileKedaResponse struct { - // Whether to enable KEDA. - Enabled bool `pulumi:"enabled"` +// Information about a service principal identity for the cluster to use for manipulating Azure APIs. +type ManagedClusterServicePrincipalProfile struct { + // The ID for the service principal. + ClientId string `pulumi:"clientId"` + // The secret password associated with the service principal in plain text. + Secret *string `pulumi:"secret"` } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -type ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput struct{ *pulumi.OutputState } +// ManagedClusterServicePrincipalProfileInput is an input type that accepts ManagedClusterServicePrincipalProfileArgs and ManagedClusterServicePrincipalProfileOutput values. +// You can construct a concrete instance of `ManagedClusterServicePrincipalProfileInput` via: +// +// ManagedClusterServicePrincipalProfileArgs{...} +type ManagedClusterServicePrincipalProfileInput interface { + pulumi.Input -func (ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileKedaResponse)(nil)).Elem() + ToManagedClusterServicePrincipalProfileOutput() ManagedClusterServicePrincipalProfileOutput + ToManagedClusterServicePrincipalProfileOutputWithContext(context.Context) ManagedClusterServicePrincipalProfileOutput } -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponseOutput() ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput { - return o +// Information about a service principal identity for the cluster to use for manipulating Azure APIs. +type ManagedClusterServicePrincipalProfileArgs struct { + // The ID for the service principal. + ClientId pulumi.StringInput `pulumi:"clientId"` + // The secret password associated with the service principal in plain text. + Secret pulumi.StringPtrInput `pulumi:"secret"` } -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponseOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput { - return o +func (ManagedClusterServicePrincipalProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterServicePrincipalProfile)(nil)).Elem() } -// Whether to enable KEDA. -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) Enabled() pulumi.BoolOutput { - return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileKedaResponse) bool { return v.Enabled }).(pulumi.BoolOutput) +func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfileOutput() ManagedClusterServicePrincipalProfileOutput { + return i.ToManagedClusterServicePrincipalProfileOutputWithContext(context.Background()) } -type ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput struct{ *pulumi.OutputState } +func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfileOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterServicePrincipalProfileOutput) +} -func (ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileKedaResponse)(nil)).Elem() +func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { + return i.ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Background()) } -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { - return o +func (i ManagedClusterServicePrincipalProfileArgs) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterServicePrincipalProfileOutput).ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx) } -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { - return o +// ManagedClusterServicePrincipalProfilePtrInput is an input type that accepts ManagedClusterServicePrincipalProfileArgs, ManagedClusterServicePrincipalProfilePtr and ManagedClusterServicePrincipalProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterServicePrincipalProfilePtrInput` via: +// +// ManagedClusterServicePrincipalProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterServicePrincipalProfilePtrInput interface { + pulumi.Input + + ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput + ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Context) ManagedClusterServicePrincipalProfilePtrOutput } -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKedaResponse) ManagedClusterWorkloadAutoScalerProfileKedaResponse { - if v != nil { - return *v - } - var ret ManagedClusterWorkloadAutoScalerProfileKedaResponse - return ret - }).(ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) +type managedClusterServicePrincipalProfilePtrType ManagedClusterServicePrincipalProfileArgs + +func ManagedClusterServicePrincipalProfilePtr(v *ManagedClusterServicePrincipalProfileArgs) ManagedClusterServicePrincipalProfilePtrInput { + return (*managedClusterServicePrincipalProfilePtrType)(v) } -// Whether to enable KEDA. -func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKedaResponse) *bool { - if v == nil { - return nil - } - return &v.Enabled - }).(pulumi.BoolPtrOutput) +func (*managedClusterServicePrincipalProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterServicePrincipalProfile)(nil)).Elem() } -// Workload Auto-scaler profile for the managed cluster. -type ManagedClusterWorkloadAutoScalerProfileResponse struct { - // KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. - Keda *ManagedClusterWorkloadAutoScalerProfileKedaResponse `pulumi:"keda"` +func (i *managedClusterServicePrincipalProfilePtrType) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { + return i.ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Background()) } -// Workload Auto-scaler profile for the managed cluster. -type ManagedClusterWorkloadAutoScalerProfileResponseOutput struct{ *pulumi.OutputState } +func (i *managedClusterServicePrincipalProfilePtrType) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterServicePrincipalProfilePtrOutput) +} -func (ManagedClusterWorkloadAutoScalerProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileResponse)(nil)).Elem() +// Information about a service principal identity for the cluster to use for manipulating Azure APIs. +type ManagedClusterServicePrincipalProfileOutput struct{ *pulumi.OutputState } + +func (ManagedClusterServicePrincipalProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterServicePrincipalProfile)(nil)).Elem() } -func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) ToManagedClusterWorkloadAutoScalerProfileResponseOutput() ManagedClusterWorkloadAutoScalerProfileResponseOutput { +func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfileOutput() ManagedClusterServicePrincipalProfileOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) ToManagedClusterWorkloadAutoScalerProfileResponseOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileResponseOutput { +func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfileOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileOutput { return o } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { - return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileResponse) *ManagedClusterWorkloadAutoScalerProfileKedaResponse { - return v.Keda - }).(ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) +func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { + return o.ToManagedClusterServicePrincipalProfilePtrOutputWithContext(context.Background()) } -type ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput struct{ *pulumi.OutputState } +func (o ManagedClusterServicePrincipalProfileOutput) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterServicePrincipalProfile) *ManagedClusterServicePrincipalProfile { + return &v + }).(ManagedClusterServicePrincipalProfilePtrOutput) +} -func (ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileResponse)(nil)).Elem() +// The ID for the service principal. +func (o ManagedClusterServicePrincipalProfileOutput) ClientId() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterServicePrincipalProfile) string { return v.ClientId }).(pulumi.StringOutput) } -func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileResponsePtrOutput() ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput { +// The secret password associated with the service principal in plain text. +func (o ManagedClusterServicePrincipalProfileOutput) Secret() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterServicePrincipalProfile) *string { return v.Secret }).(pulumi.StringPtrOutput) +} + +type ManagedClusterServicePrincipalProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterServicePrincipalProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterServicePrincipalProfile)(nil)).Elem() +} + +func (o ManagedClusterServicePrincipalProfilePtrOutput) ToManagedClusterServicePrincipalProfilePtrOutput() ManagedClusterServicePrincipalProfilePtrOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput { +func (o ManagedClusterServicePrincipalProfilePtrOutput) ToManagedClusterServicePrincipalProfilePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfilePtrOutput { return o } -func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileResponseOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileResponse) ManagedClusterWorkloadAutoScalerProfileResponse { +func (o ManagedClusterServicePrincipalProfilePtrOutput) Elem() ManagedClusterServicePrincipalProfileOutput { + return o.ApplyT(func(v *ManagedClusterServicePrincipalProfile) ManagedClusterServicePrincipalProfile { if v != nil { return *v } - var ret ManagedClusterWorkloadAutoScalerProfileResponse + var ret ManagedClusterServicePrincipalProfile return ret - }).(ManagedClusterWorkloadAutoScalerProfileResponseOutput) + }).(ManagedClusterServicePrincipalProfileOutput) } -// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. -func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { - return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileResponse) *ManagedClusterWorkloadAutoScalerProfileKedaResponse { +// The ID for the service principal. +func (o ManagedClusterServicePrincipalProfilePtrOutput) ClientId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterServicePrincipalProfile) *string { if v == nil { return nil } - return v.Keda - }).(ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) + return &v.ClientId + }).(pulumi.StringPtrOutput) } -// The status of a member update operation. -type MemberUpdateStatusResponse struct { - // The Azure resource id of the target Kubernetes cluster. - ClusterResourceId string `pulumi:"clusterResourceId"` - // The name of the FleetMember. - Name string `pulumi:"name"` - // The operation resource id of the latest attempt to perform the operation. - OperationId string `pulumi:"operationId"` - // The status of the MemberUpdate operation. - Status UpdateStatusResponse `pulumi:"status"` +// The secret password associated with the service principal in plain text. +func (o ManagedClusterServicePrincipalProfilePtrOutput) Secret() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterServicePrincipalProfile) *string { + if v == nil { + return nil + } + return v.Secret + }).(pulumi.StringPtrOutput) +} + +// Information about a service principal identity for the cluster to use for manipulating Azure APIs. +type ManagedClusterServicePrincipalProfileResponse struct { + // The ID for the service principal. + ClientId string `pulumi:"clientId"` + // The secret password associated with the service principal in plain text. + Secret *string `pulumi:"secret"` } -// The status of a member update operation. -type MemberUpdateStatusResponseOutput struct{ *pulumi.OutputState } +// Information about a service principal identity for the cluster to use for manipulating Azure APIs. +type ManagedClusterServicePrincipalProfileResponseOutput struct{ *pulumi.OutputState } -func (MemberUpdateStatusResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*MemberUpdateStatusResponse)(nil)).Elem() +func (ManagedClusterServicePrincipalProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterServicePrincipalProfileResponse)(nil)).Elem() } -func (o MemberUpdateStatusResponseOutput) ToMemberUpdateStatusResponseOutput() MemberUpdateStatusResponseOutput { +func (o ManagedClusterServicePrincipalProfileResponseOutput) ToManagedClusterServicePrincipalProfileResponseOutput() ManagedClusterServicePrincipalProfileResponseOutput { return o } -func (o MemberUpdateStatusResponseOutput) ToMemberUpdateStatusResponseOutputWithContext(ctx context.Context) MemberUpdateStatusResponseOutput { +func (o ManagedClusterServicePrincipalProfileResponseOutput) ToManagedClusterServicePrincipalProfileResponseOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileResponseOutput { return o } -// The Azure resource id of the target Kubernetes cluster. -func (o MemberUpdateStatusResponseOutput) ClusterResourceId() pulumi.StringOutput { - return o.ApplyT(func(v MemberUpdateStatusResponse) string { return v.ClusterResourceId }).(pulumi.StringOutput) +// The ID for the service principal. +func (o ManagedClusterServicePrincipalProfileResponseOutput) ClientId() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterServicePrincipalProfileResponse) string { return v.ClientId }).(pulumi.StringOutput) } -// The name of the FleetMember. -func (o MemberUpdateStatusResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v MemberUpdateStatusResponse) string { return v.Name }).(pulumi.StringOutput) +// The secret password associated with the service principal in plain text. +func (o ManagedClusterServicePrincipalProfileResponseOutput) Secret() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterServicePrincipalProfileResponse) *string { return v.Secret }).(pulumi.StringPtrOutput) } -// The operation resource id of the latest attempt to perform the operation. -func (o MemberUpdateStatusResponseOutput) OperationId() pulumi.StringOutput { - return o.ApplyT(func(v MemberUpdateStatusResponse) string { return v.OperationId }).(pulumi.StringOutput) -} +type ManagedClusterServicePrincipalProfileResponsePtrOutput struct{ *pulumi.OutputState } -// The status of the MemberUpdate operation. -func (o MemberUpdateStatusResponseOutput) Status() UpdateStatusResponseOutput { - return o.ApplyT(func(v MemberUpdateStatusResponse) UpdateStatusResponse { return v.Status }).(UpdateStatusResponseOutput) +func (ManagedClusterServicePrincipalProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterServicePrincipalProfileResponse)(nil)).Elem() } -type MemberUpdateStatusResponseArrayOutput struct{ *pulumi.OutputState } - -func (MemberUpdateStatusResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]MemberUpdateStatusResponse)(nil)).Elem() +func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) ToManagedClusterServicePrincipalProfileResponsePtrOutput() ManagedClusterServicePrincipalProfileResponsePtrOutput { + return o } -func (o MemberUpdateStatusResponseArrayOutput) ToMemberUpdateStatusResponseArrayOutput() MemberUpdateStatusResponseArrayOutput { +func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) ToManagedClusterServicePrincipalProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterServicePrincipalProfileResponsePtrOutput { return o } -func (o MemberUpdateStatusResponseArrayOutput) ToMemberUpdateStatusResponseArrayOutputWithContext(ctx context.Context) MemberUpdateStatusResponseArrayOutput { - return o +func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) Elem() ManagedClusterServicePrincipalProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterServicePrincipalProfileResponse) ManagedClusterServicePrincipalProfileResponse { + if v != nil { + return *v + } + var ret ManagedClusterServicePrincipalProfileResponse + return ret + }).(ManagedClusterServicePrincipalProfileResponseOutput) } -func (o MemberUpdateStatusResponseArrayOutput) Index(i pulumi.IntInput) MemberUpdateStatusResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) MemberUpdateStatusResponse { - return vs[0].([]MemberUpdateStatusResponse)[vs[1].(int)] - }).(MemberUpdateStatusResponseOutput) +// The ID for the service principal. +func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) ClientId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterServicePrincipalProfileResponse) *string { + if v == nil { + return nil + } + return &v.ClientId + }).(pulumi.StringPtrOutput) } -// Represents the OpenShift networking configuration -type NetworkProfile struct { - // CIDR of subnet used to create PLS needed for management of the cluster - ManagementSubnetCidr *string `pulumi:"managementSubnetCidr"` - // CIDR for the OpenShift Vnet. - VnetCidr *string `pulumi:"vnetCidr"` - // ID of the Vnet created for OSA cluster. - VnetId *string `pulumi:"vnetId"` +// The secret password associated with the service principal in plain text. +func (o ManagedClusterServicePrincipalProfileResponsePtrOutput) Secret() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterServicePrincipalProfileResponse) *string { + if v == nil { + return nil + } + return v.Secret + }).(pulumi.StringPtrOutput) } -// Defaults sets the appropriate defaults for NetworkProfile -func (val *NetworkProfile) Defaults() *NetworkProfile { - if val == nil { - return nil - } - tmp := *val - if tmp.VnetCidr == nil { - vnetCidr_ := "10.0.0.0/8" - tmp.VnetCidr = &vnetCidr_ - } - return &tmp +// Storage profile for the container service cluster. +type ManagedClusterStorageProfile struct { + // AzureBlob CSI Driver settings for the storage profile. + BlobCSIDriver *ManagedClusterStorageProfileBlobCSIDriver `pulumi:"blobCSIDriver"` + // AzureDisk CSI Driver settings for the storage profile. + DiskCSIDriver *ManagedClusterStorageProfileDiskCSIDriver `pulumi:"diskCSIDriver"` + // AzureFile CSI Driver settings for the storage profile. + FileCSIDriver *ManagedClusterStorageProfileFileCSIDriver `pulumi:"fileCSIDriver"` + // Snapshot Controller settings for the storage profile. + SnapshotController *ManagedClusterStorageProfileSnapshotController `pulumi:"snapshotController"` } -// NetworkProfileInput is an input type that accepts NetworkProfileArgs and NetworkProfileOutput values. -// You can construct a concrete instance of `NetworkProfileInput` via: +// ManagedClusterStorageProfileInput is an input type that accepts ManagedClusterStorageProfileArgs and ManagedClusterStorageProfileOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileInput` via: // -// NetworkProfileArgs{...} -type NetworkProfileInput interface { +// ManagedClusterStorageProfileArgs{...} +type ManagedClusterStorageProfileInput interface { pulumi.Input - ToNetworkProfileOutput() NetworkProfileOutput - ToNetworkProfileOutputWithContext(context.Context) NetworkProfileOutput + ToManagedClusterStorageProfileOutput() ManagedClusterStorageProfileOutput + ToManagedClusterStorageProfileOutputWithContext(context.Context) ManagedClusterStorageProfileOutput } -// Represents the OpenShift networking configuration -type NetworkProfileArgs struct { - // CIDR of subnet used to create PLS needed for management of the cluster - ManagementSubnetCidr pulumi.StringPtrInput `pulumi:"managementSubnetCidr"` - // CIDR for the OpenShift Vnet. - VnetCidr pulumi.StringPtrInput `pulumi:"vnetCidr"` - // ID of the Vnet created for OSA cluster. - VnetId pulumi.StringPtrInput `pulumi:"vnetId"` +// Storage profile for the container service cluster. +type ManagedClusterStorageProfileArgs struct { + // AzureBlob CSI Driver settings for the storage profile. + BlobCSIDriver ManagedClusterStorageProfileBlobCSIDriverPtrInput `pulumi:"blobCSIDriver"` + // AzureDisk CSI Driver settings for the storage profile. + DiskCSIDriver ManagedClusterStorageProfileDiskCSIDriverPtrInput `pulumi:"diskCSIDriver"` + // AzureFile CSI Driver settings for the storage profile. + FileCSIDriver ManagedClusterStorageProfileFileCSIDriverPtrInput `pulumi:"fileCSIDriver"` + // Snapshot Controller settings for the storage profile. + SnapshotController ManagedClusterStorageProfileSnapshotControllerPtrInput `pulumi:"snapshotController"` } -// Defaults sets the appropriate defaults for NetworkProfileArgs -func (val *NetworkProfileArgs) Defaults() *NetworkProfileArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.VnetCidr == nil { - tmp.VnetCidr = pulumi.StringPtr("10.0.0.0/8") - } - return &tmp -} -func (NetworkProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkProfile)(nil)).Elem() +func (ManagedClusterStorageProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfile)(nil)).Elem() } -func (i NetworkProfileArgs) ToNetworkProfileOutput() NetworkProfileOutput { - return i.ToNetworkProfileOutputWithContext(context.Background()) +func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfileOutput() ManagedClusterStorageProfileOutput { + return i.ToManagedClusterStorageProfileOutputWithContext(context.Background()) } -func (i NetworkProfileArgs) ToNetworkProfileOutputWithContext(ctx context.Context) NetworkProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(NetworkProfileOutput) +func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfileOutputWithContext(ctx context.Context) ManagedClusterStorageProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileOutput) } -func (i NetworkProfileArgs) ToNetworkProfilePtrOutput() NetworkProfilePtrOutput { - return i.ToNetworkProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { + return i.ToManagedClusterStorageProfilePtrOutputWithContext(context.Background()) } -func (i NetworkProfileArgs) ToNetworkProfilePtrOutputWithContext(ctx context.Context) NetworkProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(NetworkProfileOutput).ToNetworkProfilePtrOutputWithContext(ctx) +func (i ManagedClusterStorageProfileArgs) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileOutput).ToManagedClusterStorageProfilePtrOutputWithContext(ctx) } -// NetworkProfilePtrInput is an input type that accepts NetworkProfileArgs, NetworkProfilePtr and NetworkProfilePtrOutput values. -// You can construct a concrete instance of `NetworkProfilePtrInput` via: +// ManagedClusterStorageProfilePtrInput is an input type that accepts ManagedClusterStorageProfileArgs, ManagedClusterStorageProfilePtr and ManagedClusterStorageProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfilePtrInput` via: // -// NetworkProfileArgs{...} +// ManagedClusterStorageProfileArgs{...} // // or: // // nil -type NetworkProfilePtrInput interface { +type ManagedClusterStorageProfilePtrInput interface { pulumi.Input - ToNetworkProfilePtrOutput() NetworkProfilePtrOutput - ToNetworkProfilePtrOutputWithContext(context.Context) NetworkProfilePtrOutput + ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput + ToManagedClusterStorageProfilePtrOutputWithContext(context.Context) ManagedClusterStorageProfilePtrOutput } -type networkProfilePtrType NetworkProfileArgs +type managedClusterStorageProfilePtrType ManagedClusterStorageProfileArgs -func NetworkProfilePtr(v *NetworkProfileArgs) NetworkProfilePtrInput { - return (*networkProfilePtrType)(v) +func ManagedClusterStorageProfilePtr(v *ManagedClusterStorageProfileArgs) ManagedClusterStorageProfilePtrInput { + return (*managedClusterStorageProfilePtrType)(v) } -func (*networkProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**NetworkProfile)(nil)).Elem() +func (*managedClusterStorageProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfile)(nil)).Elem() } -func (i *networkProfilePtrType) ToNetworkProfilePtrOutput() NetworkProfilePtrOutput { - return i.ToNetworkProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterStorageProfilePtrType) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { + return i.ToManagedClusterStorageProfilePtrOutputWithContext(context.Background()) } -func (i *networkProfilePtrType) ToNetworkProfilePtrOutputWithContext(ctx context.Context) NetworkProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(NetworkProfilePtrOutput) +func (i *managedClusterStorageProfilePtrType) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfilePtrOutput) } -// Represents the OpenShift networking configuration -type NetworkProfileOutput struct{ *pulumi.OutputState } +// Storage profile for the container service cluster. +type ManagedClusterStorageProfileOutput struct{ *pulumi.OutputState } -func (NetworkProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkProfile)(nil)).Elem() +func (ManagedClusterStorageProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfile)(nil)).Elem() } -func (o NetworkProfileOutput) ToNetworkProfileOutput() NetworkProfileOutput { +func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfileOutput() ManagedClusterStorageProfileOutput { return o } -func (o NetworkProfileOutput) ToNetworkProfileOutputWithContext(ctx context.Context) NetworkProfileOutput { +func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfileOutputWithContext(ctx context.Context) ManagedClusterStorageProfileOutput { return o } -func (o NetworkProfileOutput) ToNetworkProfilePtrOutput() NetworkProfilePtrOutput { - return o.ToNetworkProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { + return o.ToManagedClusterStorageProfilePtrOutputWithContext(context.Background()) } -func (o NetworkProfileOutput) ToNetworkProfilePtrOutputWithContext(ctx context.Context) NetworkProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkProfile) *NetworkProfile { +func (o ManagedClusterStorageProfileOutput) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfile) *ManagedClusterStorageProfile { return &v - }).(NetworkProfilePtrOutput) + }).(ManagedClusterStorageProfilePtrOutput) +} + +// AzureBlob CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileBlobCSIDriver { + return v.BlobCSIDriver + }).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) } -// CIDR of subnet used to create PLS needed for management of the cluster -func (o NetworkProfileOutput) ManagementSubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfile) *string { return v.ManagementSubnetCidr }).(pulumi.StringPtrOutput) +// AzureDisk CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileDiskCSIDriver { + return v.DiskCSIDriver + }).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) } -// CIDR for the OpenShift Vnet. -func (o NetworkProfileOutput) VnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfile) *string { return v.VnetCidr }).(pulumi.StringPtrOutput) +// AzureFile CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileFileCSIDriver { + return v.FileCSIDriver + }).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) } -// ID of the Vnet created for OSA cluster. -func (o NetworkProfileOutput) VnetId() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfile) *string { return v.VnetId }).(pulumi.StringPtrOutput) +// Snapshot Controller settings for the storage profile. +func (o ManagedClusterStorageProfileOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfile) *ManagedClusterStorageProfileSnapshotController { + return v.SnapshotController + }).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) } -type NetworkProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfilePtrOutput struct{ *pulumi.OutputState } -func (NetworkProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**NetworkProfile)(nil)).Elem() +func (ManagedClusterStorageProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfile)(nil)).Elem() } -func (o NetworkProfilePtrOutput) ToNetworkProfilePtrOutput() NetworkProfilePtrOutput { +func (o ManagedClusterStorageProfilePtrOutput) ToManagedClusterStorageProfilePtrOutput() ManagedClusterStorageProfilePtrOutput { return o } -func (o NetworkProfilePtrOutput) ToNetworkProfilePtrOutputWithContext(ctx context.Context) NetworkProfilePtrOutput { +func (o ManagedClusterStorageProfilePtrOutput) ToManagedClusterStorageProfilePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfilePtrOutput { return o } -func (o NetworkProfilePtrOutput) Elem() NetworkProfileOutput { - return o.ApplyT(func(v *NetworkProfile) NetworkProfile { +func (o ManagedClusterStorageProfilePtrOutput) Elem() ManagedClusterStorageProfileOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfile) ManagedClusterStorageProfile { if v != nil { return *v } - var ret NetworkProfile + var ret ManagedClusterStorageProfile return ret - }).(NetworkProfileOutput) + }).(ManagedClusterStorageProfileOutput) } -// CIDR of subnet used to create PLS needed for management of the cluster -func (o NetworkProfilePtrOutput) ManagementSubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *NetworkProfile) *string { +// AzureBlob CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfilePtrOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileBlobCSIDriver { if v == nil { return nil } - return v.ManagementSubnetCidr - }).(pulumi.StringPtrOutput) + return v.BlobCSIDriver + }).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) } -// CIDR for the OpenShift Vnet. -func (o NetworkProfilePtrOutput) VnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *NetworkProfile) *string { +// AzureDisk CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfilePtrOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileDiskCSIDriver { if v == nil { return nil } - return v.VnetCidr - }).(pulumi.StringPtrOutput) + return v.DiskCSIDriver + }).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) } -// ID of the Vnet created for OSA cluster. -func (o NetworkProfilePtrOutput) VnetId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *NetworkProfile) *string { +// AzureFile CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfilePtrOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileFileCSIDriver { if v == nil { return nil } - return v.VnetId - }).(pulumi.StringPtrOutput) + return v.FileCSIDriver + }).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) } -// network profile for managed cluster snapshot, these properties are read only. -type NetworkProfileForSnapshotResponse struct { - // loadBalancerSku for managed cluster snapshot. - LoadBalancerSku *string `pulumi:"loadBalancerSku"` - // networkMode for managed cluster snapshot. - NetworkMode *string `pulumi:"networkMode"` - // networkPlugin for managed cluster snapshot. - NetworkPlugin *string `pulumi:"networkPlugin"` - // NetworkPluginMode for managed cluster snapshot. - NetworkPluginMode *string `pulumi:"networkPluginMode"` - // networkPolicy for managed cluster snapshot. - NetworkPolicy *string `pulumi:"networkPolicy"` +// Snapshot Controller settings for the storage profile. +func (o ManagedClusterStorageProfilePtrOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfile) *ManagedClusterStorageProfileSnapshotController { + if v == nil { + return nil + } + return v.SnapshotController + }).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) +} + +// AzureBlob CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileBlobCSIDriver struct { + // Whether to enable AzureBlob CSI Driver. The default value is false. + Enabled *bool `pulumi:"enabled"` } -// network profile for managed cluster snapshot, these properties are read only. -type NetworkProfileForSnapshotResponseOutput struct{ *pulumi.OutputState } +// ManagedClusterStorageProfileBlobCSIDriverInput is an input type that accepts ManagedClusterStorageProfileBlobCSIDriverArgs and ManagedClusterStorageProfileBlobCSIDriverOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileBlobCSIDriverInput` via: +// +// ManagedClusterStorageProfileBlobCSIDriverArgs{...} +type ManagedClusterStorageProfileBlobCSIDriverInput interface { + pulumi.Input -func (NetworkProfileForSnapshotResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkProfileForSnapshotResponse)(nil)).Elem() + ToManagedClusterStorageProfileBlobCSIDriverOutput() ManagedClusterStorageProfileBlobCSIDriverOutput + ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(context.Context) ManagedClusterStorageProfileBlobCSIDriverOutput } -func (o NetworkProfileForSnapshotResponseOutput) ToNetworkProfileForSnapshotResponseOutput() NetworkProfileForSnapshotResponseOutput { - return o +// AzureBlob CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileBlobCSIDriverArgs struct { + // Whether to enable AzureBlob CSI Driver. The default value is false. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -func (o NetworkProfileForSnapshotResponseOutput) ToNetworkProfileForSnapshotResponseOutputWithContext(ctx context.Context) NetworkProfileForSnapshotResponseOutput { - return o +func (ManagedClusterStorageProfileBlobCSIDriverArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() } -// loadBalancerSku for managed cluster snapshot. -func (o NetworkProfileForSnapshotResponseOutput) LoadBalancerSku() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileForSnapshotResponse) *string { return v.LoadBalancerSku }).(pulumi.StringPtrOutput) +func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverOutput() ManagedClusterStorageProfileBlobCSIDriverOutput { + return i.ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(context.Background()) } -// networkMode for managed cluster snapshot. -func (o NetworkProfileForSnapshotResponseOutput) NetworkMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileForSnapshotResponse) *string { return v.NetworkMode }).(pulumi.StringPtrOutput) +func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileBlobCSIDriverOutput) } -// networkPlugin for managed cluster snapshot. -func (o NetworkProfileForSnapshotResponseOutput) NetworkPlugin() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileForSnapshotResponse) *string { return v.NetworkPlugin }).(pulumi.StringPtrOutput) +func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return i.ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Background()) } -// NetworkPluginMode for managed cluster snapshot. -func (o NetworkProfileForSnapshotResponseOutput) NetworkPluginMode() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileForSnapshotResponse) *string { return v.NetworkPluginMode }).(pulumi.StringPtrOutput) +func (i ManagedClusterStorageProfileBlobCSIDriverArgs) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileBlobCSIDriverOutput).ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx) } -// networkPolicy for managed cluster snapshot. -func (o NetworkProfileForSnapshotResponseOutput) NetworkPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileForSnapshotResponse) *string { return v.NetworkPolicy }).(pulumi.StringPtrOutput) +// ManagedClusterStorageProfileBlobCSIDriverPtrInput is an input type that accepts ManagedClusterStorageProfileBlobCSIDriverArgs, ManagedClusterStorageProfileBlobCSIDriverPtr and ManagedClusterStorageProfileBlobCSIDriverPtrOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileBlobCSIDriverPtrInput` via: +// +// ManagedClusterStorageProfileBlobCSIDriverArgs{...} +// +// or: +// +// nil +type ManagedClusterStorageProfileBlobCSIDriverPtrInput interface { + pulumi.Input + + ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput + ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput } -// Represents the OpenShift networking configuration -type NetworkProfileResponse struct { - // CIDR of subnet used to create PLS needed for management of the cluster - ManagementSubnetCidr *string `pulumi:"managementSubnetCidr"` - // CIDR for the OpenShift Vnet. - VnetCidr *string `pulumi:"vnetCidr"` - // ID of the Vnet created for OSA cluster. - VnetId *string `pulumi:"vnetId"` +type managedClusterStorageProfileBlobCSIDriverPtrType ManagedClusterStorageProfileBlobCSIDriverArgs + +func ManagedClusterStorageProfileBlobCSIDriverPtr(v *ManagedClusterStorageProfileBlobCSIDriverArgs) ManagedClusterStorageProfileBlobCSIDriverPtrInput { + return (*managedClusterStorageProfileBlobCSIDriverPtrType)(v) } -// Defaults sets the appropriate defaults for NetworkProfileResponse -func (val *NetworkProfileResponse) Defaults() *NetworkProfileResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.VnetCidr == nil { - vnetCidr_ := "10.0.0.0/8" - tmp.VnetCidr = &vnetCidr_ - } - return &tmp +func (*managedClusterStorageProfileBlobCSIDriverPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() +} + +func (i *managedClusterStorageProfileBlobCSIDriverPtrType) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return i.ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Background()) +} + +func (i *managedClusterStorageProfileBlobCSIDriverPtrType) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) } -// Represents the OpenShift networking configuration -type NetworkProfileResponseOutput struct{ *pulumi.OutputState } +// AzureBlob CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileBlobCSIDriverOutput struct{ *pulumi.OutputState } -func (NetworkProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkProfileResponse)(nil)).Elem() +func (ManagedClusterStorageProfileBlobCSIDriverOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() } -func (o NetworkProfileResponseOutput) ToNetworkProfileResponseOutput() NetworkProfileResponseOutput { +func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverOutput() ManagedClusterStorageProfileBlobCSIDriverOutput { return o } -func (o NetworkProfileResponseOutput) ToNetworkProfileResponseOutputWithContext(ctx context.Context) NetworkProfileResponseOutput { +func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverOutput { return o } -// CIDR of subnet used to create PLS needed for management of the cluster -func (o NetworkProfileResponseOutput) ManagementSubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileResponse) *string { return v.ManagementSubnetCidr }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return o.ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(context.Background()) } -// CIDR for the OpenShift Vnet. -func (o NetworkProfileResponseOutput) VnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileResponse) *string { return v.VnetCidr }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileBlobCSIDriverOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileBlobCSIDriver) *ManagedClusterStorageProfileBlobCSIDriver { + return &v + }).(ManagedClusterStorageProfileBlobCSIDriverPtrOutput) } -// ID of the Vnet created for OSA cluster. -func (o NetworkProfileResponseOutput) VnetId() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkProfileResponse) *string { return v.VnetId }).(pulumi.StringPtrOutput) +// Whether to enable AzureBlob CSI Driver. The default value is false. +func (o ManagedClusterStorageProfileBlobCSIDriverOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileBlobCSIDriver) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type NetworkProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfileBlobCSIDriverPtrOutput struct{ *pulumi.OutputState } -func (NetworkProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**NetworkProfileResponse)(nil)).Elem() +func (ManagedClusterStorageProfileBlobCSIDriverPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileBlobCSIDriver)(nil)).Elem() } -func (o NetworkProfileResponsePtrOutput) ToNetworkProfileResponsePtrOutput() NetworkProfileResponsePtrOutput { +func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutput() ManagedClusterStorageProfileBlobCSIDriverPtrOutput { return o } -func (o NetworkProfileResponsePtrOutput) ToNetworkProfileResponsePtrOutputWithContext(ctx context.Context) NetworkProfileResponsePtrOutput { +func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) ToManagedClusterStorageProfileBlobCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverPtrOutput { return o } -func (o NetworkProfileResponsePtrOutput) Elem() NetworkProfileResponseOutput { - return o.ApplyT(func(v *NetworkProfileResponse) NetworkProfileResponse { +func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) Elem() ManagedClusterStorageProfileBlobCSIDriverOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriver) ManagedClusterStorageProfileBlobCSIDriver { if v != nil { return *v } - var ret NetworkProfileResponse + var ret ManagedClusterStorageProfileBlobCSIDriver return ret - }).(NetworkProfileResponseOutput) + }).(ManagedClusterStorageProfileBlobCSIDriverOutput) } -// CIDR of subnet used to create PLS needed for management of the cluster -func (o NetworkProfileResponsePtrOutput) ManagementSubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *NetworkProfileResponse) *string { +// Whether to enable AzureBlob CSI Driver. The default value is false. +func (o ManagedClusterStorageProfileBlobCSIDriverPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriver) *bool { if v == nil { return nil } - return v.ManagementSubnetCidr - }).(pulumi.StringPtrOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// CIDR for the OpenShift Vnet. -func (o NetworkProfileResponsePtrOutput) VnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *NetworkProfileResponse) *string { - if v == nil { - return nil +// AzureBlob CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileBlobCSIDriverResponse struct { + // Whether to enable AzureBlob CSI Driver. The default value is false. + Enabled *bool `pulumi:"enabled"` +} + +// AzureBlob CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileBlobCSIDriverResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterStorageProfileBlobCSIDriverResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileBlobCSIDriverResponse)(nil)).Elem() +} + +func (o ManagedClusterStorageProfileBlobCSIDriverResponseOutput) ToManagedClusterStorageProfileBlobCSIDriverResponseOutput() ManagedClusterStorageProfileBlobCSIDriverResponseOutput { + return o +} + +func (o ManagedClusterStorageProfileBlobCSIDriverResponseOutput) ToManagedClusterStorageProfileBlobCSIDriverResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverResponseOutput { + return o +} + +// Whether to enable AzureBlob CSI Driver. The default value is false. +func (o ManagedClusterStorageProfileBlobCSIDriverResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileBlobCSIDriverResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +type ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileBlobCSIDriverResponse)(nil)).Elem() +} + +func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput() ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { + return o +} + +func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileBlobCSIDriverResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { + return o +} + +func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) Elem() ManagedClusterStorageProfileBlobCSIDriverResponseOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriverResponse) ManagedClusterStorageProfileBlobCSIDriverResponse { + if v != nil { + return *v } - return v.VnetCidr - }).(pulumi.StringPtrOutput) + var ret ManagedClusterStorageProfileBlobCSIDriverResponse + return ret + }).(ManagedClusterStorageProfileBlobCSIDriverResponseOutput) } -// ID of the Vnet created for OSA cluster. -func (o NetworkProfileResponsePtrOutput) VnetId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *NetworkProfileResponse) *string { +// Whether to enable AzureBlob CSI Driver. The default value is false. +func (o ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileBlobCSIDriverResponse) *bool { if v == nil { return nil } - return v.VnetId - }).(pulumi.StringPtrOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Defines further properties on the API. -type OpenShiftAPIProperties struct { - // Specifies if API server is public or private. - PrivateApiServer *bool `pulumi:"privateApiServer"` +// AzureDisk CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileDiskCSIDriver struct { + // Whether to enable AzureDisk CSI Driver. The default value is true. + Enabled *bool `pulumi:"enabled"` } -// OpenShiftAPIPropertiesInput is an input type that accepts OpenShiftAPIPropertiesArgs and OpenShiftAPIPropertiesOutput values. -// You can construct a concrete instance of `OpenShiftAPIPropertiesInput` via: +// ManagedClusterStorageProfileDiskCSIDriverInput is an input type that accepts ManagedClusterStorageProfileDiskCSIDriverArgs and ManagedClusterStorageProfileDiskCSIDriverOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileDiskCSIDriverInput` via: // -// OpenShiftAPIPropertiesArgs{...} -type OpenShiftAPIPropertiesInput interface { +// ManagedClusterStorageProfileDiskCSIDriverArgs{...} +type ManagedClusterStorageProfileDiskCSIDriverInput interface { pulumi.Input - ToOpenShiftAPIPropertiesOutput() OpenShiftAPIPropertiesOutput - ToOpenShiftAPIPropertiesOutputWithContext(context.Context) OpenShiftAPIPropertiesOutput + ToManagedClusterStorageProfileDiskCSIDriverOutput() ManagedClusterStorageProfileDiskCSIDriverOutput + ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(context.Context) ManagedClusterStorageProfileDiskCSIDriverOutput } -// Defines further properties on the API. -type OpenShiftAPIPropertiesArgs struct { - // Specifies if API server is public or private. - PrivateApiServer pulumi.BoolPtrInput `pulumi:"privateApiServer"` +// AzureDisk CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileDiskCSIDriverArgs struct { + // Whether to enable AzureDisk CSI Driver. The default value is true. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -func (OpenShiftAPIPropertiesArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftAPIProperties)(nil)).Elem() +func (ManagedClusterStorageProfileDiskCSIDriverArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() } -func (i OpenShiftAPIPropertiesArgs) ToOpenShiftAPIPropertiesOutput() OpenShiftAPIPropertiesOutput { - return i.ToOpenShiftAPIPropertiesOutputWithContext(context.Background()) +func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverOutput() ManagedClusterStorageProfileDiskCSIDriverOutput { + return i.ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(context.Background()) } -func (i OpenShiftAPIPropertiesArgs) ToOpenShiftAPIPropertiesOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftAPIPropertiesOutput) +func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileDiskCSIDriverOutput) } -func (i OpenShiftAPIPropertiesArgs) ToOpenShiftAPIPropertiesPtrOutput() OpenShiftAPIPropertiesPtrOutput { - return i.ToOpenShiftAPIPropertiesPtrOutputWithContext(context.Background()) +func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return i.ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Background()) } -func (i OpenShiftAPIPropertiesArgs) ToOpenShiftAPIPropertiesPtrOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftAPIPropertiesOutput).ToOpenShiftAPIPropertiesPtrOutputWithContext(ctx) +func (i ManagedClusterStorageProfileDiskCSIDriverArgs) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileDiskCSIDriverOutput).ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx) } -// OpenShiftAPIPropertiesPtrInput is an input type that accepts OpenShiftAPIPropertiesArgs, OpenShiftAPIPropertiesPtr and OpenShiftAPIPropertiesPtrOutput values. -// You can construct a concrete instance of `OpenShiftAPIPropertiesPtrInput` via: +// ManagedClusterStorageProfileDiskCSIDriverPtrInput is an input type that accepts ManagedClusterStorageProfileDiskCSIDriverArgs, ManagedClusterStorageProfileDiskCSIDriverPtr and ManagedClusterStorageProfileDiskCSIDriverPtrOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileDiskCSIDriverPtrInput` via: // -// OpenShiftAPIPropertiesArgs{...} +// ManagedClusterStorageProfileDiskCSIDriverArgs{...} // // or: // // nil -type OpenShiftAPIPropertiesPtrInput interface { +type ManagedClusterStorageProfileDiskCSIDriverPtrInput interface { pulumi.Input - ToOpenShiftAPIPropertiesPtrOutput() OpenShiftAPIPropertiesPtrOutput - ToOpenShiftAPIPropertiesPtrOutputWithContext(context.Context) OpenShiftAPIPropertiesPtrOutput + ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput + ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput } -type openShiftAPIPropertiesPtrType OpenShiftAPIPropertiesArgs +type managedClusterStorageProfileDiskCSIDriverPtrType ManagedClusterStorageProfileDiskCSIDriverArgs -func OpenShiftAPIPropertiesPtr(v *OpenShiftAPIPropertiesArgs) OpenShiftAPIPropertiesPtrInput { - return (*openShiftAPIPropertiesPtrType)(v) +func ManagedClusterStorageProfileDiskCSIDriverPtr(v *ManagedClusterStorageProfileDiskCSIDriverArgs) ManagedClusterStorageProfileDiskCSIDriverPtrInput { + return (*managedClusterStorageProfileDiskCSIDriverPtrType)(v) } -func (*openShiftAPIPropertiesPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftAPIProperties)(nil)).Elem() +func (*managedClusterStorageProfileDiskCSIDriverPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() } -func (i *openShiftAPIPropertiesPtrType) ToOpenShiftAPIPropertiesPtrOutput() OpenShiftAPIPropertiesPtrOutput { - return i.ToOpenShiftAPIPropertiesPtrOutputWithContext(context.Background()) +func (i *managedClusterStorageProfileDiskCSIDriverPtrType) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return i.ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Background()) } -func (i *openShiftAPIPropertiesPtrType) ToOpenShiftAPIPropertiesPtrOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftAPIPropertiesPtrOutput) +func (i *managedClusterStorageProfileDiskCSIDriverPtrType) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) } -// Defines further properties on the API. -type OpenShiftAPIPropertiesOutput struct{ *pulumi.OutputState } +// AzureDisk CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileDiskCSIDriverOutput struct{ *pulumi.OutputState } -func (OpenShiftAPIPropertiesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftAPIProperties)(nil)).Elem() +func (ManagedClusterStorageProfileDiskCSIDriverOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() } -func (o OpenShiftAPIPropertiesOutput) ToOpenShiftAPIPropertiesOutput() OpenShiftAPIPropertiesOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverOutput() ManagedClusterStorageProfileDiskCSIDriverOutput { return o } -func (o OpenShiftAPIPropertiesOutput) ToOpenShiftAPIPropertiesOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverOutput { return o } -func (o OpenShiftAPIPropertiesOutput) ToOpenShiftAPIPropertiesPtrOutput() OpenShiftAPIPropertiesPtrOutput { - return o.ToOpenShiftAPIPropertiesPtrOutputWithContext(context.Background()) +func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return o.ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(context.Background()) } -func (o OpenShiftAPIPropertiesOutput) ToOpenShiftAPIPropertiesPtrOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftAPIProperties) *OpenShiftAPIProperties { +func (o ManagedClusterStorageProfileDiskCSIDriverOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileDiskCSIDriver) *ManagedClusterStorageProfileDiskCSIDriver { return &v - }).(OpenShiftAPIPropertiesPtrOutput) + }).(ManagedClusterStorageProfileDiskCSIDriverPtrOutput) } -// Specifies if API server is public or private. -func (o OpenShiftAPIPropertiesOutput) PrivateApiServer() pulumi.BoolPtrOutput { - return o.ApplyT(func(v OpenShiftAPIProperties) *bool { return v.PrivateApiServer }).(pulumi.BoolPtrOutput) +// Whether to enable AzureDisk CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileDiskCSIDriverOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileDiskCSIDriver) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type OpenShiftAPIPropertiesPtrOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfileDiskCSIDriverPtrOutput struct{ *pulumi.OutputState } -func (OpenShiftAPIPropertiesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftAPIProperties)(nil)).Elem() +func (ManagedClusterStorageProfileDiskCSIDriverPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileDiskCSIDriver)(nil)).Elem() } -func (o OpenShiftAPIPropertiesPtrOutput) ToOpenShiftAPIPropertiesPtrOutput() OpenShiftAPIPropertiesPtrOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutput() ManagedClusterStorageProfileDiskCSIDriverPtrOutput { return o } -func (o OpenShiftAPIPropertiesPtrOutput) ToOpenShiftAPIPropertiesPtrOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesPtrOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) ToManagedClusterStorageProfileDiskCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverPtrOutput { return o } -func (o OpenShiftAPIPropertiesPtrOutput) Elem() OpenShiftAPIPropertiesOutput { - return o.ApplyT(func(v *OpenShiftAPIProperties) OpenShiftAPIProperties { +func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) Elem() ManagedClusterStorageProfileDiskCSIDriverOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriver) ManagedClusterStorageProfileDiskCSIDriver { if v != nil { return *v } - var ret OpenShiftAPIProperties + var ret ManagedClusterStorageProfileDiskCSIDriver return ret - }).(OpenShiftAPIPropertiesOutput) + }).(ManagedClusterStorageProfileDiskCSIDriverOutput) } -// Specifies if API server is public or private. -func (o OpenShiftAPIPropertiesPtrOutput) PrivateApiServer() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *OpenShiftAPIProperties) *bool { +// Whether to enable AzureDisk CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileDiskCSIDriverPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriver) *bool { if v == nil { return nil } - return v.PrivateApiServer + return v.Enabled }).(pulumi.BoolPtrOutput) } -// Defines further properties on the API. -type OpenShiftAPIPropertiesResponse struct { - // Specifies if API server is public or private. - PrivateApiServer *bool `pulumi:"privateApiServer"` +// AzureDisk CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileDiskCSIDriverResponse struct { + // Whether to enable AzureDisk CSI Driver. The default value is true. + Enabled *bool `pulumi:"enabled"` } -// Defines further properties on the API. -type OpenShiftAPIPropertiesResponseOutput struct{ *pulumi.OutputState } +// AzureDisk CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileDiskCSIDriverResponseOutput struct{ *pulumi.OutputState } -func (OpenShiftAPIPropertiesResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftAPIPropertiesResponse)(nil)).Elem() +func (ManagedClusterStorageProfileDiskCSIDriverResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileDiskCSIDriverResponse)(nil)).Elem() } -func (o OpenShiftAPIPropertiesResponseOutput) ToOpenShiftAPIPropertiesResponseOutput() OpenShiftAPIPropertiesResponseOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverResponseOutput) ToManagedClusterStorageProfileDiskCSIDriverResponseOutput() ManagedClusterStorageProfileDiskCSIDriverResponseOutput { return o } -func (o OpenShiftAPIPropertiesResponseOutput) ToOpenShiftAPIPropertiesResponseOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesResponseOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverResponseOutput) ToManagedClusterStorageProfileDiskCSIDriverResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverResponseOutput { return o } -// Specifies if API server is public or private. -func (o OpenShiftAPIPropertiesResponseOutput) PrivateApiServer() pulumi.BoolPtrOutput { - return o.ApplyT(func(v OpenShiftAPIPropertiesResponse) *bool { return v.PrivateApiServer }).(pulumi.BoolPtrOutput) +// Whether to enable AzureDisk CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileDiskCSIDriverResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileDiskCSIDriverResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type OpenShiftAPIPropertiesResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput struct{ *pulumi.OutputState } -func (OpenShiftAPIPropertiesResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftAPIPropertiesResponse)(nil)).Elem() +func (ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileDiskCSIDriverResponse)(nil)).Elem() } -func (o OpenShiftAPIPropertiesResponsePtrOutput) ToOpenShiftAPIPropertiesResponsePtrOutput() OpenShiftAPIPropertiesResponsePtrOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput() ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { return o } -func (o OpenShiftAPIPropertiesResponsePtrOutput) ToOpenShiftAPIPropertiesResponsePtrOutputWithContext(ctx context.Context) OpenShiftAPIPropertiesResponsePtrOutput { +func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileDiskCSIDriverResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { return o } -func (o OpenShiftAPIPropertiesResponsePtrOutput) Elem() OpenShiftAPIPropertiesResponseOutput { - return o.ApplyT(func(v *OpenShiftAPIPropertiesResponse) OpenShiftAPIPropertiesResponse { +func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) Elem() ManagedClusterStorageProfileDiskCSIDriverResponseOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriverResponse) ManagedClusterStorageProfileDiskCSIDriverResponse { if v != nil { return *v } - var ret OpenShiftAPIPropertiesResponse + var ret ManagedClusterStorageProfileDiskCSIDriverResponse return ret - }).(OpenShiftAPIPropertiesResponseOutput) + }).(ManagedClusterStorageProfileDiskCSIDriverResponseOutput) } -// Specifies if API server is public or private. -func (o OpenShiftAPIPropertiesResponsePtrOutput) PrivateApiServer() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *OpenShiftAPIPropertiesResponse) *bool { +// Whether to enable AzureDisk CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileDiskCSIDriverResponse) *bool { if v == nil { return nil } - return v.PrivateApiServer + return v.Enabled }).(pulumi.BoolPtrOutput) } -// Defines the Identity provider for MS AAD. -type OpenShiftManagedClusterAADIdentityProvider struct { - // The clientId password associated with the provider. - ClientId *string `pulumi:"clientId"` - // The groupId to be granted cluster admin role. - CustomerAdminGroupId *string `pulumi:"customerAdminGroupId"` - // The kind of the provider. - // Expected value is 'AADIdentityProvider'. - Kind string `pulumi:"kind"` - // The secret password associated with the provider. - Secret *string `pulumi:"secret"` - // The tenantId associated with the provider. - TenantId *string `pulumi:"tenantId"` +// AzureFile CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileFileCSIDriver struct { + // Whether to enable AzureFile CSI Driver. The default value is true. + Enabled *bool `pulumi:"enabled"` } -// OpenShiftManagedClusterAADIdentityProviderInput is an input type that accepts OpenShiftManagedClusterAADIdentityProviderArgs and OpenShiftManagedClusterAADIdentityProviderOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterAADIdentityProviderInput` via: +// ManagedClusterStorageProfileFileCSIDriverInput is an input type that accepts ManagedClusterStorageProfileFileCSIDriverArgs and ManagedClusterStorageProfileFileCSIDriverOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileFileCSIDriverInput` via: // -// OpenShiftManagedClusterAADIdentityProviderArgs{...} -type OpenShiftManagedClusterAADIdentityProviderInput interface { +// ManagedClusterStorageProfileFileCSIDriverArgs{...} +type ManagedClusterStorageProfileFileCSIDriverInput interface { pulumi.Input - ToOpenShiftManagedClusterAADIdentityProviderOutput() OpenShiftManagedClusterAADIdentityProviderOutput - ToOpenShiftManagedClusterAADIdentityProviderOutputWithContext(context.Context) OpenShiftManagedClusterAADIdentityProviderOutput + ToManagedClusterStorageProfileFileCSIDriverOutput() ManagedClusterStorageProfileFileCSIDriverOutput + ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(context.Context) ManagedClusterStorageProfileFileCSIDriverOutput } -// Defines the Identity provider for MS AAD. -type OpenShiftManagedClusterAADIdentityProviderArgs struct { - // The clientId password associated with the provider. - ClientId pulumi.StringPtrInput `pulumi:"clientId"` - // The groupId to be granted cluster admin role. - CustomerAdminGroupId pulumi.StringPtrInput `pulumi:"customerAdminGroupId"` - // The kind of the provider. - // Expected value is 'AADIdentityProvider'. - Kind pulumi.StringInput `pulumi:"kind"` - // The secret password associated with the provider. - Secret pulumi.StringPtrInput `pulumi:"secret"` - // The tenantId associated with the provider. - TenantId pulumi.StringPtrInput `pulumi:"tenantId"` +// AzureFile CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileFileCSIDriverArgs struct { + // Whether to enable AzureFile CSI Driver. The default value is true. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` } -func (OpenShiftManagedClusterAADIdentityProviderArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAADIdentityProvider)(nil)).Elem() +func (ManagedClusterStorageProfileFileCSIDriverArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() } -func (i OpenShiftManagedClusterAADIdentityProviderArgs) ToOpenShiftManagedClusterAADIdentityProviderOutput() OpenShiftManagedClusterAADIdentityProviderOutput { - return i.ToOpenShiftManagedClusterAADIdentityProviderOutputWithContext(context.Background()) +func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverOutput() ManagedClusterStorageProfileFileCSIDriverOutput { + return i.ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterAADIdentityProviderArgs) ToOpenShiftManagedClusterAADIdentityProviderOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAADIdentityProviderOutput) +func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileFileCSIDriverOutput) } -func (i OpenShiftManagedClusterAADIdentityProviderArgs) ToOpenShiftManagedClusterAADIdentityProviderPtrOutput() OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return i.ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(context.Background()) +func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return i.ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterAADIdentityProviderArgs) ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAADIdentityProviderOutput).ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(ctx) +func (i ManagedClusterStorageProfileFileCSIDriverArgs) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileFileCSIDriverOutput).ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx) } -// OpenShiftManagedClusterAADIdentityProviderPtrInput is an input type that accepts OpenShiftManagedClusterAADIdentityProviderArgs, OpenShiftManagedClusterAADIdentityProviderPtr and OpenShiftManagedClusterAADIdentityProviderPtrOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterAADIdentityProviderPtrInput` via: +// ManagedClusterStorageProfileFileCSIDriverPtrInput is an input type that accepts ManagedClusterStorageProfileFileCSIDriverArgs, ManagedClusterStorageProfileFileCSIDriverPtr and ManagedClusterStorageProfileFileCSIDriverPtrOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileFileCSIDriverPtrInput` via: // -// OpenShiftManagedClusterAADIdentityProviderArgs{...} +// ManagedClusterStorageProfileFileCSIDriverArgs{...} // // or: // // nil -type OpenShiftManagedClusterAADIdentityProviderPtrInput interface { +type ManagedClusterStorageProfileFileCSIDriverPtrInput interface { pulumi.Input - ToOpenShiftManagedClusterAADIdentityProviderPtrOutput() OpenShiftManagedClusterAADIdentityProviderPtrOutput - ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(context.Context) OpenShiftManagedClusterAADIdentityProviderPtrOutput + ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput + ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput } -type openShiftManagedClusterAADIdentityProviderPtrType OpenShiftManagedClusterAADIdentityProviderArgs +type managedClusterStorageProfileFileCSIDriverPtrType ManagedClusterStorageProfileFileCSIDriverArgs -func OpenShiftManagedClusterAADIdentityProviderPtr(v *OpenShiftManagedClusterAADIdentityProviderArgs) OpenShiftManagedClusterAADIdentityProviderPtrInput { - return (*openShiftManagedClusterAADIdentityProviderPtrType)(v) +func ManagedClusterStorageProfileFileCSIDriverPtr(v *ManagedClusterStorageProfileFileCSIDriverArgs) ManagedClusterStorageProfileFileCSIDriverPtrInput { + return (*managedClusterStorageProfileFileCSIDriverPtrType)(v) } -func (*openShiftManagedClusterAADIdentityProviderPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterAADIdentityProvider)(nil)).Elem() +func (*managedClusterStorageProfileFileCSIDriverPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() } -func (i *openShiftManagedClusterAADIdentityProviderPtrType) ToOpenShiftManagedClusterAADIdentityProviderPtrOutput() OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return i.ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(context.Background()) +func (i *managedClusterStorageProfileFileCSIDriverPtrType) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return i.ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Background()) } -func (i *openShiftManagedClusterAADIdentityProviderPtrType) ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAADIdentityProviderPtrOutput) +func (i *managedClusterStorageProfileFileCSIDriverPtrType) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) } -// Defines the Identity provider for MS AAD. -type OpenShiftManagedClusterAADIdentityProviderOutput struct{ *pulumi.OutputState } +// AzureFile CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileFileCSIDriverOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAADIdentityProviderOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAADIdentityProvider)(nil)).Elem() +func (ManagedClusterStorageProfileFileCSIDriverOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() } -func (o OpenShiftManagedClusterAADIdentityProviderOutput) ToOpenShiftManagedClusterAADIdentityProviderOutput() OpenShiftManagedClusterAADIdentityProviderOutput { +func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverOutput() ManagedClusterStorageProfileFileCSIDriverOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderOutput) ToOpenShiftManagedClusterAADIdentityProviderOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderOutput { +func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderOutput) ToOpenShiftManagedClusterAADIdentityProviderPtrOutput() OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return o.ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(context.Background()) +func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return o.ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(context.Background()) } -func (o OpenShiftManagedClusterAADIdentityProviderOutput) ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftManagedClusterAADIdentityProvider) *OpenShiftManagedClusterAADIdentityProvider { +func (o ManagedClusterStorageProfileFileCSIDriverOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileFileCSIDriver) *ManagedClusterStorageProfileFileCSIDriver { return &v - }).(OpenShiftManagedClusterAADIdentityProviderPtrOutput) + }).(ManagedClusterStorageProfileFileCSIDriverPtrOutput) +} + +// Whether to enable AzureFile CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileFileCSIDriverOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileFileCSIDriver) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +type ManagedClusterStorageProfileFileCSIDriverPtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterStorageProfileFileCSIDriverPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileFileCSIDriver)(nil)).Elem() } -// The clientId password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProvider) *string { return v.ClientId }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutput() ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return o } -// The groupId to be granted cluster admin role. -func (o OpenShiftManagedClusterAADIdentityProviderOutput) CustomerAdminGroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProvider) *string { return v.CustomerAdminGroupId }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) ToManagedClusterStorageProfileFileCSIDriverPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverPtrOutput { + return o } -// The kind of the provider. -// Expected value is 'AADIdentityProvider'. -func (o OpenShiftManagedClusterAADIdentityProviderOutput) Kind() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProvider) string { return v.Kind }).(pulumi.StringOutput) +func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) Elem() ManagedClusterStorageProfileFileCSIDriverOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriver) ManagedClusterStorageProfileFileCSIDriver { + if v != nil { + return *v + } + var ret ManagedClusterStorageProfileFileCSIDriver + return ret + }).(ManagedClusterStorageProfileFileCSIDriverOutput) } -// The secret password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProvider) *string { return v.Secret }).(pulumi.StringPtrOutput) +// Whether to enable AzureFile CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileFileCSIDriverPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriver) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// The tenantId associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderOutput) TenantId() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProvider) *string { return v.TenantId }).(pulumi.StringPtrOutput) +// AzureFile CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileFileCSIDriverResponse struct { + // Whether to enable AzureFile CSI Driver. The default value is true. + Enabled *bool `pulumi:"enabled"` } -type OpenShiftManagedClusterAADIdentityProviderPtrOutput struct{ *pulumi.OutputState } +// AzureFile CSI Driver settings for the storage profile. +type ManagedClusterStorageProfileFileCSIDriverResponseOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAADIdentityProviderPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterAADIdentityProvider)(nil)).Elem() +func (ManagedClusterStorageProfileFileCSIDriverResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileFileCSIDriverResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) ToOpenShiftManagedClusterAADIdentityProviderPtrOutput() OpenShiftManagedClusterAADIdentityProviderPtrOutput { +func (o ManagedClusterStorageProfileFileCSIDriverResponseOutput) ToManagedClusterStorageProfileFileCSIDriverResponseOutput() ManagedClusterStorageProfileFileCSIDriverResponseOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) ToOpenShiftManagedClusterAADIdentityProviderPtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderPtrOutput { +func (o ManagedClusterStorageProfileFileCSIDriverResponseOutput) ToManagedClusterStorageProfileFileCSIDriverResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverResponseOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) Elem() OpenShiftManagedClusterAADIdentityProviderOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProvider) OpenShiftManagedClusterAADIdentityProvider { - if v != nil { - return *v - } - var ret OpenShiftManagedClusterAADIdentityProvider - return ret - }).(OpenShiftManagedClusterAADIdentityProviderOutput) +// Whether to enable AzureFile CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileFileCSIDriverResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileFileCSIDriverResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// The clientId password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProvider) *string { - if v == nil { - return nil - } - return v.ClientId - }).(pulumi.StringPtrOutput) +type ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileFileCSIDriverResponse)(nil)).Elem() } -// The groupId to be granted cluster admin role. -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) CustomerAdminGroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProvider) *string { - if v == nil { - return nil - } - return v.CustomerAdminGroupId - }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileFileCSIDriverResponsePtrOutput() ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { + return o } -// The kind of the provider. -// Expected value is 'AADIdentityProvider'. -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) Kind() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProvider) *string { - if v == nil { - return nil - } - return &v.Kind - }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) ToManagedClusterStorageProfileFileCSIDriverResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { + return o } -// The secret password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProvider) *string { - if v == nil { - return nil +func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) Elem() ManagedClusterStorageProfileFileCSIDriverResponseOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriverResponse) ManagedClusterStorageProfileFileCSIDriverResponse { + if v != nil { + return *v } - return v.Secret - }).(pulumi.StringPtrOutput) + var ret ManagedClusterStorageProfileFileCSIDriverResponse + return ret + }).(ManagedClusterStorageProfileFileCSIDriverResponseOutput) } -// The tenantId associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderPtrOutput) TenantId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProvider) *string { +// Whether to enable AzureFile CSI Driver. The default value is true. +func (o ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileFileCSIDriverResponse) *bool { if v == nil { return nil } - return v.TenantId - }).(pulumi.StringPtrOutput) + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Defines the Identity provider for MS AAD. -type OpenShiftManagedClusterAADIdentityProviderResponse struct { - // The clientId password associated with the provider. - ClientId *string `pulumi:"clientId"` - // The groupId to be granted cluster admin role. - CustomerAdminGroupId *string `pulumi:"customerAdminGroupId"` - // The kind of the provider. - // Expected value is 'AADIdentityProvider'. - Kind string `pulumi:"kind"` - // The secret password associated with the provider. - Secret *string `pulumi:"secret"` - // The tenantId associated with the provider. - TenantId *string `pulumi:"tenantId"` +// Storage profile for the container service cluster. +type ManagedClusterStorageProfileResponse struct { + // AzureBlob CSI Driver settings for the storage profile. + BlobCSIDriver *ManagedClusterStorageProfileBlobCSIDriverResponse `pulumi:"blobCSIDriver"` + // AzureDisk CSI Driver settings for the storage profile. + DiskCSIDriver *ManagedClusterStorageProfileDiskCSIDriverResponse `pulumi:"diskCSIDriver"` + // AzureFile CSI Driver settings for the storage profile. + FileCSIDriver *ManagedClusterStorageProfileFileCSIDriverResponse `pulumi:"fileCSIDriver"` + // Snapshot Controller settings for the storage profile. + SnapshotController *ManagedClusterStorageProfileSnapshotControllerResponse `pulumi:"snapshotController"` } -// Defines the Identity provider for MS AAD. -type OpenShiftManagedClusterAADIdentityProviderResponseOutput struct{ *pulumi.OutputState } +// Storage profile for the container service cluster. +type ManagedClusterStorageProfileResponseOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAADIdentityProviderResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAADIdentityProviderResponse)(nil)).Elem() +func (ManagedClusterStorageProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) ToOpenShiftManagedClusterAADIdentityProviderResponseOutput() OpenShiftManagedClusterAADIdentityProviderResponseOutput { +func (o ManagedClusterStorageProfileResponseOutput) ToManagedClusterStorageProfileResponseOutput() ManagedClusterStorageProfileResponseOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) ToOpenShiftManagedClusterAADIdentityProviderResponseOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderResponseOutput { +func (o ManagedClusterStorageProfileResponseOutput) ToManagedClusterStorageProfileResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileResponseOutput { return o } -// The clientId password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProviderResponse) *string { return v.ClientId }).(pulumi.StringPtrOutput) -} - -// The groupId to be granted cluster admin role. -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) CustomerAdminGroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProviderResponse) *string { return v.CustomerAdminGroupId }).(pulumi.StringPtrOutput) +// AzureBlob CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileResponseOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileBlobCSIDriverResponse { + return v.BlobCSIDriver + }).(ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) } -// The kind of the provider. -// Expected value is 'AADIdentityProvider'. -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) Kind() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProviderResponse) string { return v.Kind }).(pulumi.StringOutput) +// AzureDisk CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileResponseOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileDiskCSIDriverResponse { + return v.DiskCSIDriver + }).(ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) } -// The secret password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProviderResponse) *string { return v.Secret }).(pulumi.StringPtrOutput) +// AzureFile CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileResponseOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileFileCSIDriverResponse { + return v.FileCSIDriver + }).(ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) } -// The tenantId associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderResponseOutput) TenantId() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAADIdentityProviderResponse) *string { return v.TenantId }).(pulumi.StringPtrOutput) +// Snapshot Controller settings for the storage profile. +func (o ManagedClusterStorageProfileResponseOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileSnapshotControllerResponse { + return v.SnapshotController + }).(ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) } -type OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterAADIdentityProviderResponse)(nil)).Elem() +func (ManagedClusterStorageProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) ToOpenShiftManagedClusterAADIdentityProviderResponsePtrOutput() OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput { +func (o ManagedClusterStorageProfileResponsePtrOutput) ToManagedClusterStorageProfileResponsePtrOutput() ManagedClusterStorageProfileResponsePtrOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) ToOpenShiftManagedClusterAADIdentityProviderResponsePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput { +func (o ManagedClusterStorageProfileResponsePtrOutput) ToManagedClusterStorageProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileResponsePtrOutput { return o } -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) Elem() OpenShiftManagedClusterAADIdentityProviderResponseOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProviderResponse) OpenShiftManagedClusterAADIdentityProviderResponse { +func (o ManagedClusterStorageProfileResponsePtrOutput) Elem() ManagedClusterStorageProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) ManagedClusterStorageProfileResponse { if v != nil { return *v } - var ret OpenShiftManagedClusterAADIdentityProviderResponse + var ret ManagedClusterStorageProfileResponse return ret - }).(OpenShiftManagedClusterAADIdentityProviderResponseOutput) + }).(ManagedClusterStorageProfileResponseOutput) } -// The clientId password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) ClientId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProviderResponse) *string { +// AzureBlob CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileResponsePtrOutput) BlobCSIDriver() ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileBlobCSIDriverResponse { if v == nil { return nil } - return v.ClientId - }).(pulumi.StringPtrOutput) + return v.BlobCSIDriver + }).(ManagedClusterStorageProfileBlobCSIDriverResponsePtrOutput) } -// The groupId to be granted cluster admin role. -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) CustomerAdminGroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProviderResponse) *string { +// AzureDisk CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileResponsePtrOutput) DiskCSIDriver() ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileDiskCSIDriverResponse { if v == nil { return nil } - return v.CustomerAdminGroupId - }).(pulumi.StringPtrOutput) + return v.DiskCSIDriver + }).(ManagedClusterStorageProfileDiskCSIDriverResponsePtrOutput) } -// The kind of the provider. -// Expected value is 'AADIdentityProvider'. -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) Kind() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProviderResponse) *string { +// AzureFile CSI Driver settings for the storage profile. +func (o ManagedClusterStorageProfileResponsePtrOutput) FileCSIDriver() ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileFileCSIDriverResponse { if v == nil { return nil } - return &v.Kind - }).(pulumi.StringPtrOutput) + return v.FileCSIDriver + }).(ManagedClusterStorageProfileFileCSIDriverResponsePtrOutput) } -// The secret password associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) Secret() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProviderResponse) *string { +// Snapshot Controller settings for the storage profile. +func (o ManagedClusterStorageProfileResponsePtrOutput) SnapshotController() ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileResponse) *ManagedClusterStorageProfileSnapshotControllerResponse { if v == nil { return nil } - return v.Secret - }).(pulumi.StringPtrOutput) + return v.SnapshotController + }).(ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) } -// The tenantId associated with the provider. -func (o OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) TenantId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAADIdentityProviderResponse) *string { - if v == nil { - return nil - } - return v.TenantId - }).(pulumi.StringPtrOutput) +// Snapshot Controller settings for the storage profile. +type ManagedClusterStorageProfileSnapshotController struct { + // Whether to enable Snapshot Controller. The default value is true. + Enabled *bool `pulumi:"enabled"` } -// Defines the configuration of the OpenShift cluster VMs. -type OpenShiftManagedClusterAgentPoolProfile struct { - // Number of agents (VMs) to host docker containers. - Count int `pulumi:"count"` - // Unique name of the pool profile in the context of the subscription and resource group. - Name string `pulumi:"name"` - // OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. - OsType *string `pulumi:"osType"` - // Define the role of the AgentPoolProfile. - Role *string `pulumi:"role"` - // Subnet CIDR for the peering. - SubnetCidr *string `pulumi:"subnetCidr"` - // Size of agent VMs. - VmSize string `pulumi:"vmSize"` +// ManagedClusterStorageProfileSnapshotControllerInput is an input type that accepts ManagedClusterStorageProfileSnapshotControllerArgs and ManagedClusterStorageProfileSnapshotControllerOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileSnapshotControllerInput` via: +// +// ManagedClusterStorageProfileSnapshotControllerArgs{...} +type ManagedClusterStorageProfileSnapshotControllerInput interface { + pulumi.Input + + ToManagedClusterStorageProfileSnapshotControllerOutput() ManagedClusterStorageProfileSnapshotControllerOutput + ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(context.Context) ManagedClusterStorageProfileSnapshotControllerOutput } -// Defaults sets the appropriate defaults for OpenShiftManagedClusterAgentPoolProfile -func (val *OpenShiftManagedClusterAgentPoolProfile) Defaults() *OpenShiftManagedClusterAgentPoolProfile { - if val == nil { - return nil - } - tmp := *val - if tmp.SubnetCidr == nil { - subnetCidr_ := "10.0.0.0/24" - tmp.SubnetCidr = &subnetCidr_ - } - return &tmp +// Snapshot Controller settings for the storage profile. +type ManagedClusterStorageProfileSnapshotControllerArgs struct { + // Whether to enable Snapshot Controller. The default value is true. + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` +} + +func (ManagedClusterStorageProfileSnapshotControllerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileSnapshotController)(nil)).Elem() +} + +func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerOutput() ManagedClusterStorageProfileSnapshotControllerOutput { + return i.ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(context.Background()) +} + +func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileSnapshotControllerOutput) +} + +func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return i.ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Background()) +} + +func (i ManagedClusterStorageProfileSnapshotControllerArgs) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileSnapshotControllerOutput).ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx) } -// OpenShiftManagedClusterAgentPoolProfileInput is an input type that accepts OpenShiftManagedClusterAgentPoolProfileArgs and OpenShiftManagedClusterAgentPoolProfileOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterAgentPoolProfileInput` via: +// ManagedClusterStorageProfileSnapshotControllerPtrInput is an input type that accepts ManagedClusterStorageProfileSnapshotControllerArgs, ManagedClusterStorageProfileSnapshotControllerPtr and ManagedClusterStorageProfileSnapshotControllerPtrOutput values. +// You can construct a concrete instance of `ManagedClusterStorageProfileSnapshotControllerPtrInput` via: +// +// ManagedClusterStorageProfileSnapshotControllerArgs{...} +// +// or: // -// OpenShiftManagedClusterAgentPoolProfileArgs{...} -type OpenShiftManagedClusterAgentPoolProfileInput interface { +// nil +type ManagedClusterStorageProfileSnapshotControllerPtrInput interface { pulumi.Input - ToOpenShiftManagedClusterAgentPoolProfileOutput() OpenShiftManagedClusterAgentPoolProfileOutput - ToOpenShiftManagedClusterAgentPoolProfileOutputWithContext(context.Context) OpenShiftManagedClusterAgentPoolProfileOutput + ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput + ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput } -// Defines the configuration of the OpenShift cluster VMs. -type OpenShiftManagedClusterAgentPoolProfileArgs struct { - // Number of agents (VMs) to host docker containers. - Count pulumi.IntInput `pulumi:"count"` - // Unique name of the pool profile in the context of the subscription and resource group. - Name pulumi.StringInput `pulumi:"name"` - // OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. - OsType pulumi.StringPtrInput `pulumi:"osType"` - // Define the role of the AgentPoolProfile. - Role pulumi.StringPtrInput `pulumi:"role"` - // Subnet CIDR for the peering. - SubnetCidr pulumi.StringPtrInput `pulumi:"subnetCidr"` - // Size of agent VMs. - VmSize pulumi.StringInput `pulumi:"vmSize"` -} +type managedClusterStorageProfileSnapshotControllerPtrType ManagedClusterStorageProfileSnapshotControllerArgs -// Defaults sets the appropriate defaults for OpenShiftManagedClusterAgentPoolProfileArgs -func (val *OpenShiftManagedClusterAgentPoolProfileArgs) Defaults() *OpenShiftManagedClusterAgentPoolProfileArgs { - if val == nil { - return nil - } - tmp := *val - if tmp.SubnetCidr == nil { - tmp.SubnetCidr = pulumi.StringPtr("10.0.0.0/24") - } - return &tmp +func ManagedClusterStorageProfileSnapshotControllerPtr(v *ManagedClusterStorageProfileSnapshotControllerArgs) ManagedClusterStorageProfileSnapshotControllerPtrInput { + return (*managedClusterStorageProfileSnapshotControllerPtrType)(v) } -func (OpenShiftManagedClusterAgentPoolProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAgentPoolProfile)(nil)).Elem() + +func (*managedClusterStorageProfileSnapshotControllerPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileSnapshotController)(nil)).Elem() } -func (i OpenShiftManagedClusterAgentPoolProfileArgs) ToOpenShiftManagedClusterAgentPoolProfileOutput() OpenShiftManagedClusterAgentPoolProfileOutput { - return i.ToOpenShiftManagedClusterAgentPoolProfileOutputWithContext(context.Background()) +func (i *managedClusterStorageProfileSnapshotControllerPtrType) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return i.ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterAgentPoolProfileArgs) ToOpenShiftManagedClusterAgentPoolProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterAgentPoolProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAgentPoolProfileOutput) +func (i *managedClusterStorageProfileSnapshotControllerPtrType) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) } -// OpenShiftManagedClusterAgentPoolProfileArrayInput is an input type that accepts OpenShiftManagedClusterAgentPoolProfileArray and OpenShiftManagedClusterAgentPoolProfileArrayOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterAgentPoolProfileArrayInput` via: -// -// OpenShiftManagedClusterAgentPoolProfileArray{ OpenShiftManagedClusterAgentPoolProfileArgs{...} } -type OpenShiftManagedClusterAgentPoolProfileArrayInput interface { - pulumi.Input +// Snapshot Controller settings for the storage profile. +type ManagedClusterStorageProfileSnapshotControllerOutput struct{ *pulumi.OutputState } - ToOpenShiftManagedClusterAgentPoolProfileArrayOutput() OpenShiftManagedClusterAgentPoolProfileArrayOutput - ToOpenShiftManagedClusterAgentPoolProfileArrayOutputWithContext(context.Context) OpenShiftManagedClusterAgentPoolProfileArrayOutput +func (ManagedClusterStorageProfileSnapshotControllerOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileSnapshotController)(nil)).Elem() +} + +func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerOutput() ManagedClusterStorageProfileSnapshotControllerOutput { + return o } -type OpenShiftManagedClusterAgentPoolProfileArray []OpenShiftManagedClusterAgentPoolProfileInput +func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerOutput { + return o +} -func (OpenShiftManagedClusterAgentPoolProfileArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftManagedClusterAgentPoolProfile)(nil)).Elem() +func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return o.ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterAgentPoolProfileArray) ToOpenShiftManagedClusterAgentPoolProfileArrayOutput() OpenShiftManagedClusterAgentPoolProfileArrayOutput { - return i.ToOpenShiftManagedClusterAgentPoolProfileArrayOutputWithContext(context.Background()) +func (o ManagedClusterStorageProfileSnapshotControllerOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterStorageProfileSnapshotController) *ManagedClusterStorageProfileSnapshotController { + return &v + }).(ManagedClusterStorageProfileSnapshotControllerPtrOutput) } -func (i OpenShiftManagedClusterAgentPoolProfileArray) ToOpenShiftManagedClusterAgentPoolProfileArrayOutputWithContext(ctx context.Context) OpenShiftManagedClusterAgentPoolProfileArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAgentPoolProfileArrayOutput) +// Whether to enable Snapshot Controller. The default value is true. +func (o ManagedClusterStorageProfileSnapshotControllerOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileSnapshotController) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// Defines the configuration of the OpenShift cluster VMs. -type OpenShiftManagedClusterAgentPoolProfileOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfileSnapshotControllerPtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAgentPoolProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAgentPoolProfile)(nil)).Elem() +func (ManagedClusterStorageProfileSnapshotControllerPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileSnapshotController)(nil)).Elem() } -func (o OpenShiftManagedClusterAgentPoolProfileOutput) ToOpenShiftManagedClusterAgentPoolProfileOutput() OpenShiftManagedClusterAgentPoolProfileOutput { +func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutput() ManagedClusterStorageProfileSnapshotControllerPtrOutput { return o } -func (o OpenShiftManagedClusterAgentPoolProfileOutput) ToOpenShiftManagedClusterAgentPoolProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterAgentPoolProfileOutput { +func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) ToManagedClusterStorageProfileSnapshotControllerPtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerPtrOutput { return o } -// Number of agents (VMs) to host docker containers. -func (o OpenShiftManagedClusterAgentPoolProfileOutput) Count() pulumi.IntOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfile) int { return v.Count }).(pulumi.IntOutput) +func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) Elem() ManagedClusterStorageProfileSnapshotControllerOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotController) ManagedClusterStorageProfileSnapshotController { + if v != nil { + return *v + } + var ret ManagedClusterStorageProfileSnapshotController + return ret + }).(ManagedClusterStorageProfileSnapshotControllerOutput) +} + +// Whether to enable Snapshot Controller. The default value is true. +func (o ManagedClusterStorageProfileSnapshotControllerPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotController) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Unique name of the pool profile in the context of the subscription and resource group. -func (o OpenShiftManagedClusterAgentPoolProfileOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfile) string { return v.Name }).(pulumi.StringOutput) +// Snapshot Controller settings for the storage profile. +type ManagedClusterStorageProfileSnapshotControllerResponse struct { + // Whether to enable Snapshot Controller. The default value is true. + Enabled *bool `pulumi:"enabled"` } -// OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. -func (o OpenShiftManagedClusterAgentPoolProfileOutput) OsType() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfile) *string { return v.OsType }).(pulumi.StringPtrOutput) +// Snapshot Controller settings for the storage profile. +type ManagedClusterStorageProfileSnapshotControllerResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterStorageProfileSnapshotControllerResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterStorageProfileSnapshotControllerResponse)(nil)).Elem() } -// Define the role of the AgentPoolProfile. -func (o OpenShiftManagedClusterAgentPoolProfileOutput) Role() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfile) *string { return v.Role }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileSnapshotControllerResponseOutput) ToManagedClusterStorageProfileSnapshotControllerResponseOutput() ManagedClusterStorageProfileSnapshotControllerResponseOutput { + return o } -// Subnet CIDR for the peering. -func (o OpenShiftManagedClusterAgentPoolProfileOutput) SubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfile) *string { return v.SubnetCidr }).(pulumi.StringPtrOutput) +func (o ManagedClusterStorageProfileSnapshotControllerResponseOutput) ToManagedClusterStorageProfileSnapshotControllerResponseOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerResponseOutput { + return o } -// Size of agent VMs. -func (o OpenShiftManagedClusterAgentPoolProfileOutput) VmSize() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfile) string { return v.VmSize }).(pulumi.StringOutput) +// Whether to enable Snapshot Controller. The default value is true. +func (o ManagedClusterStorageProfileSnapshotControllerResponseOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterStorageProfileSnapshotControllerResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -type OpenShiftManagedClusterAgentPoolProfileArrayOutput struct{ *pulumi.OutputState } +type ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAgentPoolProfileArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftManagedClusterAgentPoolProfile)(nil)).Elem() +func (ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterStorageProfileSnapshotControllerResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterAgentPoolProfileArrayOutput) ToOpenShiftManagedClusterAgentPoolProfileArrayOutput() OpenShiftManagedClusterAgentPoolProfileArrayOutput { +func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) ToManagedClusterStorageProfileSnapshotControllerResponsePtrOutput() ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { return o } -func (o OpenShiftManagedClusterAgentPoolProfileArrayOutput) ToOpenShiftManagedClusterAgentPoolProfileArrayOutputWithContext(ctx context.Context) OpenShiftManagedClusterAgentPoolProfileArrayOutput { +func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) ToManagedClusterStorageProfileSnapshotControllerResponsePtrOutputWithContext(ctx context.Context) ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput { return o } -func (o OpenShiftManagedClusterAgentPoolProfileArrayOutput) Index(i pulumi.IntInput) OpenShiftManagedClusterAgentPoolProfileOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) OpenShiftManagedClusterAgentPoolProfile { - return vs[0].([]OpenShiftManagedClusterAgentPoolProfile)[vs[1].(int)] - }).(OpenShiftManagedClusterAgentPoolProfileOutput) +func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) Elem() ManagedClusterStorageProfileSnapshotControllerResponseOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotControllerResponse) ManagedClusterStorageProfileSnapshotControllerResponse { + if v != nil { + return *v + } + var ret ManagedClusterStorageProfileSnapshotControllerResponse + return ret + }).(ManagedClusterStorageProfileSnapshotControllerResponseOutput) } -// Defines the configuration of the OpenShift cluster VMs. -type OpenShiftManagedClusterAgentPoolProfileResponse struct { - // Number of agents (VMs) to host docker containers. - Count int `pulumi:"count"` - // Unique name of the pool profile in the context of the subscription and resource group. - Name string `pulumi:"name"` - // OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. - OsType *string `pulumi:"osType"` - // Define the role of the AgentPoolProfile. - Role *string `pulumi:"role"` - // Subnet CIDR for the peering. - SubnetCidr *string `pulumi:"subnetCidr"` - // Size of agent VMs. - VmSize string `pulumi:"vmSize"` +// Whether to enable Snapshot Controller. The default value is true. +func (o ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterStorageProfileSnapshotControllerResponse) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) } -// Defaults sets the appropriate defaults for OpenShiftManagedClusterAgentPoolProfileResponse -func (val *OpenShiftManagedClusterAgentPoolProfileResponse) Defaults() *OpenShiftManagedClusterAgentPoolProfileResponse { - if val == nil { - return nil - } - tmp := *val - if tmp.SubnetCidr == nil { - subnetCidr_ := "10.0.0.0/24" - tmp.SubnetCidr = &subnetCidr_ - } - return &tmp +// Profile for Windows VMs in the managed cluster. +type ManagedClusterWindowsProfile struct { + // Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" + AdminPassword *string `pulumi:"adminPassword"` + // Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters + AdminUsername string `pulumi:"adminUsername"` + // For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). + EnableCSIProxy *bool `pulumi:"enableCSIProxy"` + // The Windows gMSA Profile in the Managed Cluster. + GmsaProfile *WindowsGmsaProfile `pulumi:"gmsaProfile"` + // The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. + LicenseType *string `pulumi:"licenseType"` +} + +// ManagedClusterWindowsProfileInput is an input type that accepts ManagedClusterWindowsProfileArgs and ManagedClusterWindowsProfileOutput values. +// You can construct a concrete instance of `ManagedClusterWindowsProfileInput` via: +// +// ManagedClusterWindowsProfileArgs{...} +type ManagedClusterWindowsProfileInput interface { + pulumi.Input + + ToManagedClusterWindowsProfileOutput() ManagedClusterWindowsProfileOutput + ToManagedClusterWindowsProfileOutputWithContext(context.Context) ManagedClusterWindowsProfileOutput +} + +// Profile for Windows VMs in the managed cluster. +type ManagedClusterWindowsProfileArgs struct { + // Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" + AdminPassword pulumi.StringPtrInput `pulumi:"adminPassword"` + // Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters + AdminUsername pulumi.StringInput `pulumi:"adminUsername"` + // For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). + EnableCSIProxy pulumi.BoolPtrInput `pulumi:"enableCSIProxy"` + // The Windows gMSA Profile in the Managed Cluster. + GmsaProfile WindowsGmsaProfilePtrInput `pulumi:"gmsaProfile"` + // The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. + LicenseType pulumi.StringPtrInput `pulumi:"licenseType"` } -// Defines the configuration of the OpenShift cluster VMs. -type OpenShiftManagedClusterAgentPoolProfileResponseOutput struct{ *pulumi.OutputState } +func (ManagedClusterWindowsProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWindowsProfile)(nil)).Elem() +} -func (OpenShiftManagedClusterAgentPoolProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAgentPoolProfileResponse)(nil)).Elem() +func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfileOutput() ManagedClusterWindowsProfileOutput { + return i.ToManagedClusterWindowsProfileOutputWithContext(context.Background()) } -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) ToOpenShiftManagedClusterAgentPoolProfileResponseOutput() OpenShiftManagedClusterAgentPoolProfileResponseOutput { - return o +func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfileOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWindowsProfileOutput) } -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) ToOpenShiftManagedClusterAgentPoolProfileResponseOutputWithContext(ctx context.Context) OpenShiftManagedClusterAgentPoolProfileResponseOutput { - return o +func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { + return i.ToManagedClusterWindowsProfilePtrOutputWithContext(context.Background()) } -// Number of agents (VMs) to host docker containers. -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) Count() pulumi.IntOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfileResponse) int { return v.Count }).(pulumi.IntOutput) +func (i ManagedClusterWindowsProfileArgs) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWindowsProfileOutput).ToManagedClusterWindowsProfilePtrOutputWithContext(ctx) } -// Unique name of the pool profile in the context of the subscription and resource group. -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfileResponse) string { return v.Name }).(pulumi.StringOutput) +// ManagedClusterWindowsProfilePtrInput is an input type that accepts ManagedClusterWindowsProfileArgs, ManagedClusterWindowsProfilePtr and ManagedClusterWindowsProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterWindowsProfilePtrInput` via: +// +// ManagedClusterWindowsProfileArgs{...} +// +// or: +// +// nil +type ManagedClusterWindowsProfilePtrInput interface { + pulumi.Input + + ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput + ToManagedClusterWindowsProfilePtrOutputWithContext(context.Context) ManagedClusterWindowsProfilePtrOutput } -// OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) OsType() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfileResponse) *string { return v.OsType }).(pulumi.StringPtrOutput) +type managedClusterWindowsProfilePtrType ManagedClusterWindowsProfileArgs + +func ManagedClusterWindowsProfilePtr(v *ManagedClusterWindowsProfileArgs) ManagedClusterWindowsProfilePtrInput { + return (*managedClusterWindowsProfilePtrType)(v) } -// Define the role of the AgentPoolProfile. -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) Role() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfileResponse) *string { return v.Role }).(pulumi.StringPtrOutput) +func (*managedClusterWindowsProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWindowsProfile)(nil)).Elem() } -// Subnet CIDR for the peering. -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) SubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfileResponse) *string { return v.SubnetCidr }).(pulumi.StringPtrOutput) +func (i *managedClusterWindowsProfilePtrType) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { + return i.ToManagedClusterWindowsProfilePtrOutputWithContext(context.Background()) } -// Size of agent VMs. -func (o OpenShiftManagedClusterAgentPoolProfileResponseOutput) VmSize() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAgentPoolProfileResponse) string { return v.VmSize }).(pulumi.StringOutput) +func (i *managedClusterWindowsProfilePtrType) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWindowsProfilePtrOutput) } -type OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput struct{ *pulumi.OutputState } +// Profile for Windows VMs in the managed cluster. +type ManagedClusterWindowsProfileOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftManagedClusterAgentPoolProfileResponse)(nil)).Elem() +func (ManagedClusterWindowsProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWindowsProfile)(nil)).Elem() } -func (o OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput) ToOpenShiftManagedClusterAgentPoolProfileResponseArrayOutput() OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput { +func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfileOutput() ManagedClusterWindowsProfileOutput { return o } -func (o OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput) ToOpenShiftManagedClusterAgentPoolProfileResponseArrayOutputWithContext(ctx context.Context) OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput { +func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfileOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileOutput { return o } -func (o OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput) Index(i pulumi.IntInput) OpenShiftManagedClusterAgentPoolProfileResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) OpenShiftManagedClusterAgentPoolProfileResponse { - return vs[0].([]OpenShiftManagedClusterAgentPoolProfileResponse)[vs[1].(int)] - }).(OpenShiftManagedClusterAgentPoolProfileResponseOutput) +func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { + return o.ToManagedClusterWindowsProfilePtrOutputWithContext(context.Background()) } -// Defines all possible authentication profiles for the OpenShift cluster. -type OpenShiftManagedClusterAuthProfile struct { - // Type of authentication profile to use. - IdentityProviders []OpenShiftManagedClusterIdentityProvider `pulumi:"identityProviders"` +func (o ManagedClusterWindowsProfileOutput) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWindowsProfile) *ManagedClusterWindowsProfile { + return &v + }).(ManagedClusterWindowsProfilePtrOutput) } -// OpenShiftManagedClusterAuthProfileInput is an input type that accepts OpenShiftManagedClusterAuthProfileArgs and OpenShiftManagedClusterAuthProfileOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterAuthProfileInput` via: -// -// OpenShiftManagedClusterAuthProfileArgs{...} -type OpenShiftManagedClusterAuthProfileInput interface { - pulumi.Input +// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" +func (o ManagedClusterWindowsProfileOutput) AdminPassword() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfile) *string { return v.AdminPassword }).(pulumi.StringPtrOutput) +} - ToOpenShiftManagedClusterAuthProfileOutput() OpenShiftManagedClusterAuthProfileOutput - ToOpenShiftManagedClusterAuthProfileOutputWithContext(context.Context) OpenShiftManagedClusterAuthProfileOutput +// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters +func (o ManagedClusterWindowsProfileOutput) AdminUsername() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfile) string { return v.AdminUsername }).(pulumi.StringOutput) } -// Defines all possible authentication profiles for the OpenShift cluster. -type OpenShiftManagedClusterAuthProfileArgs struct { - // Type of authentication profile to use. - IdentityProviders OpenShiftManagedClusterIdentityProviderArrayInput `pulumi:"identityProviders"` +// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). +func (o ManagedClusterWindowsProfileOutput) EnableCSIProxy() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfile) *bool { return v.EnableCSIProxy }).(pulumi.BoolPtrOutput) } -func (OpenShiftManagedClusterAuthProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAuthProfile)(nil)).Elem() +// The Windows gMSA Profile in the Managed Cluster. +func (o ManagedClusterWindowsProfileOutput) GmsaProfile() WindowsGmsaProfilePtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfile) *WindowsGmsaProfile { return v.GmsaProfile }).(WindowsGmsaProfilePtrOutput) } -func (i OpenShiftManagedClusterAuthProfileArgs) ToOpenShiftManagedClusterAuthProfileOutput() OpenShiftManagedClusterAuthProfileOutput { - return i.ToOpenShiftManagedClusterAuthProfileOutputWithContext(context.Background()) +// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. +func (o ManagedClusterWindowsProfileOutput) LicenseType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfile) *string { return v.LicenseType }).(pulumi.StringPtrOutput) } -func (i OpenShiftManagedClusterAuthProfileArgs) ToOpenShiftManagedClusterAuthProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAuthProfileOutput) +type ManagedClusterWindowsProfilePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterWindowsProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWindowsProfile)(nil)).Elem() } -func (i OpenShiftManagedClusterAuthProfileArgs) ToOpenShiftManagedClusterAuthProfilePtrOutput() OpenShiftManagedClusterAuthProfilePtrOutput { - return i.ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterWindowsProfilePtrOutput) ToManagedClusterWindowsProfilePtrOutput() ManagedClusterWindowsProfilePtrOutput { + return o } -func (i OpenShiftManagedClusterAuthProfileArgs) ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAuthProfileOutput).ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(ctx) +func (o ManagedClusterWindowsProfilePtrOutput) ToManagedClusterWindowsProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfilePtrOutput { + return o } -// OpenShiftManagedClusterAuthProfilePtrInput is an input type that accepts OpenShiftManagedClusterAuthProfileArgs, OpenShiftManagedClusterAuthProfilePtr and OpenShiftManagedClusterAuthProfilePtrOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterAuthProfilePtrInput` via: -// -// OpenShiftManagedClusterAuthProfileArgs{...} -// -// or: -// -// nil -type OpenShiftManagedClusterAuthProfilePtrInput interface { - pulumi.Input +func (o ManagedClusterWindowsProfilePtrOutput) Elem() ManagedClusterWindowsProfileOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfile) ManagedClusterWindowsProfile { + if v != nil { + return *v + } + var ret ManagedClusterWindowsProfile + return ret + }).(ManagedClusterWindowsProfileOutput) +} - ToOpenShiftManagedClusterAuthProfilePtrOutput() OpenShiftManagedClusterAuthProfilePtrOutput - ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(context.Context) OpenShiftManagedClusterAuthProfilePtrOutput +// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" +func (o ManagedClusterWindowsProfilePtrOutput) AdminPassword() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfile) *string { + if v == nil { + return nil + } + return v.AdminPassword + }).(pulumi.StringPtrOutput) } -type openShiftManagedClusterAuthProfilePtrType OpenShiftManagedClusterAuthProfileArgs +// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters +func (o ManagedClusterWindowsProfilePtrOutput) AdminUsername() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfile) *string { + if v == nil { + return nil + } + return &v.AdminUsername + }).(pulumi.StringPtrOutput) +} -func OpenShiftManagedClusterAuthProfilePtr(v *OpenShiftManagedClusterAuthProfileArgs) OpenShiftManagedClusterAuthProfilePtrInput { - return (*openShiftManagedClusterAuthProfilePtrType)(v) +// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). +func (o ManagedClusterWindowsProfilePtrOutput) EnableCSIProxy() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfile) *bool { + if v == nil { + return nil + } + return v.EnableCSIProxy + }).(pulumi.BoolPtrOutput) } -func (*openShiftManagedClusterAuthProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterAuthProfile)(nil)).Elem() +// The Windows gMSA Profile in the Managed Cluster. +func (o ManagedClusterWindowsProfilePtrOutput) GmsaProfile() WindowsGmsaProfilePtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfile) *WindowsGmsaProfile { + if v == nil { + return nil + } + return v.GmsaProfile + }).(WindowsGmsaProfilePtrOutput) } -func (i *openShiftManagedClusterAuthProfilePtrType) ToOpenShiftManagedClusterAuthProfilePtrOutput() OpenShiftManagedClusterAuthProfilePtrOutput { - return i.ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(context.Background()) +// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. +func (o ManagedClusterWindowsProfilePtrOutput) LicenseType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfile) *string { + if v == nil { + return nil + } + return v.LicenseType + }).(pulumi.StringPtrOutput) } -func (i *openShiftManagedClusterAuthProfilePtrType) ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterAuthProfilePtrOutput) +// Profile for Windows VMs in the managed cluster. +type ManagedClusterWindowsProfileResponse struct { + // Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" + AdminPassword *string `pulumi:"adminPassword"` + // Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters + AdminUsername string `pulumi:"adminUsername"` + // For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). + EnableCSIProxy *bool `pulumi:"enableCSIProxy"` + // The Windows gMSA Profile in the Managed Cluster. + GmsaProfile *WindowsGmsaProfileResponse `pulumi:"gmsaProfile"` + // The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. + LicenseType *string `pulumi:"licenseType"` } -// Defines all possible authentication profiles for the OpenShift cluster. -type OpenShiftManagedClusterAuthProfileOutput struct{ *pulumi.OutputState } +// Profile for Windows VMs in the managed cluster. +type ManagedClusterWindowsProfileResponseOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAuthProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAuthProfile)(nil)).Elem() +func (ManagedClusterWindowsProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWindowsProfileResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterAuthProfileOutput) ToOpenShiftManagedClusterAuthProfileOutput() OpenShiftManagedClusterAuthProfileOutput { +func (o ManagedClusterWindowsProfileResponseOutput) ToManagedClusterWindowsProfileResponseOutput() ManagedClusterWindowsProfileResponseOutput { return o } -func (o OpenShiftManagedClusterAuthProfileOutput) ToOpenShiftManagedClusterAuthProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfileOutput { +func (o ManagedClusterWindowsProfileResponseOutput) ToManagedClusterWindowsProfileResponseOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileResponseOutput { return o } -func (o OpenShiftManagedClusterAuthProfileOutput) ToOpenShiftManagedClusterAuthProfilePtrOutput() OpenShiftManagedClusterAuthProfilePtrOutput { - return o.ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(context.Background()) +// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" +func (o ManagedClusterWindowsProfileResponseOutput) AdminPassword() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *string { return v.AdminPassword }).(pulumi.StringPtrOutput) +} + +// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters +func (o ManagedClusterWindowsProfileResponseOutput) AdminUsername() pulumi.StringOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) string { return v.AdminUsername }).(pulumi.StringOutput) } -func (o OpenShiftManagedClusterAuthProfileOutput) ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftManagedClusterAuthProfile) *OpenShiftManagedClusterAuthProfile { - return &v - }).(OpenShiftManagedClusterAuthProfilePtrOutput) +// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). +func (o ManagedClusterWindowsProfileResponseOutput) EnableCSIProxy() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *bool { return v.EnableCSIProxy }).(pulumi.BoolPtrOutput) +} + +// The Windows gMSA Profile in the Managed Cluster. +func (o ManagedClusterWindowsProfileResponseOutput) GmsaProfile() WindowsGmsaProfileResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *WindowsGmsaProfileResponse { return v.GmsaProfile }).(WindowsGmsaProfileResponsePtrOutput) } -// Type of authentication profile to use. -func (o OpenShiftManagedClusterAuthProfileOutput) IdentityProviders() OpenShiftManagedClusterIdentityProviderArrayOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAuthProfile) []OpenShiftManagedClusterIdentityProvider { - return v.IdentityProviders - }).(OpenShiftManagedClusterIdentityProviderArrayOutput) +// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. +func (o ManagedClusterWindowsProfileResponseOutput) LicenseType() pulumi.StringPtrOutput { + return o.ApplyT(func(v ManagedClusterWindowsProfileResponse) *string { return v.LicenseType }).(pulumi.StringPtrOutput) } -type OpenShiftManagedClusterAuthProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterWindowsProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterAuthProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterAuthProfile)(nil)).Elem() +func (ManagedClusterWindowsProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWindowsProfileResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterAuthProfilePtrOutput) ToOpenShiftManagedClusterAuthProfilePtrOutput() OpenShiftManagedClusterAuthProfilePtrOutput { +func (o ManagedClusterWindowsProfileResponsePtrOutput) ToManagedClusterWindowsProfileResponsePtrOutput() ManagedClusterWindowsProfileResponsePtrOutput { return o } -func (o OpenShiftManagedClusterAuthProfilePtrOutput) ToOpenShiftManagedClusterAuthProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfilePtrOutput { +func (o ManagedClusterWindowsProfileResponsePtrOutput) ToManagedClusterWindowsProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWindowsProfileResponsePtrOutput { return o } -func (o OpenShiftManagedClusterAuthProfilePtrOutput) Elem() OpenShiftManagedClusterAuthProfileOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAuthProfile) OpenShiftManagedClusterAuthProfile { +func (o ManagedClusterWindowsProfileResponsePtrOutput) Elem() ManagedClusterWindowsProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) ManagedClusterWindowsProfileResponse { if v != nil { return *v } - var ret OpenShiftManagedClusterAuthProfile + var ret ManagedClusterWindowsProfileResponse return ret - }).(OpenShiftManagedClusterAuthProfileOutput) + }).(ManagedClusterWindowsProfileResponseOutput) } -// Type of authentication profile to use. -func (o OpenShiftManagedClusterAuthProfilePtrOutput) IdentityProviders() OpenShiftManagedClusterIdentityProviderArrayOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAuthProfile) []OpenShiftManagedClusterIdentityProvider { +// Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\W_])

**Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" +func (o ManagedClusterWindowsProfileResponsePtrOutput) AdminPassword() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *string { if v == nil { return nil } - return v.IdentityProviders - }).(OpenShiftManagedClusterIdentityProviderArrayOutput) -} - -// Defines all possible authentication profiles for the OpenShift cluster. -type OpenShiftManagedClusterAuthProfileResponse struct { - // Type of authentication profile to use. - IdentityProviders []OpenShiftManagedClusterIdentityProviderResponse `pulumi:"identityProviders"` + return v.AdminPassword + }).(pulumi.StringPtrOutput) } -// Defines all possible authentication profiles for the OpenShift cluster. -type OpenShiftManagedClusterAuthProfileResponseOutput struct{ *pulumi.OutputState } - -func (OpenShiftManagedClusterAuthProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterAuthProfileResponse)(nil)).Elem() +// Specifies the name of the administrator account.

**Restriction:** Cannot end in "."

**Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".

**Minimum-length:** 1 character

**Max-length:** 20 characters +func (o ManagedClusterWindowsProfileResponsePtrOutput) AdminUsername() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *string { + if v == nil { + return nil + } + return &v.AdminUsername + }).(pulumi.StringPtrOutput) } -func (o OpenShiftManagedClusterAuthProfileResponseOutput) ToOpenShiftManagedClusterAuthProfileResponseOutput() OpenShiftManagedClusterAuthProfileResponseOutput { - return o +// For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy). +func (o ManagedClusterWindowsProfileResponsePtrOutput) EnableCSIProxy() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *bool { + if v == nil { + return nil + } + return v.EnableCSIProxy + }).(pulumi.BoolPtrOutput) } -func (o OpenShiftManagedClusterAuthProfileResponseOutput) ToOpenShiftManagedClusterAuthProfileResponseOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfileResponseOutput { - return o +// The Windows gMSA Profile in the Managed Cluster. +func (o ManagedClusterWindowsProfileResponsePtrOutput) GmsaProfile() WindowsGmsaProfileResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *WindowsGmsaProfileResponse { + if v == nil { + return nil + } + return v.GmsaProfile + }).(WindowsGmsaProfileResponsePtrOutput) } -// Type of authentication profile to use. -func (o OpenShiftManagedClusterAuthProfileResponseOutput) IdentityProviders() OpenShiftManagedClusterIdentityProviderResponseArrayOutput { - return o.ApplyT(func(v OpenShiftManagedClusterAuthProfileResponse) []OpenShiftManagedClusterIdentityProviderResponse { - return v.IdentityProviders - }).(OpenShiftManagedClusterIdentityProviderResponseArrayOutput) +// The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details. +func (o ManagedClusterWindowsProfileResponsePtrOutput) LicenseType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ManagedClusterWindowsProfileResponse) *string { + if v == nil { + return nil + } + return v.LicenseType + }).(pulumi.StringPtrOutput) } -type OpenShiftManagedClusterAuthProfileResponsePtrOutput struct{ *pulumi.OutputState } - -func (OpenShiftManagedClusterAuthProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterAuthProfileResponse)(nil)).Elem() +// Workload Auto-scaler profile for the managed cluster. +type ManagedClusterWorkloadAutoScalerProfile struct { + // KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. + Keda *ManagedClusterWorkloadAutoScalerProfileKeda `pulumi:"keda"` + // VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. + VerticalPodAutoscaler *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler `pulumi:"verticalPodAutoscaler"` } -func (o OpenShiftManagedClusterAuthProfileResponsePtrOutput) ToOpenShiftManagedClusterAuthProfileResponsePtrOutput() OpenShiftManagedClusterAuthProfileResponsePtrOutput { - return o -} +// Defaults sets the appropriate defaults for ManagedClusterWorkloadAutoScalerProfile +func (val *ManagedClusterWorkloadAutoScalerProfile) Defaults() *ManagedClusterWorkloadAutoScalerProfile { + if val == nil { + return nil + } + tmp := *val + tmp.VerticalPodAutoscaler = tmp.VerticalPodAutoscaler.Defaults() -func (o OpenShiftManagedClusterAuthProfileResponsePtrOutput) ToOpenShiftManagedClusterAuthProfileResponsePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterAuthProfileResponsePtrOutput { - return o + return &tmp } -func (o OpenShiftManagedClusterAuthProfileResponsePtrOutput) Elem() OpenShiftManagedClusterAuthProfileResponseOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAuthProfileResponse) OpenShiftManagedClusterAuthProfileResponse { - if v != nil { - return *v - } - var ret OpenShiftManagedClusterAuthProfileResponse - return ret - }).(OpenShiftManagedClusterAuthProfileResponseOutput) -} +// ManagedClusterWorkloadAutoScalerProfileInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileArgs and ManagedClusterWorkloadAutoScalerProfileOutput values. +// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileInput` via: +// +// ManagedClusterWorkloadAutoScalerProfileArgs{...} +type ManagedClusterWorkloadAutoScalerProfileInput interface { + pulumi.Input -// Type of authentication profile to use. -func (o OpenShiftManagedClusterAuthProfileResponsePtrOutput) IdentityProviders() OpenShiftManagedClusterIdentityProviderResponseArrayOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterAuthProfileResponse) []OpenShiftManagedClusterIdentityProviderResponse { - if v == nil { - return nil - } - return v.IdentityProviders - }).(OpenShiftManagedClusterIdentityProviderResponseArrayOutput) + ToManagedClusterWorkloadAutoScalerProfileOutput() ManagedClusterWorkloadAutoScalerProfileOutput + ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileOutput } -// Defines the configuration of the identity providers to be used in the OpenShift cluster. -type OpenShiftManagedClusterIdentityProvider struct { - // Name of the provider. - Name *string `pulumi:"name"` - // Configuration of the provider. - Provider *OpenShiftManagedClusterAADIdentityProvider `pulumi:"provider"` +// Workload Auto-scaler profile for the managed cluster. +type ManagedClusterWorkloadAutoScalerProfileArgs struct { + // KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. + Keda ManagedClusterWorkloadAutoScalerProfileKedaPtrInput `pulumi:"keda"` + // VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. + VerticalPodAutoscaler ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrInput `pulumi:"verticalPodAutoscaler"` } -// OpenShiftManagedClusterIdentityProviderInput is an input type that accepts OpenShiftManagedClusterIdentityProviderArgs and OpenShiftManagedClusterIdentityProviderOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterIdentityProviderInput` via: -// -// OpenShiftManagedClusterIdentityProviderArgs{...} -type OpenShiftManagedClusterIdentityProviderInput interface { - pulumi.Input +// Defaults sets the appropriate defaults for ManagedClusterWorkloadAutoScalerProfileArgs +func (val *ManagedClusterWorkloadAutoScalerProfileArgs) Defaults() *ManagedClusterWorkloadAutoScalerProfileArgs { + if val == nil { + return nil + } + tmp := *val - ToOpenShiftManagedClusterIdentityProviderOutput() OpenShiftManagedClusterIdentityProviderOutput - ToOpenShiftManagedClusterIdentityProviderOutputWithContext(context.Context) OpenShiftManagedClusterIdentityProviderOutput + return &tmp +} +func (ManagedClusterWorkloadAutoScalerProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() } -// Defines the configuration of the identity providers to be used in the OpenShift cluster. -type OpenShiftManagedClusterIdentityProviderArgs struct { - // Name of the provider. - Name pulumi.StringPtrInput `pulumi:"name"` - // Configuration of the provider. - Provider OpenShiftManagedClusterAADIdentityProviderPtrInput `pulumi:"provider"` +func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfileOutput() ManagedClusterWorkloadAutoScalerProfileOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(context.Background()) } -func (OpenShiftManagedClusterIdentityProviderArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterIdentityProvider)(nil)).Elem() +func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileOutput) } -func (i OpenShiftManagedClusterIdentityProviderArgs) ToOpenShiftManagedClusterIdentityProviderOutput() OpenShiftManagedClusterIdentityProviderOutput { - return i.ToOpenShiftManagedClusterIdentityProviderOutputWithContext(context.Background()) +func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return i.ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterIdentityProviderArgs) ToOpenShiftManagedClusterIdentityProviderOutputWithContext(ctx context.Context) OpenShiftManagedClusterIdentityProviderOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterIdentityProviderOutput) +func (i ManagedClusterWorkloadAutoScalerProfileArgs) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileOutput).ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx) } -// OpenShiftManagedClusterIdentityProviderArrayInput is an input type that accepts OpenShiftManagedClusterIdentityProviderArray and OpenShiftManagedClusterIdentityProviderArrayOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterIdentityProviderArrayInput` via: +// ManagedClusterWorkloadAutoScalerProfilePtrInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileArgs, ManagedClusterWorkloadAutoScalerProfilePtr and ManagedClusterWorkloadAutoScalerProfilePtrOutput values. +// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfilePtrInput` via: +// +// ManagedClusterWorkloadAutoScalerProfileArgs{...} +// +// or: // -// OpenShiftManagedClusterIdentityProviderArray{ OpenShiftManagedClusterIdentityProviderArgs{...} } -type OpenShiftManagedClusterIdentityProviderArrayInput interface { +// nil +type ManagedClusterWorkloadAutoScalerProfilePtrInput interface { pulumi.Input - ToOpenShiftManagedClusterIdentityProviderArrayOutput() OpenShiftManagedClusterIdentityProviderArrayOutput - ToOpenShiftManagedClusterIdentityProviderArrayOutputWithContext(context.Context) OpenShiftManagedClusterIdentityProviderArrayOutput -} - -type OpenShiftManagedClusterIdentityProviderArray []OpenShiftManagedClusterIdentityProviderInput - -func (OpenShiftManagedClusterIdentityProviderArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftManagedClusterIdentityProvider)(nil)).Elem() -} - -func (i OpenShiftManagedClusterIdentityProviderArray) ToOpenShiftManagedClusterIdentityProviderArrayOutput() OpenShiftManagedClusterIdentityProviderArrayOutput { - return i.ToOpenShiftManagedClusterIdentityProviderArrayOutputWithContext(context.Background()) -} - -func (i OpenShiftManagedClusterIdentityProviderArray) ToOpenShiftManagedClusterIdentityProviderArrayOutputWithContext(ctx context.Context) OpenShiftManagedClusterIdentityProviderArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterIdentityProviderArrayOutput) + ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput + ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput } -// Defines the configuration of the identity providers to be used in the OpenShift cluster. -type OpenShiftManagedClusterIdentityProviderOutput struct{ *pulumi.OutputState } - -func (OpenShiftManagedClusterIdentityProviderOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterIdentityProvider)(nil)).Elem() -} +type managedClusterWorkloadAutoScalerProfilePtrType ManagedClusterWorkloadAutoScalerProfileArgs -func (o OpenShiftManagedClusterIdentityProviderOutput) ToOpenShiftManagedClusterIdentityProviderOutput() OpenShiftManagedClusterIdentityProviderOutput { - return o +func ManagedClusterWorkloadAutoScalerProfilePtr(v *ManagedClusterWorkloadAutoScalerProfileArgs) ManagedClusterWorkloadAutoScalerProfilePtrInput { + return (*managedClusterWorkloadAutoScalerProfilePtrType)(v) } -func (o OpenShiftManagedClusterIdentityProviderOutput) ToOpenShiftManagedClusterIdentityProviderOutputWithContext(ctx context.Context) OpenShiftManagedClusterIdentityProviderOutput { - return o +func (*managedClusterWorkloadAutoScalerProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() } -// Name of the provider. -func (o OpenShiftManagedClusterIdentityProviderOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterIdentityProvider) *string { return v.Name }).(pulumi.StringPtrOutput) +func (i *managedClusterWorkloadAutoScalerProfilePtrType) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return i.ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Background()) } -// Configuration of the provider. -func (o OpenShiftManagedClusterIdentityProviderOutput) Provider() OpenShiftManagedClusterAADIdentityProviderPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterIdentityProvider) *OpenShiftManagedClusterAADIdentityProvider { - return v.Provider - }).(OpenShiftManagedClusterAADIdentityProviderPtrOutput) +func (i *managedClusterWorkloadAutoScalerProfilePtrType) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfilePtrOutput) } -type OpenShiftManagedClusterIdentityProviderArrayOutput struct{ *pulumi.OutputState } +// Workload Auto-scaler profile for the managed cluster. +type ManagedClusterWorkloadAutoScalerProfileOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterIdentityProviderArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftManagedClusterIdentityProvider)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() } -func (o OpenShiftManagedClusterIdentityProviderArrayOutput) ToOpenShiftManagedClusterIdentityProviderArrayOutput() OpenShiftManagedClusterIdentityProviderArrayOutput { +func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfileOutput() ManagedClusterWorkloadAutoScalerProfileOutput { return o } -func (o OpenShiftManagedClusterIdentityProviderArrayOutput) ToOpenShiftManagedClusterIdentityProviderArrayOutputWithContext(ctx context.Context) OpenShiftManagedClusterIdentityProviderArrayOutput { +func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfileOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileOutput { return o } -func (o OpenShiftManagedClusterIdentityProviderArrayOutput) Index(i pulumi.IntInput) OpenShiftManagedClusterIdentityProviderOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) OpenShiftManagedClusterIdentityProvider { - return vs[0].([]OpenShiftManagedClusterIdentityProvider)[vs[1].(int)] - }).(OpenShiftManagedClusterIdentityProviderOutput) +func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return o.ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(context.Background()) } -// Defines the configuration of the identity providers to be used in the OpenShift cluster. -type OpenShiftManagedClusterIdentityProviderResponse struct { - // Name of the provider. - Name *string `pulumi:"name"` - // Configuration of the provider. - Provider *OpenShiftManagedClusterAADIdentityProviderResponse `pulumi:"provider"` +func (o ManagedClusterWorkloadAutoScalerProfileOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfile { + return &v + }).(ManagedClusterWorkloadAutoScalerProfilePtrOutput) } -// Defines the configuration of the identity providers to be used in the OpenShift cluster. -type OpenShiftManagedClusterIdentityProviderResponseOutput struct{ *pulumi.OutputState } - -func (OpenShiftManagedClusterIdentityProviderResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterIdentityProviderResponse)(nil)).Elem() +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfileOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfileKeda { + return v.Keda + }).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) } -func (o OpenShiftManagedClusterIdentityProviderResponseOutput) ToOpenShiftManagedClusterIdentityProviderResponseOutput() OpenShiftManagedClusterIdentityProviderResponseOutput { - return o +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfileOutput) VerticalPodAutoscaler() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler { + return v.VerticalPodAutoscaler + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) } -func (o OpenShiftManagedClusterIdentityProviderResponseOutput) ToOpenShiftManagedClusterIdentityProviderResponseOutputWithContext(ctx context.Context) OpenShiftManagedClusterIdentityProviderResponseOutput { - return o -} +type ManagedClusterWorkloadAutoScalerProfilePtrOutput struct{ *pulumi.OutputState } -// Name of the provider. -func (o OpenShiftManagedClusterIdentityProviderResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterIdentityProviderResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +func (ManagedClusterWorkloadAutoScalerProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfile)(nil)).Elem() } -// Configuration of the provider. -func (o OpenShiftManagedClusterIdentityProviderResponseOutput) Provider() OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterIdentityProviderResponse) *OpenShiftManagedClusterAADIdentityProviderResponse { - return v.Provider - }).(OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput) +func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutput() ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return o } -type OpenShiftManagedClusterIdentityProviderResponseArrayOutput struct{ *pulumi.OutputState } - -func (OpenShiftManagedClusterIdentityProviderResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftManagedClusterIdentityProviderResponse)(nil)).Elem() +func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) ToManagedClusterWorkloadAutoScalerProfilePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfilePtrOutput { + return o } -func (o OpenShiftManagedClusterIdentityProviderResponseArrayOutput) ToOpenShiftManagedClusterIdentityProviderResponseArrayOutput() OpenShiftManagedClusterIdentityProviderResponseArrayOutput { - return o +func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfile) ManagedClusterWorkloadAutoScalerProfile { + if v != nil { + return *v + } + var ret ManagedClusterWorkloadAutoScalerProfile + return ret + }).(ManagedClusterWorkloadAutoScalerProfileOutput) } -func (o OpenShiftManagedClusterIdentityProviderResponseArrayOutput) ToOpenShiftManagedClusterIdentityProviderResponseArrayOutputWithContext(ctx context.Context) OpenShiftManagedClusterIdentityProviderResponseArrayOutput { - return o +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfileKeda { + if v == nil { + return nil + } + return v.Keda + }).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) } -func (o OpenShiftManagedClusterIdentityProviderResponseArrayOutput) Index(i pulumi.IntInput) OpenShiftManagedClusterIdentityProviderResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) OpenShiftManagedClusterIdentityProviderResponse { - return vs[0].([]OpenShiftManagedClusterIdentityProviderResponse)[vs[1].(int)] - }).(OpenShiftManagedClusterIdentityProviderResponseOutput) +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfilePtrOutput) VerticalPodAutoscaler() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfile) *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler { + if v == nil { + return nil + } + return v.VerticalPodAutoscaler + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) } -// OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs. -type OpenShiftManagedClusterMasterPoolProfile struct { - // Defines further properties on the API. - ApiProperties *OpenShiftAPIProperties `pulumi:"apiProperties"` - // Number of masters (VMs) to host docker containers. The default value is 3. - Count int `pulumi:"count"` - // Subnet CIDR for the peering. - SubnetCidr *string `pulumi:"subnetCidr"` - // Size of agent VMs. - VmSize string `pulumi:"vmSize"` +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileKeda struct { + // Whether to enable KEDA. + Enabled bool `pulumi:"enabled"` } -// OpenShiftManagedClusterMasterPoolProfileInput is an input type that accepts OpenShiftManagedClusterMasterPoolProfileArgs and OpenShiftManagedClusterMasterPoolProfileOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterMasterPoolProfileInput` via: +// ManagedClusterWorkloadAutoScalerProfileKedaInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileKedaArgs and ManagedClusterWorkloadAutoScalerProfileKedaOutput values. +// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileKedaInput` via: // -// OpenShiftManagedClusterMasterPoolProfileArgs{...} -type OpenShiftManagedClusterMasterPoolProfileInput interface { +// ManagedClusterWorkloadAutoScalerProfileKedaArgs{...} +type ManagedClusterWorkloadAutoScalerProfileKedaInput interface { pulumi.Input - ToOpenShiftManagedClusterMasterPoolProfileOutput() OpenShiftManagedClusterMasterPoolProfileOutput - ToOpenShiftManagedClusterMasterPoolProfileOutputWithContext(context.Context) OpenShiftManagedClusterMasterPoolProfileOutput + ToManagedClusterWorkloadAutoScalerProfileKedaOutput() ManagedClusterWorkloadAutoScalerProfileKedaOutput + ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileKedaOutput } -// OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs. -type OpenShiftManagedClusterMasterPoolProfileArgs struct { - // Defines further properties on the API. - ApiProperties OpenShiftAPIPropertiesPtrInput `pulumi:"apiProperties"` - // Number of masters (VMs) to host docker containers. The default value is 3. - Count pulumi.IntInput `pulumi:"count"` - // Subnet CIDR for the peering. - SubnetCidr pulumi.StringPtrInput `pulumi:"subnetCidr"` - // Size of agent VMs. - VmSize pulumi.StringInput `pulumi:"vmSize"` +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileKedaArgs struct { + // Whether to enable KEDA. + Enabled pulumi.BoolInput `pulumi:"enabled"` } -func (OpenShiftManagedClusterMasterPoolProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterMasterPoolProfile)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileKedaArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() } -func (i OpenShiftManagedClusterMasterPoolProfileArgs) ToOpenShiftManagedClusterMasterPoolProfileOutput() OpenShiftManagedClusterMasterPoolProfileOutput { - return i.ToOpenShiftManagedClusterMasterPoolProfileOutputWithContext(context.Background()) +func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaOutput() ManagedClusterWorkloadAutoScalerProfileKedaOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterMasterPoolProfileArgs) ToOpenShiftManagedClusterMasterPoolProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterMasterPoolProfileOutput) +func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileKedaOutput) } -func (i OpenShiftManagedClusterMasterPoolProfileArgs) ToOpenShiftManagedClusterMasterPoolProfilePtrOutput() OpenShiftManagedClusterMasterPoolProfilePtrOutput { - return i.ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterMasterPoolProfileArgs) ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterMasterPoolProfileOutput).ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(ctx) +func (i ManagedClusterWorkloadAutoScalerProfileKedaArgs) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileKedaOutput).ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx) } -// OpenShiftManagedClusterMasterPoolProfilePtrInput is an input type that accepts OpenShiftManagedClusterMasterPoolProfileArgs, OpenShiftManagedClusterMasterPoolProfilePtr and OpenShiftManagedClusterMasterPoolProfilePtrOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterMasterPoolProfilePtrInput` via: +// ManagedClusterWorkloadAutoScalerProfileKedaPtrInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileKedaArgs, ManagedClusterWorkloadAutoScalerProfileKedaPtr and ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput values. +// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileKedaPtrInput` via: // -// OpenShiftManagedClusterMasterPoolProfileArgs{...} +// ManagedClusterWorkloadAutoScalerProfileKedaArgs{...} // // or: // // nil -type OpenShiftManagedClusterMasterPoolProfilePtrInput interface { +type ManagedClusterWorkloadAutoScalerProfileKedaPtrInput interface { pulumi.Input - ToOpenShiftManagedClusterMasterPoolProfilePtrOutput() OpenShiftManagedClusterMasterPoolProfilePtrOutput - ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(context.Context) OpenShiftManagedClusterMasterPoolProfilePtrOutput + ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput + ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput } -type openShiftManagedClusterMasterPoolProfilePtrType OpenShiftManagedClusterMasterPoolProfileArgs +type managedClusterWorkloadAutoScalerProfileKedaPtrType ManagedClusterWorkloadAutoScalerProfileKedaArgs -func OpenShiftManagedClusterMasterPoolProfilePtr(v *OpenShiftManagedClusterMasterPoolProfileArgs) OpenShiftManagedClusterMasterPoolProfilePtrInput { - return (*openShiftManagedClusterMasterPoolProfilePtrType)(v) +func ManagedClusterWorkloadAutoScalerProfileKedaPtr(v *ManagedClusterWorkloadAutoScalerProfileKedaArgs) ManagedClusterWorkloadAutoScalerProfileKedaPtrInput { + return (*managedClusterWorkloadAutoScalerProfileKedaPtrType)(v) } -func (*openShiftManagedClusterMasterPoolProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterMasterPoolProfile)(nil)).Elem() +func (*managedClusterWorkloadAutoScalerProfileKedaPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() } -func (i *openShiftManagedClusterMasterPoolProfilePtrType) ToOpenShiftManagedClusterMasterPoolProfilePtrOutput() OpenShiftManagedClusterMasterPoolProfilePtrOutput { - return i.ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterWorkloadAutoScalerProfileKedaPtrType) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Background()) } -func (i *openShiftManagedClusterMasterPoolProfilePtrType) ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterMasterPoolProfilePtrOutput) +func (i *managedClusterWorkloadAutoScalerProfileKedaPtrType) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) } -// OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs. -type OpenShiftManagedClusterMasterPoolProfileOutput struct{ *pulumi.OutputState } +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileKedaOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMasterPoolProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterMasterPoolProfile)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileKedaOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() } -func (o OpenShiftManagedClusterMasterPoolProfileOutput) ToOpenShiftManagedClusterMasterPoolProfileOutput() OpenShiftManagedClusterMasterPoolProfileOutput { +func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaOutput() ManagedClusterWorkloadAutoScalerProfileKedaOutput { return o } -func (o OpenShiftManagedClusterMasterPoolProfileOutput) ToOpenShiftManagedClusterMasterPoolProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfileOutput { +func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaOutput { return o } -func (o OpenShiftManagedClusterMasterPoolProfileOutput) ToOpenShiftManagedClusterMasterPoolProfilePtrOutput() OpenShiftManagedClusterMasterPoolProfilePtrOutput { - return o.ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return o.ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(context.Background()) } -func (o OpenShiftManagedClusterMasterPoolProfileOutput) ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftManagedClusterMasterPoolProfile) *OpenShiftManagedClusterMasterPoolProfile { +func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWorkloadAutoScalerProfileKeda) *ManagedClusterWorkloadAutoScalerProfileKeda { return &v - }).(OpenShiftManagedClusterMasterPoolProfilePtrOutput) -} - -// Defines further properties on the API. -func (o OpenShiftManagedClusterMasterPoolProfileOutput) ApiProperties() OpenShiftAPIPropertiesPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfile) *OpenShiftAPIProperties { return v.ApiProperties }).(OpenShiftAPIPropertiesPtrOutput) -} - -// Number of masters (VMs) to host docker containers. The default value is 3. -func (o OpenShiftManagedClusterMasterPoolProfileOutput) Count() pulumi.IntOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfile) int { return v.Count }).(pulumi.IntOutput) -} - -// Subnet CIDR for the peering. -func (o OpenShiftManagedClusterMasterPoolProfileOutput) SubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfile) *string { return v.SubnetCidr }).(pulumi.StringPtrOutput) + }).(ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) } -// Size of agent VMs. -func (o OpenShiftManagedClusterMasterPoolProfileOutput) VmSize() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfile) string { return v.VmSize }).(pulumi.StringOutput) +// Whether to enable KEDA. +func (o ManagedClusterWorkloadAutoScalerProfileKedaOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileKeda) bool { return v.Enabled }).(pulumi.BoolOutput) } -type OpenShiftManagedClusterMasterPoolProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMasterPoolProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterMasterPoolProfile)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileKeda)(nil)).Elem() } -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) ToOpenShiftManagedClusterMasterPoolProfilePtrOutput() OpenShiftManagedClusterMasterPoolProfilePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { return o } -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) ToOpenShiftManagedClusterMasterPoolProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfilePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput { return o } -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) Elem() OpenShiftManagedClusterMasterPoolProfileOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfile) OpenShiftManagedClusterMasterPoolProfile { +func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileKedaOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKeda) ManagedClusterWorkloadAutoScalerProfileKeda { if v != nil { return *v } - var ret OpenShiftManagedClusterMasterPoolProfile + var ret ManagedClusterWorkloadAutoScalerProfileKeda return ret - }).(OpenShiftManagedClusterMasterPoolProfileOutput) + }).(ManagedClusterWorkloadAutoScalerProfileKedaOutput) } -// Defines further properties on the API. -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) ApiProperties() OpenShiftAPIPropertiesPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfile) *OpenShiftAPIProperties { +// Whether to enable KEDA. +func (o ManagedClusterWorkloadAutoScalerProfileKedaPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKeda) *bool { if v == nil { return nil } - return v.ApiProperties - }).(OpenShiftAPIPropertiesPtrOutput) + return &v.Enabled + }).(pulumi.BoolPtrOutput) } -// Number of masters (VMs) to host docker containers. The default value is 3. -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfile) *int { - if v == nil { - return nil - } - return &v.Count - }).(pulumi.IntPtrOutput) +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileKedaResponse struct { + // Whether to enable KEDA. + Enabled bool `pulumi:"enabled"` } -// Subnet CIDR for the peering. -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) SubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfile) *string { - if v == nil { - return nil +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput struct{ *pulumi.OutputState } + +func (ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileKedaResponse)(nil)).Elem() +} + +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponseOutput() ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput { + return o +} + +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponseOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput { + return o +} + +// Whether to enable KEDA. +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileKedaResponse) bool { return v.Enabled }).(pulumi.BoolOutput) +} + +type ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput struct{ *pulumi.OutputState } + +func (ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileKedaResponse)(nil)).Elem() +} + +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput() ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { + return o +} + +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { + return o +} + +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKedaResponse) ManagedClusterWorkloadAutoScalerProfileKedaResponse { + if v != nil { + return *v } - return v.SubnetCidr - }).(pulumi.StringPtrOutput) + var ret ManagedClusterWorkloadAutoScalerProfileKedaResponse + return ret + }).(ManagedClusterWorkloadAutoScalerProfileKedaResponseOutput) } -// Size of agent VMs. -func (o OpenShiftManagedClusterMasterPoolProfilePtrOutput) VmSize() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfile) *string { +// Whether to enable KEDA. +func (o ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileKedaResponse) *bool { if v == nil { return nil } - return &v.VmSize - }).(pulumi.StringPtrOutput) + return &v.Enabled + }).(pulumi.BoolPtrOutput) } -// OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs. -type OpenShiftManagedClusterMasterPoolProfileResponse struct { - // Defines further properties on the API. - ApiProperties *OpenShiftAPIPropertiesResponse `pulumi:"apiProperties"` - // Number of masters (VMs) to host docker containers. The default value is 3. - Count int `pulumi:"count"` - // Subnet CIDR for the peering. - SubnetCidr *string `pulumi:"subnetCidr"` - // Size of agent VMs. - VmSize string `pulumi:"vmSize"` +// Workload Auto-scaler profile for the managed cluster. +type ManagedClusterWorkloadAutoScalerProfileResponse struct { + // KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. + Keda *ManagedClusterWorkloadAutoScalerProfileKedaResponse `pulumi:"keda"` + // VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. + VerticalPodAutoscaler *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse `pulumi:"verticalPodAutoscaler"` } -// OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs. -type OpenShiftManagedClusterMasterPoolProfileResponseOutput struct{ *pulumi.OutputState } +// Defaults sets the appropriate defaults for ManagedClusterWorkloadAutoScalerProfileResponse +func (val *ManagedClusterWorkloadAutoScalerProfileResponse) Defaults() *ManagedClusterWorkloadAutoScalerProfileResponse { + if val == nil { + return nil + } + tmp := *val + tmp.VerticalPodAutoscaler = tmp.VerticalPodAutoscaler.Defaults() -func (OpenShiftManagedClusterMasterPoolProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterMasterPoolProfileResponse)(nil)).Elem() + return &tmp } -func (o OpenShiftManagedClusterMasterPoolProfileResponseOutput) ToOpenShiftManagedClusterMasterPoolProfileResponseOutput() OpenShiftManagedClusterMasterPoolProfileResponseOutput { - return o -} +// Workload Auto-scaler profile for the managed cluster. +type ManagedClusterWorkloadAutoScalerProfileResponseOutput struct{ *pulumi.OutputState } -func (o OpenShiftManagedClusterMasterPoolProfileResponseOutput) ToOpenShiftManagedClusterMasterPoolProfileResponseOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfileResponseOutput { - return o +func (ManagedClusterWorkloadAutoScalerProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileResponse)(nil)).Elem() } -// Defines further properties on the API. -func (o OpenShiftManagedClusterMasterPoolProfileResponseOutput) ApiProperties() OpenShiftAPIPropertiesResponsePtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfileResponse) *OpenShiftAPIPropertiesResponse { - return v.ApiProperties - }).(OpenShiftAPIPropertiesResponsePtrOutput) +func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) ToManagedClusterWorkloadAutoScalerProfileResponseOutput() ManagedClusterWorkloadAutoScalerProfileResponseOutput { + return o } -// Number of masters (VMs) to host docker containers. The default value is 3. -func (o OpenShiftManagedClusterMasterPoolProfileResponseOutput) Count() pulumi.IntOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfileResponse) int { return v.Count }).(pulumi.IntOutput) +func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) ToManagedClusterWorkloadAutoScalerProfileResponseOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileResponseOutput { + return o } -// Subnet CIDR for the peering. -func (o OpenShiftManagedClusterMasterPoolProfileResponseOutput) SubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfileResponse) *string { return v.SubnetCidr }).(pulumi.StringPtrOutput) +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileResponse) *ManagedClusterWorkloadAutoScalerProfileKedaResponse { + return v.Keda + }).(ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) } -// Size of agent VMs. -func (o OpenShiftManagedClusterMasterPoolProfileResponseOutput) VmSize() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMasterPoolProfileResponse) string { return v.VmSize }).(pulumi.StringOutput) +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfileResponseOutput) VerticalPodAutoscaler() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileResponse) *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse { + return v.VerticalPodAutoscaler + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) } -type OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterMasterPoolProfileResponse)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) ToOpenShiftManagedClusterMasterPoolProfileResponsePtrOutput() OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileResponsePtrOutput() ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput { return o } -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) ToOpenShiftManagedClusterMasterPoolProfileResponsePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput { return o } -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) Elem() OpenShiftManagedClusterMasterPoolProfileResponseOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfileResponse) OpenShiftManagedClusterMasterPoolProfileResponse { +func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileResponseOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileResponse) ManagedClusterWorkloadAutoScalerProfileResponse { if v != nil { return *v } - var ret OpenShiftManagedClusterMasterPoolProfileResponse + var ret ManagedClusterWorkloadAutoScalerProfileResponse return ret - }).(OpenShiftManagedClusterMasterPoolProfileResponseOutput) -} - -// Defines further properties on the API. -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) ApiProperties() OpenShiftAPIPropertiesResponsePtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfileResponse) *OpenShiftAPIPropertiesResponse { - if v == nil { - return nil - } - return v.ApiProperties - }).(OpenShiftAPIPropertiesResponsePtrOutput) + }).(ManagedClusterWorkloadAutoScalerProfileResponseOutput) } -// Number of masters (VMs) to host docker containers. The default value is 3. -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) Count() pulumi.IntPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfileResponse) *int { +// KEDA (Kubernetes Event-driven Autoscaling) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) Keda() ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileResponse) *ManagedClusterWorkloadAutoScalerProfileKedaResponse { if v == nil { return nil } - return &v.Count - }).(pulumi.IntPtrOutput) + return v.Keda + }).(ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput) } -// Subnet CIDR for the peering. -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) SubnetCidr() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfileResponse) *string { +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +func (o ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput) VerticalPodAutoscaler() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileResponse) *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse { if v == nil { return nil } - return v.SubnetCidr - }).(pulumi.StringPtrOutput) + return v.VerticalPodAutoscaler + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) } -// Size of agent VMs. -func (o OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput) VmSize() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMasterPoolProfileResponse) *string { - if v == nil { - return nil - } - return &v.VmSize - }).(pulumi.StringPtrOutput) +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler struct { + // Whether to enable VPA. Default value is false. + Enabled bool `pulumi:"enabled"` } -// Defines the configuration for Log Analytics integration. -type OpenShiftManagedClusterMonitorProfile struct { - // If the Log analytics integration should be turned on or off - Enabled *bool `pulumi:"enabled"` - // Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. - WorkspaceResourceID *string `pulumi:"workspaceResourceID"` +// Defaults sets the appropriate defaults for ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler +func (val *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler) Defaults() *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler { + if val == nil { + return nil + } + tmp := *val + if utilities.IsZero(tmp.Enabled) { + tmp.Enabled = false + } + return &tmp } -// OpenShiftManagedClusterMonitorProfileInput is an input type that accepts OpenShiftManagedClusterMonitorProfileArgs and OpenShiftManagedClusterMonitorProfileOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterMonitorProfileInput` via: +// ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs and ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput values. +// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerInput` via: // -// OpenShiftManagedClusterMonitorProfileArgs{...} -type OpenShiftManagedClusterMonitorProfileInput interface { +// ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs{...} +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerInput interface { pulumi.Input - ToOpenShiftManagedClusterMonitorProfileOutput() OpenShiftManagedClusterMonitorProfileOutput - ToOpenShiftManagedClusterMonitorProfileOutputWithContext(context.Context) OpenShiftManagedClusterMonitorProfileOutput + ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput + ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput } -// Defines the configuration for Log Analytics integration. -type OpenShiftManagedClusterMonitorProfileArgs struct { - // If the Log analytics integration should be turned on or off - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. - WorkspaceResourceID pulumi.StringPtrInput `pulumi:"workspaceResourceID"` +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs struct { + // Whether to enable VPA. Default value is false. + Enabled pulumi.BoolInput `pulumi:"enabled"` } -func (OpenShiftManagedClusterMonitorProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterMonitorProfile)(nil)).Elem() +// Defaults sets the appropriate defaults for ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs +func (val *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) Defaults() *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs { + if val == nil { + return nil + } + tmp := *val + if tmp.Enabled == nil { + tmp.Enabled = pulumi.Bool(false) + } + return &tmp +} +func (ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler)(nil)).Elem() } -func (i OpenShiftManagedClusterMonitorProfileArgs) ToOpenShiftManagedClusterMonitorProfileOutput() OpenShiftManagedClusterMonitorProfileOutput { - return i.ToOpenShiftManagedClusterMonitorProfileOutputWithContext(context.Background()) +func (i ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterMonitorProfileArgs) ToOpenShiftManagedClusterMonitorProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterMonitorProfileOutput) +func (i ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) } -func (i OpenShiftManagedClusterMonitorProfileArgs) ToOpenShiftManagedClusterMonitorProfilePtrOutput() OpenShiftManagedClusterMonitorProfilePtrOutput { - return i.ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(context.Background()) +func (i ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(context.Background()) } -func (i OpenShiftManagedClusterMonitorProfileArgs) ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterMonitorProfileOutput).ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(ctx) +func (i ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput).ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(ctx) } -// OpenShiftManagedClusterMonitorProfilePtrInput is an input type that accepts OpenShiftManagedClusterMonitorProfileArgs, OpenShiftManagedClusterMonitorProfilePtr and OpenShiftManagedClusterMonitorProfilePtrOutput values. -// You can construct a concrete instance of `OpenShiftManagedClusterMonitorProfilePtrInput` via: +// ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrInput is an input type that accepts ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs, ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtr and ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput values. +// You can construct a concrete instance of `ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrInput` via: // -// OpenShiftManagedClusterMonitorProfileArgs{...} +// ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs{...} // // or: // // nil -type OpenShiftManagedClusterMonitorProfilePtrInput interface { +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrInput interface { pulumi.Input - ToOpenShiftManagedClusterMonitorProfilePtrOutput() OpenShiftManagedClusterMonitorProfilePtrOutput - ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(context.Context) OpenShiftManagedClusterMonitorProfilePtrOutput + ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput + ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput } -type openShiftManagedClusterMonitorProfilePtrType OpenShiftManagedClusterMonitorProfileArgs +type managedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrType ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs -func OpenShiftManagedClusterMonitorProfilePtr(v *OpenShiftManagedClusterMonitorProfileArgs) OpenShiftManagedClusterMonitorProfilePtrInput { - return (*openShiftManagedClusterMonitorProfilePtrType)(v) +func ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtr(v *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerArgs) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrInput { + return (*managedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrType)(v) } -func (*openShiftManagedClusterMonitorProfilePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterMonitorProfile)(nil)).Elem() +func (*managedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler)(nil)).Elem() } -func (i *openShiftManagedClusterMonitorProfilePtrType) ToOpenShiftManagedClusterMonitorProfilePtrOutput() OpenShiftManagedClusterMonitorProfilePtrOutput { - return i.ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(context.Background()) +func (i *managedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrType) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return i.ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(context.Background()) } -func (i *openShiftManagedClusterMonitorProfilePtrType) ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfilePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftManagedClusterMonitorProfilePtrOutput) +func (i *managedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrType) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) } -// Defines the configuration for Log Analytics integration. -type OpenShiftManagedClusterMonitorProfileOutput struct{ *pulumi.OutputState } +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMonitorProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterMonitorProfile)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler)(nil)).Elem() } -func (o OpenShiftManagedClusterMonitorProfileOutput) ToOpenShiftManagedClusterMonitorProfileOutput() OpenShiftManagedClusterMonitorProfileOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput { return o } -func (o OpenShiftManagedClusterMonitorProfileOutput) ToOpenShiftManagedClusterMonitorProfileOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfileOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput { return o } -func (o OpenShiftManagedClusterMonitorProfileOutput) ToOpenShiftManagedClusterMonitorProfilePtrOutput() OpenShiftManagedClusterMonitorProfilePtrOutput { - return o.ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(context.Background()) +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return o.ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(context.Background()) } -func (o OpenShiftManagedClusterMonitorProfileOutput) ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfilePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v OpenShiftManagedClusterMonitorProfile) *OpenShiftManagedClusterMonitorProfile { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler) *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler { return &v - }).(OpenShiftManagedClusterMonitorProfilePtrOutput) -} - -// If the Log analytics integration should be turned on or off -func (o OpenShiftManagedClusterMonitorProfileOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMonitorProfile) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) } -// Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. -func (o OpenShiftManagedClusterMonitorProfileOutput) WorkspaceResourceID() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMonitorProfile) *string { return v.WorkspaceResourceID }).(pulumi.StringPtrOutput) +// Whether to enable VPA. Default value is false. +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler) bool { return v.Enabled }).(pulumi.BoolOutput) } -type OpenShiftManagedClusterMonitorProfilePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMonitorProfilePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterMonitorProfile)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler)(nil)).Elem() } -func (o OpenShiftManagedClusterMonitorProfilePtrOutput) ToOpenShiftManagedClusterMonitorProfilePtrOutput() OpenShiftManagedClusterMonitorProfilePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { return o } -func (o OpenShiftManagedClusterMonitorProfilePtrOutput) ToOpenShiftManagedClusterMonitorProfilePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfilePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput { return o } -func (o OpenShiftManagedClusterMonitorProfilePtrOutput) Elem() OpenShiftManagedClusterMonitorProfileOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMonitorProfile) OpenShiftManagedClusterMonitorProfile { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler { if v != nil { return *v } - var ret OpenShiftManagedClusterMonitorProfile + var ret ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler return ret - }).(OpenShiftManagedClusterMonitorProfileOutput) + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput) } -// If the Log analytics integration should be turned on or off -func (o OpenShiftManagedClusterMonitorProfilePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMonitorProfile) *bool { +// Whether to enable VPA. Default value is false. +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscaler) *bool { if v == nil { return nil } - return v.Enabled + return &v.Enabled }).(pulumi.BoolPtrOutput) } -// Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. -func (o OpenShiftManagedClusterMonitorProfilePtrOutput) WorkspaceResourceID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMonitorProfile) *string { - if v == nil { - return nil - } - return v.WorkspaceResourceID - }).(pulumi.StringPtrOutput) +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse struct { + // Whether to enable VPA. Default value is false. + Enabled bool `pulumi:"enabled"` } -// Defines the configuration for Log Analytics integration. -type OpenShiftManagedClusterMonitorProfileResponse struct { - // If the Log analytics integration should be turned on or off - Enabled *bool `pulumi:"enabled"` - // Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. - WorkspaceResourceID *string `pulumi:"workspaceResourceID"` +// Defaults sets the appropriate defaults for ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse +func (val *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse) Defaults() *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse { + if val == nil { + return nil + } + tmp := *val + if utilities.IsZero(tmp.Enabled) { + tmp.Enabled = false + } + return &tmp } -// Defines the configuration for Log Analytics integration. -type OpenShiftManagedClusterMonitorProfileResponseOutput struct{ *pulumi.OutputState } +// VPA (Vertical Pod Autoscaler) settings for the workload auto-scaler profile. +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMonitorProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftManagedClusterMonitorProfileResponse)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterMonitorProfileResponseOutput) ToOpenShiftManagedClusterMonitorProfileResponseOutput() OpenShiftManagedClusterMonitorProfileResponseOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput { return o } -func (o OpenShiftManagedClusterMonitorProfileResponseOutput) ToOpenShiftManagedClusterMonitorProfileResponseOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfileResponseOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput { return o } -// If the Log analytics integration should be turned on or off -func (o OpenShiftManagedClusterMonitorProfileResponseOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMonitorProfileResponse) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -// Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. -func (o OpenShiftManagedClusterMonitorProfileResponseOutput) WorkspaceResourceID() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftManagedClusterMonitorProfileResponse) *string { return v.WorkspaceResourceID }).(pulumi.StringPtrOutput) +// Whether to enable VPA. Default value is false. +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput) Enabled() pulumi.BoolOutput { + return o.ApplyT(func(v ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse) bool { return v.Enabled }).(pulumi.BoolOutput) } -type OpenShiftManagedClusterMonitorProfileResponsePtrOutput struct{ *pulumi.OutputState } +type ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput struct{ *pulumi.OutputState } -func (OpenShiftManagedClusterMonitorProfileResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**OpenShiftManagedClusterMonitorProfileResponse)(nil)).Elem() +func (ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse)(nil)).Elem() } -func (o OpenShiftManagedClusterMonitorProfileResponsePtrOutput) ToOpenShiftManagedClusterMonitorProfileResponsePtrOutput() OpenShiftManagedClusterMonitorProfileResponsePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput { return o } -func (o OpenShiftManagedClusterMonitorProfileResponsePtrOutput) ToOpenShiftManagedClusterMonitorProfileResponsePtrOutputWithContext(ctx context.Context) OpenShiftManagedClusterMonitorProfileResponsePtrOutput { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) ToManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutputWithContext(ctx context.Context) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput { return o } -func (o OpenShiftManagedClusterMonitorProfileResponsePtrOutput) Elem() OpenShiftManagedClusterMonitorProfileResponseOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMonitorProfileResponse) OpenShiftManagedClusterMonitorProfileResponse { +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) Elem() ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse) ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse { if v != nil { return *v } - var ret OpenShiftManagedClusterMonitorProfileResponse + var ret ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse return ret - }).(OpenShiftManagedClusterMonitorProfileResponseOutput) + }).(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput) } -// If the Log analytics integration should be turned on or off -func (o OpenShiftManagedClusterMonitorProfileResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMonitorProfileResponse) *bool { +// Whether to enable VPA. Default value is false. +func (o ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponse) *bool { if v == nil { return nil } - return v.Enabled + return &v.Enabled }).(pulumi.BoolPtrOutput) } -// Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with. -func (o OpenShiftManagedClusterMonitorProfileResponsePtrOutput) WorkspaceResourceID() pulumi.StringPtrOutput { - return o.ApplyT(func(v *OpenShiftManagedClusterMonitorProfileResponse) *string { - if v == nil { - return nil - } - return v.WorkspaceResourceID - }).(pulumi.StringPtrOutput) -} - -// Represents an OpenShift router -type OpenShiftRouterProfile struct { - // Name of the router profile. - Name *string `pulumi:"name"` +// The port range. +type PortRange struct { + // The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or equal to portStart. + PortEnd *int `pulumi:"portEnd"` + // The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or equal to portEnd. + PortStart *int `pulumi:"portStart"` + // The network protocol of the port. + Protocol *string `pulumi:"protocol"` } -// OpenShiftRouterProfileInput is an input type that accepts OpenShiftRouterProfileArgs and OpenShiftRouterProfileOutput values. -// You can construct a concrete instance of `OpenShiftRouterProfileInput` via: +// PortRangeInput is an input type that accepts PortRangeArgs and PortRangeOutput values. +// You can construct a concrete instance of `PortRangeInput` via: // -// OpenShiftRouterProfileArgs{...} -type OpenShiftRouterProfileInput interface { +// PortRangeArgs{...} +type PortRangeInput interface { pulumi.Input - ToOpenShiftRouterProfileOutput() OpenShiftRouterProfileOutput - ToOpenShiftRouterProfileOutputWithContext(context.Context) OpenShiftRouterProfileOutput + ToPortRangeOutput() PortRangeOutput + ToPortRangeOutputWithContext(context.Context) PortRangeOutput } -// Represents an OpenShift router -type OpenShiftRouterProfileArgs struct { - // Name of the router profile. - Name pulumi.StringPtrInput `pulumi:"name"` +// The port range. +type PortRangeArgs struct { + // The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or equal to portStart. + PortEnd pulumi.IntPtrInput `pulumi:"portEnd"` + // The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or equal to portEnd. + PortStart pulumi.IntPtrInput `pulumi:"portStart"` + // The network protocol of the port. + Protocol pulumi.StringPtrInput `pulumi:"protocol"` } -func (OpenShiftRouterProfileArgs) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftRouterProfile)(nil)).Elem() +func (PortRangeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PortRange)(nil)).Elem() } -func (i OpenShiftRouterProfileArgs) ToOpenShiftRouterProfileOutput() OpenShiftRouterProfileOutput { - return i.ToOpenShiftRouterProfileOutputWithContext(context.Background()) +func (i PortRangeArgs) ToPortRangeOutput() PortRangeOutput { + return i.ToPortRangeOutputWithContext(context.Background()) } -func (i OpenShiftRouterProfileArgs) ToOpenShiftRouterProfileOutputWithContext(ctx context.Context) OpenShiftRouterProfileOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftRouterProfileOutput) +func (i PortRangeArgs) ToPortRangeOutputWithContext(ctx context.Context) PortRangeOutput { + return pulumi.ToOutputWithContext(ctx, i).(PortRangeOutput) } -// OpenShiftRouterProfileArrayInput is an input type that accepts OpenShiftRouterProfileArray and OpenShiftRouterProfileArrayOutput values. -// You can construct a concrete instance of `OpenShiftRouterProfileArrayInput` via: +// PortRangeArrayInput is an input type that accepts PortRangeArray and PortRangeArrayOutput values. +// You can construct a concrete instance of `PortRangeArrayInput` via: // -// OpenShiftRouterProfileArray{ OpenShiftRouterProfileArgs{...} } -type OpenShiftRouterProfileArrayInput interface { +// PortRangeArray{ PortRangeArgs{...} } +type PortRangeArrayInput interface { pulumi.Input - ToOpenShiftRouterProfileArrayOutput() OpenShiftRouterProfileArrayOutput - ToOpenShiftRouterProfileArrayOutputWithContext(context.Context) OpenShiftRouterProfileArrayOutput + ToPortRangeArrayOutput() PortRangeArrayOutput + ToPortRangeArrayOutputWithContext(context.Context) PortRangeArrayOutput } -type OpenShiftRouterProfileArray []OpenShiftRouterProfileInput +type PortRangeArray []PortRangeInput -func (OpenShiftRouterProfileArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftRouterProfile)(nil)).Elem() +func (PortRangeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PortRange)(nil)).Elem() } -func (i OpenShiftRouterProfileArray) ToOpenShiftRouterProfileArrayOutput() OpenShiftRouterProfileArrayOutput { - return i.ToOpenShiftRouterProfileArrayOutputWithContext(context.Background()) +func (i PortRangeArray) ToPortRangeArrayOutput() PortRangeArrayOutput { + return i.ToPortRangeArrayOutputWithContext(context.Background()) } -func (i OpenShiftRouterProfileArray) ToOpenShiftRouterProfileArrayOutputWithContext(ctx context.Context) OpenShiftRouterProfileArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(OpenShiftRouterProfileArrayOutput) +func (i PortRangeArray) ToPortRangeArrayOutputWithContext(ctx context.Context) PortRangeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PortRangeArrayOutput) } -// Represents an OpenShift router -type OpenShiftRouterProfileOutput struct{ *pulumi.OutputState } +// The port range. +type PortRangeOutput struct{ *pulumi.OutputState } -func (OpenShiftRouterProfileOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftRouterProfile)(nil)).Elem() +func (PortRangeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PortRange)(nil)).Elem() } -func (o OpenShiftRouterProfileOutput) ToOpenShiftRouterProfileOutput() OpenShiftRouterProfileOutput { +func (o PortRangeOutput) ToPortRangeOutput() PortRangeOutput { return o } -func (o OpenShiftRouterProfileOutput) ToOpenShiftRouterProfileOutputWithContext(ctx context.Context) OpenShiftRouterProfileOutput { +func (o PortRangeOutput) ToPortRangeOutputWithContext(ctx context.Context) PortRangeOutput { return o } -// Name of the router profile. -func (o OpenShiftRouterProfileOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftRouterProfile) *string { return v.Name }).(pulumi.StringPtrOutput) +// The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or equal to portStart. +func (o PortRangeOutput) PortEnd() pulumi.IntPtrOutput { + return o.ApplyT(func(v PortRange) *int { return v.PortEnd }).(pulumi.IntPtrOutput) +} + +// The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or equal to portEnd. +func (o PortRangeOutput) PortStart() pulumi.IntPtrOutput { + return o.ApplyT(func(v PortRange) *int { return v.PortStart }).(pulumi.IntPtrOutput) } -type OpenShiftRouterProfileArrayOutput struct{ *pulumi.OutputState } +// The network protocol of the port. +func (o PortRangeOutput) Protocol() pulumi.StringPtrOutput { + return o.ApplyT(func(v PortRange) *string { return v.Protocol }).(pulumi.StringPtrOutput) +} + +type PortRangeArrayOutput struct{ *pulumi.OutputState } -func (OpenShiftRouterProfileArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftRouterProfile)(nil)).Elem() +func (PortRangeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PortRange)(nil)).Elem() } -func (o OpenShiftRouterProfileArrayOutput) ToOpenShiftRouterProfileArrayOutput() OpenShiftRouterProfileArrayOutput { +func (o PortRangeArrayOutput) ToPortRangeArrayOutput() PortRangeArrayOutput { return o } -func (o OpenShiftRouterProfileArrayOutput) ToOpenShiftRouterProfileArrayOutputWithContext(ctx context.Context) OpenShiftRouterProfileArrayOutput { +func (o PortRangeArrayOutput) ToPortRangeArrayOutputWithContext(ctx context.Context) PortRangeArrayOutput { return o } -func (o OpenShiftRouterProfileArrayOutput) Index(i pulumi.IntInput) OpenShiftRouterProfileOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) OpenShiftRouterProfile { - return vs[0].([]OpenShiftRouterProfile)[vs[1].(int)] - }).(OpenShiftRouterProfileOutput) +func (o PortRangeArrayOutput) Index(i pulumi.IntInput) PortRangeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PortRange { + return vs[0].([]PortRange)[vs[1].(int)] + }).(PortRangeOutput) } -// Represents an OpenShift router -type OpenShiftRouterProfileResponse struct { - // Auto-allocated FQDN for the OpenShift router. - Fqdn string `pulumi:"fqdn"` - // Name of the router profile. - Name *string `pulumi:"name"` - // DNS subdomain for OpenShift router. - PublicSubdomain string `pulumi:"publicSubdomain"` +// The port range. +type PortRangeResponse struct { + // The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or equal to portStart. + PortEnd *int `pulumi:"portEnd"` + // The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or equal to portEnd. + PortStart *int `pulumi:"portStart"` + // The network protocol of the port. + Protocol *string `pulumi:"protocol"` } -// Represents an OpenShift router -type OpenShiftRouterProfileResponseOutput struct{ *pulumi.OutputState } +// The port range. +type PortRangeResponseOutput struct{ *pulumi.OutputState } -func (OpenShiftRouterProfileResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*OpenShiftRouterProfileResponse)(nil)).Elem() +func (PortRangeResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PortRangeResponse)(nil)).Elem() } -func (o OpenShiftRouterProfileResponseOutput) ToOpenShiftRouterProfileResponseOutput() OpenShiftRouterProfileResponseOutput { +func (o PortRangeResponseOutput) ToPortRangeResponseOutput() PortRangeResponseOutput { return o } -func (o OpenShiftRouterProfileResponseOutput) ToOpenShiftRouterProfileResponseOutputWithContext(ctx context.Context) OpenShiftRouterProfileResponseOutput { +func (o PortRangeResponseOutput) ToPortRangeResponseOutputWithContext(ctx context.Context) PortRangeResponseOutput { return o } -// Auto-allocated FQDN for the OpenShift router. -func (o OpenShiftRouterProfileResponseOutput) Fqdn() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftRouterProfileResponse) string { return v.Fqdn }).(pulumi.StringOutput) +// The maximum port that is included in the range. It should be ranged from 1 to 65535, and be greater than or equal to portStart. +func (o PortRangeResponseOutput) PortEnd() pulumi.IntPtrOutput { + return o.ApplyT(func(v PortRangeResponse) *int { return v.PortEnd }).(pulumi.IntPtrOutput) } -// Name of the router profile. -func (o OpenShiftRouterProfileResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v OpenShiftRouterProfileResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +// The minimum port that is included in the range. It should be ranged from 1 to 65535, and be less than or equal to portEnd. +func (o PortRangeResponseOutput) PortStart() pulumi.IntPtrOutput { + return o.ApplyT(func(v PortRangeResponse) *int { return v.PortStart }).(pulumi.IntPtrOutput) } -// DNS subdomain for OpenShift router. -func (o OpenShiftRouterProfileResponseOutput) PublicSubdomain() pulumi.StringOutput { - return o.ApplyT(func(v OpenShiftRouterProfileResponse) string { return v.PublicSubdomain }).(pulumi.StringOutput) +// The network protocol of the port. +func (o PortRangeResponseOutput) Protocol() pulumi.StringPtrOutput { + return o.ApplyT(func(v PortRangeResponse) *string { return v.Protocol }).(pulumi.StringPtrOutput) } -type OpenShiftRouterProfileResponseArrayOutput struct{ *pulumi.OutputState } +type PortRangeResponseArrayOutput struct{ *pulumi.OutputState } -func (OpenShiftRouterProfileResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]OpenShiftRouterProfileResponse)(nil)).Elem() +func (PortRangeResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PortRangeResponse)(nil)).Elem() } -func (o OpenShiftRouterProfileResponseArrayOutput) ToOpenShiftRouterProfileResponseArrayOutput() OpenShiftRouterProfileResponseArrayOutput { +func (o PortRangeResponseArrayOutput) ToPortRangeResponseArrayOutput() PortRangeResponseArrayOutput { return o } -func (o OpenShiftRouterProfileResponseArrayOutput) ToOpenShiftRouterProfileResponseArrayOutputWithContext(ctx context.Context) OpenShiftRouterProfileResponseArrayOutput { +func (o PortRangeResponseArrayOutput) ToPortRangeResponseArrayOutputWithContext(ctx context.Context) PortRangeResponseArrayOutput { return o } -func (o OpenShiftRouterProfileResponseArrayOutput) Index(i pulumi.IntInput) OpenShiftRouterProfileResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) OpenShiftRouterProfileResponse { - return vs[0].([]OpenShiftRouterProfileResponse)[vs[1].(int)] - }).(OpenShiftRouterProfileResponseOutput) +func (o PortRangeResponseArrayOutput) Index(i pulumi.IntInput) PortRangeResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PortRangeResponse { + return vs[0].([]PortRangeResponse)[vs[1].(int)] + }).(PortRangeResponseOutput) } // Describes the Power State of the cluster @@ -17866,311 +19848,275 @@ func (o PrivateLinkServiceConnectionStateResponseOutput) Status() pulumi.StringP return o.ApplyT(func(v PrivateLinkServiceConnectionStateResponse) *string { return v.Status }).(pulumi.StringPtrOutput) } -// Used for establishing the purchase context of any 3rd Party artifact through MarketPlace. -type PurchasePlan struct { - // The plan ID. - Name *string `pulumi:"name"` - // Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. - Product *string `pulumi:"product"` - // The promotion code. - PromotionCode *string `pulumi:"promotionCode"` - // The plan ID. - Publisher *string `pulumi:"publisher"` +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +type RelativeMonthlySchedule struct { + // Specifies on which day of the week the maintenance occurs. + DayOfWeek string `pulumi:"dayOfWeek"` + // Specifies the number of months between each set of occurrences. + IntervalMonths int `pulumi:"intervalMonths"` + // Specifies on which week of the month the dayOfWeek applies. + WeekIndex string `pulumi:"weekIndex"` } -// PurchasePlanInput is an input type that accepts PurchasePlanArgs and PurchasePlanOutput values. -// You can construct a concrete instance of `PurchasePlanInput` via: +// RelativeMonthlyScheduleInput is an input type that accepts RelativeMonthlyScheduleArgs and RelativeMonthlyScheduleOutput values. +// You can construct a concrete instance of `RelativeMonthlyScheduleInput` via: // -// PurchasePlanArgs{...} -type PurchasePlanInput interface { +// RelativeMonthlyScheduleArgs{...} +type RelativeMonthlyScheduleInput interface { pulumi.Input - ToPurchasePlanOutput() PurchasePlanOutput - ToPurchasePlanOutputWithContext(context.Context) PurchasePlanOutput + ToRelativeMonthlyScheduleOutput() RelativeMonthlyScheduleOutput + ToRelativeMonthlyScheduleOutputWithContext(context.Context) RelativeMonthlyScheduleOutput } -// Used for establishing the purchase context of any 3rd Party artifact through MarketPlace. -type PurchasePlanArgs struct { - // The plan ID. - Name pulumi.StringPtrInput `pulumi:"name"` - // Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. - Product pulumi.StringPtrInput `pulumi:"product"` - // The promotion code. - PromotionCode pulumi.StringPtrInput `pulumi:"promotionCode"` - // The plan ID. - Publisher pulumi.StringPtrInput `pulumi:"publisher"` +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +type RelativeMonthlyScheduleArgs struct { + // Specifies on which day of the week the maintenance occurs. + DayOfWeek pulumi.StringInput `pulumi:"dayOfWeek"` + // Specifies the number of months between each set of occurrences. + IntervalMonths pulumi.IntInput `pulumi:"intervalMonths"` + // Specifies on which week of the month the dayOfWeek applies. + WeekIndex pulumi.StringInput `pulumi:"weekIndex"` } -func (PurchasePlanArgs) ElementType() reflect.Type { - return reflect.TypeOf((*PurchasePlan)(nil)).Elem() +func (RelativeMonthlyScheduleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RelativeMonthlySchedule)(nil)).Elem() } -func (i PurchasePlanArgs) ToPurchasePlanOutput() PurchasePlanOutput { - return i.ToPurchasePlanOutputWithContext(context.Background()) +func (i RelativeMonthlyScheduleArgs) ToRelativeMonthlyScheduleOutput() RelativeMonthlyScheduleOutput { + return i.ToRelativeMonthlyScheduleOutputWithContext(context.Background()) } -func (i PurchasePlanArgs) ToPurchasePlanOutputWithContext(ctx context.Context) PurchasePlanOutput { - return pulumi.ToOutputWithContext(ctx, i).(PurchasePlanOutput) +func (i RelativeMonthlyScheduleArgs) ToRelativeMonthlyScheduleOutputWithContext(ctx context.Context) RelativeMonthlyScheduleOutput { + return pulumi.ToOutputWithContext(ctx, i).(RelativeMonthlyScheduleOutput) } -func (i PurchasePlanArgs) ToPurchasePlanPtrOutput() PurchasePlanPtrOutput { - return i.ToPurchasePlanPtrOutputWithContext(context.Background()) +func (i RelativeMonthlyScheduleArgs) ToRelativeMonthlySchedulePtrOutput() RelativeMonthlySchedulePtrOutput { + return i.ToRelativeMonthlySchedulePtrOutputWithContext(context.Background()) } -func (i PurchasePlanArgs) ToPurchasePlanPtrOutputWithContext(ctx context.Context) PurchasePlanPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(PurchasePlanOutput).ToPurchasePlanPtrOutputWithContext(ctx) +func (i RelativeMonthlyScheduleArgs) ToRelativeMonthlySchedulePtrOutputWithContext(ctx context.Context) RelativeMonthlySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(RelativeMonthlyScheduleOutput).ToRelativeMonthlySchedulePtrOutputWithContext(ctx) } -// PurchasePlanPtrInput is an input type that accepts PurchasePlanArgs, PurchasePlanPtr and PurchasePlanPtrOutput values. -// You can construct a concrete instance of `PurchasePlanPtrInput` via: +// RelativeMonthlySchedulePtrInput is an input type that accepts RelativeMonthlyScheduleArgs, RelativeMonthlySchedulePtr and RelativeMonthlySchedulePtrOutput values. +// You can construct a concrete instance of `RelativeMonthlySchedulePtrInput` via: // -// PurchasePlanArgs{...} +// RelativeMonthlyScheduleArgs{...} // // or: // // nil -type PurchasePlanPtrInput interface { +type RelativeMonthlySchedulePtrInput interface { pulumi.Input - ToPurchasePlanPtrOutput() PurchasePlanPtrOutput - ToPurchasePlanPtrOutputWithContext(context.Context) PurchasePlanPtrOutput + ToRelativeMonthlySchedulePtrOutput() RelativeMonthlySchedulePtrOutput + ToRelativeMonthlySchedulePtrOutputWithContext(context.Context) RelativeMonthlySchedulePtrOutput } -type purchasePlanPtrType PurchasePlanArgs +type relativeMonthlySchedulePtrType RelativeMonthlyScheduleArgs -func PurchasePlanPtr(v *PurchasePlanArgs) PurchasePlanPtrInput { - return (*purchasePlanPtrType)(v) +func RelativeMonthlySchedulePtr(v *RelativeMonthlyScheduleArgs) RelativeMonthlySchedulePtrInput { + return (*relativeMonthlySchedulePtrType)(v) } -func (*purchasePlanPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**PurchasePlan)(nil)).Elem() +func (*relativeMonthlySchedulePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**RelativeMonthlySchedule)(nil)).Elem() } -func (i *purchasePlanPtrType) ToPurchasePlanPtrOutput() PurchasePlanPtrOutput { - return i.ToPurchasePlanPtrOutputWithContext(context.Background()) +func (i *relativeMonthlySchedulePtrType) ToRelativeMonthlySchedulePtrOutput() RelativeMonthlySchedulePtrOutput { + return i.ToRelativeMonthlySchedulePtrOutputWithContext(context.Background()) } -func (i *purchasePlanPtrType) ToPurchasePlanPtrOutputWithContext(ctx context.Context) PurchasePlanPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(PurchasePlanPtrOutput) +func (i *relativeMonthlySchedulePtrType) ToRelativeMonthlySchedulePtrOutputWithContext(ctx context.Context) RelativeMonthlySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(RelativeMonthlySchedulePtrOutput) } -// Used for establishing the purchase context of any 3rd Party artifact through MarketPlace. -type PurchasePlanOutput struct{ *pulumi.OutputState } +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +type RelativeMonthlyScheduleOutput struct{ *pulumi.OutputState } -func (PurchasePlanOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PurchasePlan)(nil)).Elem() +func (RelativeMonthlyScheduleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RelativeMonthlySchedule)(nil)).Elem() } -func (o PurchasePlanOutput) ToPurchasePlanOutput() PurchasePlanOutput { +func (o RelativeMonthlyScheduleOutput) ToRelativeMonthlyScheduleOutput() RelativeMonthlyScheduleOutput { return o } -func (o PurchasePlanOutput) ToPurchasePlanOutputWithContext(ctx context.Context) PurchasePlanOutput { +func (o RelativeMonthlyScheduleOutput) ToRelativeMonthlyScheduleOutputWithContext(ctx context.Context) RelativeMonthlyScheduleOutput { return o } -func (o PurchasePlanOutput) ToPurchasePlanPtrOutput() PurchasePlanPtrOutput { - return o.ToPurchasePlanPtrOutputWithContext(context.Background()) +func (o RelativeMonthlyScheduleOutput) ToRelativeMonthlySchedulePtrOutput() RelativeMonthlySchedulePtrOutput { + return o.ToRelativeMonthlySchedulePtrOutputWithContext(context.Background()) } -func (o PurchasePlanOutput) ToPurchasePlanPtrOutputWithContext(ctx context.Context) PurchasePlanPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v PurchasePlan) *PurchasePlan { +func (o RelativeMonthlyScheduleOutput) ToRelativeMonthlySchedulePtrOutputWithContext(ctx context.Context) RelativeMonthlySchedulePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v RelativeMonthlySchedule) *RelativeMonthlySchedule { return &v - }).(PurchasePlanPtrOutput) -} - -// The plan ID. -func (o PurchasePlanOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlan) *string { return v.Name }).(pulumi.StringPtrOutput) + }).(RelativeMonthlySchedulePtrOutput) } -// Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. -func (o PurchasePlanOutput) Product() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlan) *string { return v.Product }).(pulumi.StringPtrOutput) +// Specifies on which day of the week the maintenance occurs. +func (o RelativeMonthlyScheduleOutput) DayOfWeek() pulumi.StringOutput { + return o.ApplyT(func(v RelativeMonthlySchedule) string { return v.DayOfWeek }).(pulumi.StringOutput) } -// The promotion code. -func (o PurchasePlanOutput) PromotionCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlan) *string { return v.PromotionCode }).(pulumi.StringPtrOutput) +// Specifies the number of months between each set of occurrences. +func (o RelativeMonthlyScheduleOutput) IntervalMonths() pulumi.IntOutput { + return o.ApplyT(func(v RelativeMonthlySchedule) int { return v.IntervalMonths }).(pulumi.IntOutput) } -// The plan ID. -func (o PurchasePlanOutput) Publisher() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlan) *string { return v.Publisher }).(pulumi.StringPtrOutput) +// Specifies on which week of the month the dayOfWeek applies. +func (o RelativeMonthlyScheduleOutput) WeekIndex() pulumi.StringOutput { + return o.ApplyT(func(v RelativeMonthlySchedule) string { return v.WeekIndex }).(pulumi.StringOutput) } -type PurchasePlanPtrOutput struct{ *pulumi.OutputState } +type RelativeMonthlySchedulePtrOutput struct{ *pulumi.OutputState } -func (PurchasePlanPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**PurchasePlan)(nil)).Elem() +func (RelativeMonthlySchedulePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RelativeMonthlySchedule)(nil)).Elem() } -func (o PurchasePlanPtrOutput) ToPurchasePlanPtrOutput() PurchasePlanPtrOutput { +func (o RelativeMonthlySchedulePtrOutput) ToRelativeMonthlySchedulePtrOutput() RelativeMonthlySchedulePtrOutput { return o } -func (o PurchasePlanPtrOutput) ToPurchasePlanPtrOutputWithContext(ctx context.Context) PurchasePlanPtrOutput { +func (o RelativeMonthlySchedulePtrOutput) ToRelativeMonthlySchedulePtrOutputWithContext(ctx context.Context) RelativeMonthlySchedulePtrOutput { return o } -func (o PurchasePlanPtrOutput) Elem() PurchasePlanOutput { - return o.ApplyT(func(v *PurchasePlan) PurchasePlan { +func (o RelativeMonthlySchedulePtrOutput) Elem() RelativeMonthlyScheduleOutput { + return o.ApplyT(func(v *RelativeMonthlySchedule) RelativeMonthlySchedule { if v != nil { return *v } - var ret PurchasePlan + var ret RelativeMonthlySchedule return ret - }).(PurchasePlanOutput) -} - -// The plan ID. -func (o PurchasePlanPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlan) *string { - if v == nil { - return nil - } - return v.Name - }).(pulumi.StringPtrOutput) + }).(RelativeMonthlyScheduleOutput) } -// Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. -func (o PurchasePlanPtrOutput) Product() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlan) *string { +// Specifies on which day of the week the maintenance occurs. +func (o RelativeMonthlySchedulePtrOutput) DayOfWeek() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RelativeMonthlySchedule) *string { if v == nil { return nil } - return v.Product + return &v.DayOfWeek }).(pulumi.StringPtrOutput) } -// The promotion code. -func (o PurchasePlanPtrOutput) PromotionCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlan) *string { +// Specifies the number of months between each set of occurrences. +func (o RelativeMonthlySchedulePtrOutput) IntervalMonths() pulumi.IntPtrOutput { + return o.ApplyT(func(v *RelativeMonthlySchedule) *int { if v == nil { return nil } - return v.PromotionCode - }).(pulumi.StringPtrOutput) + return &v.IntervalMonths + }).(pulumi.IntPtrOutput) } -// The plan ID. -func (o PurchasePlanPtrOutput) Publisher() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlan) *string { +// Specifies on which week of the month the dayOfWeek applies. +func (o RelativeMonthlySchedulePtrOutput) WeekIndex() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RelativeMonthlySchedule) *string { if v == nil { return nil } - return v.Publisher + return &v.WeekIndex }).(pulumi.StringPtrOutput) } -// Used for establishing the purchase context of any 3rd Party artifact through MarketPlace. -type PurchasePlanResponse struct { - // The plan ID. - Name *string `pulumi:"name"` - // Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. - Product *string `pulumi:"product"` - // The promotion code. - PromotionCode *string `pulumi:"promotionCode"` - // The plan ID. - Publisher *string `pulumi:"publisher"` +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +type RelativeMonthlyScheduleResponse struct { + // Specifies on which day of the week the maintenance occurs. + DayOfWeek string `pulumi:"dayOfWeek"` + // Specifies the number of months between each set of occurrences. + IntervalMonths int `pulumi:"intervalMonths"` + // Specifies on which week of the month the dayOfWeek applies. + WeekIndex string `pulumi:"weekIndex"` } -// Used for establishing the purchase context of any 3rd Party artifact through MarketPlace. -type PurchasePlanResponseOutput struct{ *pulumi.OutputState } +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +type RelativeMonthlyScheduleResponseOutput struct{ *pulumi.OutputState } -func (PurchasePlanResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PurchasePlanResponse)(nil)).Elem() +func (RelativeMonthlyScheduleResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RelativeMonthlyScheduleResponse)(nil)).Elem() } -func (o PurchasePlanResponseOutput) ToPurchasePlanResponseOutput() PurchasePlanResponseOutput { +func (o RelativeMonthlyScheduleResponseOutput) ToRelativeMonthlyScheduleResponseOutput() RelativeMonthlyScheduleResponseOutput { return o } -func (o PurchasePlanResponseOutput) ToPurchasePlanResponseOutputWithContext(ctx context.Context) PurchasePlanResponseOutput { +func (o RelativeMonthlyScheduleResponseOutput) ToRelativeMonthlyScheduleResponseOutputWithContext(ctx context.Context) RelativeMonthlyScheduleResponseOutput { return o } -// The plan ID. -func (o PurchasePlanResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlanResponse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. -func (o PurchasePlanResponseOutput) Product() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlanResponse) *string { return v.Product }).(pulumi.StringPtrOutput) +// Specifies on which day of the week the maintenance occurs. +func (o RelativeMonthlyScheduleResponseOutput) DayOfWeek() pulumi.StringOutput { + return o.ApplyT(func(v RelativeMonthlyScheduleResponse) string { return v.DayOfWeek }).(pulumi.StringOutput) } -// The promotion code. -func (o PurchasePlanResponseOutput) PromotionCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlanResponse) *string { return v.PromotionCode }).(pulumi.StringPtrOutput) +// Specifies the number of months between each set of occurrences. +func (o RelativeMonthlyScheduleResponseOutput) IntervalMonths() pulumi.IntOutput { + return o.ApplyT(func(v RelativeMonthlyScheduleResponse) int { return v.IntervalMonths }).(pulumi.IntOutput) } -// The plan ID. -func (o PurchasePlanResponseOutput) Publisher() pulumi.StringPtrOutput { - return o.ApplyT(func(v PurchasePlanResponse) *string { return v.Publisher }).(pulumi.StringPtrOutput) +// Specifies on which week of the month the dayOfWeek applies. +func (o RelativeMonthlyScheduleResponseOutput) WeekIndex() pulumi.StringOutput { + return o.ApplyT(func(v RelativeMonthlyScheduleResponse) string { return v.WeekIndex }).(pulumi.StringOutput) } -type PurchasePlanResponsePtrOutput struct{ *pulumi.OutputState } +type RelativeMonthlyScheduleResponsePtrOutput struct{ *pulumi.OutputState } -func (PurchasePlanResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**PurchasePlanResponse)(nil)).Elem() +func (RelativeMonthlyScheduleResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RelativeMonthlyScheduleResponse)(nil)).Elem() } -func (o PurchasePlanResponsePtrOutput) ToPurchasePlanResponsePtrOutput() PurchasePlanResponsePtrOutput { +func (o RelativeMonthlyScheduleResponsePtrOutput) ToRelativeMonthlyScheduleResponsePtrOutput() RelativeMonthlyScheduleResponsePtrOutput { return o } -func (o PurchasePlanResponsePtrOutput) ToPurchasePlanResponsePtrOutputWithContext(ctx context.Context) PurchasePlanResponsePtrOutput { +func (o RelativeMonthlyScheduleResponsePtrOutput) ToRelativeMonthlyScheduleResponsePtrOutputWithContext(ctx context.Context) RelativeMonthlyScheduleResponsePtrOutput { return o } -func (o PurchasePlanResponsePtrOutput) Elem() PurchasePlanResponseOutput { - return o.ApplyT(func(v *PurchasePlanResponse) PurchasePlanResponse { +func (o RelativeMonthlyScheduleResponsePtrOutput) Elem() RelativeMonthlyScheduleResponseOutput { + return o.ApplyT(func(v *RelativeMonthlyScheduleResponse) RelativeMonthlyScheduleResponse { if v != nil { return *v } - var ret PurchasePlanResponse + var ret RelativeMonthlyScheduleResponse return ret - }).(PurchasePlanResponseOutput) -} - -// The plan ID. -func (o PurchasePlanResponsePtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlanResponse) *string { - if v == nil { - return nil - } - return v.Name - }).(pulumi.StringPtrOutput) + }).(RelativeMonthlyScheduleResponseOutput) } -// Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element. -func (o PurchasePlanResponsePtrOutput) Product() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlanResponse) *string { +// Specifies on which day of the week the maintenance occurs. +func (o RelativeMonthlyScheduleResponsePtrOutput) DayOfWeek() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RelativeMonthlyScheduleResponse) *string { if v == nil { return nil } - return v.Product + return &v.DayOfWeek }).(pulumi.StringPtrOutput) } -// The promotion code. -func (o PurchasePlanResponsePtrOutput) PromotionCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlanResponse) *string { +// Specifies the number of months between each set of occurrences. +func (o RelativeMonthlyScheduleResponsePtrOutput) IntervalMonths() pulumi.IntPtrOutput { + return o.ApplyT(func(v *RelativeMonthlyScheduleResponse) *int { if v == nil { return nil } - return v.PromotionCode - }).(pulumi.StringPtrOutput) + return &v.IntervalMonths + }).(pulumi.IntPtrOutput) } -// The plan ID. -func (o PurchasePlanResponsePtrOutput) Publisher() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PurchasePlanResponse) *string { +// Specifies on which week of the month the dayOfWeek applies. +func (o RelativeMonthlyScheduleResponsePtrOutput) WeekIndex() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RelativeMonthlyScheduleResponse) *string { if v == nil { return nil } - return v.Publisher + return &v.WeekIndex }).(pulumi.StringPtrOutput) } @@ -18295,926 +20241,951 @@ func (o ResourceReferenceResponseOutput) ToResourceReferenceResponseOutputWithCo return o } -// The fully qualified Azure resource id. -func (o ResourceReferenceResponseOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v ResourceReferenceResponse) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -type ResourceReferenceResponseArrayOutput struct{ *pulumi.OutputState } - -func (ResourceReferenceResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ResourceReferenceResponse)(nil)).Elem() -} - -func (o ResourceReferenceResponseArrayOutput) ToResourceReferenceResponseArrayOutput() ResourceReferenceResponseArrayOutput { - return o -} - -func (o ResourceReferenceResponseArrayOutput) ToResourceReferenceResponseArrayOutputWithContext(ctx context.Context) ResourceReferenceResponseArrayOutput { - return o -} - -func (o ResourceReferenceResponseArrayOutput) Index(i pulumi.IntInput) ResourceReferenceResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ResourceReferenceResponse { - return vs[0].([]ResourceReferenceResponse)[vs[1].(int)] - }).(ResourceReferenceResponseOutput) -} - -// Sysctl settings for Linux agent nodes. -type SysctlConfig struct { - // Sysctl setting fs.aio-max-nr. - FsAioMaxNr *int `pulumi:"fsAioMaxNr"` - // Sysctl setting fs.file-max. - FsFileMax *int `pulumi:"fsFileMax"` - // Sysctl setting fs.inotify.max_user_watches. - FsInotifyMaxUserWatches *int `pulumi:"fsInotifyMaxUserWatches"` - // Sysctl setting fs.nr_open. - FsNrOpen *int `pulumi:"fsNrOpen"` - // Sysctl setting kernel.threads-max. - KernelThreadsMax *int `pulumi:"kernelThreadsMax"` - // Sysctl setting net.core.netdev_max_backlog. - NetCoreNetdevMaxBacklog *int `pulumi:"netCoreNetdevMaxBacklog"` - // Sysctl setting net.core.optmem_max. - NetCoreOptmemMax *int `pulumi:"netCoreOptmemMax"` - // Sysctl setting net.core.rmem_default. - NetCoreRmemDefault *int `pulumi:"netCoreRmemDefault"` - // Sysctl setting net.core.rmem_max. - NetCoreRmemMax *int `pulumi:"netCoreRmemMax"` - // Sysctl setting net.core.somaxconn. - NetCoreSomaxconn *int `pulumi:"netCoreSomaxconn"` - // Sysctl setting net.core.wmem_default. - NetCoreWmemDefault *int `pulumi:"netCoreWmemDefault"` - // Sysctl setting net.core.wmem_max. - NetCoreWmemMax *int `pulumi:"netCoreWmemMax"` - // Sysctl setting net.ipv4.ip_local_port_range. - NetIpv4IpLocalPortRange *string `pulumi:"netIpv4IpLocalPortRange"` - // Sysctl setting net.ipv4.neigh.default.gc_thresh1. - NetIpv4NeighDefaultGcThresh1 *int `pulumi:"netIpv4NeighDefaultGcThresh1"` - // Sysctl setting net.ipv4.neigh.default.gc_thresh2. - NetIpv4NeighDefaultGcThresh2 *int `pulumi:"netIpv4NeighDefaultGcThresh2"` - // Sysctl setting net.ipv4.neigh.default.gc_thresh3. - NetIpv4NeighDefaultGcThresh3 *int `pulumi:"netIpv4NeighDefaultGcThresh3"` - // Sysctl setting net.ipv4.tcp_fin_timeout. - NetIpv4TcpFinTimeout *int `pulumi:"netIpv4TcpFinTimeout"` - // Sysctl setting net.ipv4.tcp_keepalive_probes. - NetIpv4TcpKeepaliveProbes *int `pulumi:"netIpv4TcpKeepaliveProbes"` - // Sysctl setting net.ipv4.tcp_keepalive_time. - NetIpv4TcpKeepaliveTime *int `pulumi:"netIpv4TcpKeepaliveTime"` - // Sysctl setting net.ipv4.tcp_max_syn_backlog. - NetIpv4TcpMaxSynBacklog *int `pulumi:"netIpv4TcpMaxSynBacklog"` - // Sysctl setting net.ipv4.tcp_max_tw_buckets. - NetIpv4TcpMaxTwBuckets *int `pulumi:"netIpv4TcpMaxTwBuckets"` - // Sysctl setting net.ipv4.tcp_tw_reuse. - NetIpv4TcpTwReuse *bool `pulumi:"netIpv4TcpTwReuse"` - // Sysctl setting net.ipv4.tcp_keepalive_intvl. - NetIpv4TcpkeepaliveIntvl *int `pulumi:"netIpv4TcpkeepaliveIntvl"` - // Sysctl setting net.netfilter.nf_conntrack_buckets. - NetNetfilterNfConntrackBuckets *int `pulumi:"netNetfilterNfConntrackBuckets"` - // Sysctl setting net.netfilter.nf_conntrack_max. - NetNetfilterNfConntrackMax *int `pulumi:"netNetfilterNfConntrackMax"` - // Sysctl setting vm.max_map_count. - VmMaxMapCount *int `pulumi:"vmMaxMapCount"` - // Sysctl setting vm.swappiness. - VmSwappiness *int `pulumi:"vmSwappiness"` - // Sysctl setting vm.vfs_cache_pressure. - VmVfsCachePressure *int `pulumi:"vmVfsCachePressure"` -} - -// SysctlConfigInput is an input type that accepts SysctlConfigArgs and SysctlConfigOutput values. -// You can construct a concrete instance of `SysctlConfigInput` via: -// -// SysctlConfigArgs{...} -type SysctlConfigInput interface { - pulumi.Input - - ToSysctlConfigOutput() SysctlConfigOutput - ToSysctlConfigOutputWithContext(context.Context) SysctlConfigOutput -} - -// Sysctl settings for Linux agent nodes. -type SysctlConfigArgs struct { - // Sysctl setting fs.aio-max-nr. - FsAioMaxNr pulumi.IntPtrInput `pulumi:"fsAioMaxNr"` - // Sysctl setting fs.file-max. - FsFileMax pulumi.IntPtrInput `pulumi:"fsFileMax"` - // Sysctl setting fs.inotify.max_user_watches. - FsInotifyMaxUserWatches pulumi.IntPtrInput `pulumi:"fsInotifyMaxUserWatches"` - // Sysctl setting fs.nr_open. - FsNrOpen pulumi.IntPtrInput `pulumi:"fsNrOpen"` - // Sysctl setting kernel.threads-max. - KernelThreadsMax pulumi.IntPtrInput `pulumi:"kernelThreadsMax"` - // Sysctl setting net.core.netdev_max_backlog. - NetCoreNetdevMaxBacklog pulumi.IntPtrInput `pulumi:"netCoreNetdevMaxBacklog"` - // Sysctl setting net.core.optmem_max. - NetCoreOptmemMax pulumi.IntPtrInput `pulumi:"netCoreOptmemMax"` - // Sysctl setting net.core.rmem_default. - NetCoreRmemDefault pulumi.IntPtrInput `pulumi:"netCoreRmemDefault"` - // Sysctl setting net.core.rmem_max. - NetCoreRmemMax pulumi.IntPtrInput `pulumi:"netCoreRmemMax"` - // Sysctl setting net.core.somaxconn. - NetCoreSomaxconn pulumi.IntPtrInput `pulumi:"netCoreSomaxconn"` - // Sysctl setting net.core.wmem_default. - NetCoreWmemDefault pulumi.IntPtrInput `pulumi:"netCoreWmemDefault"` - // Sysctl setting net.core.wmem_max. - NetCoreWmemMax pulumi.IntPtrInput `pulumi:"netCoreWmemMax"` - // Sysctl setting net.ipv4.ip_local_port_range. - NetIpv4IpLocalPortRange pulumi.StringPtrInput `pulumi:"netIpv4IpLocalPortRange"` - // Sysctl setting net.ipv4.neigh.default.gc_thresh1. - NetIpv4NeighDefaultGcThresh1 pulumi.IntPtrInput `pulumi:"netIpv4NeighDefaultGcThresh1"` - // Sysctl setting net.ipv4.neigh.default.gc_thresh2. - NetIpv4NeighDefaultGcThresh2 pulumi.IntPtrInput `pulumi:"netIpv4NeighDefaultGcThresh2"` - // Sysctl setting net.ipv4.neigh.default.gc_thresh3. - NetIpv4NeighDefaultGcThresh3 pulumi.IntPtrInput `pulumi:"netIpv4NeighDefaultGcThresh3"` - // Sysctl setting net.ipv4.tcp_fin_timeout. - NetIpv4TcpFinTimeout pulumi.IntPtrInput `pulumi:"netIpv4TcpFinTimeout"` - // Sysctl setting net.ipv4.tcp_keepalive_probes. - NetIpv4TcpKeepaliveProbes pulumi.IntPtrInput `pulumi:"netIpv4TcpKeepaliveProbes"` - // Sysctl setting net.ipv4.tcp_keepalive_time. - NetIpv4TcpKeepaliveTime pulumi.IntPtrInput `pulumi:"netIpv4TcpKeepaliveTime"` - // Sysctl setting net.ipv4.tcp_max_syn_backlog. - NetIpv4TcpMaxSynBacklog pulumi.IntPtrInput `pulumi:"netIpv4TcpMaxSynBacklog"` - // Sysctl setting net.ipv4.tcp_max_tw_buckets. - NetIpv4TcpMaxTwBuckets pulumi.IntPtrInput `pulumi:"netIpv4TcpMaxTwBuckets"` - // Sysctl setting net.ipv4.tcp_tw_reuse. - NetIpv4TcpTwReuse pulumi.BoolPtrInput `pulumi:"netIpv4TcpTwReuse"` - // Sysctl setting net.ipv4.tcp_keepalive_intvl. - NetIpv4TcpkeepaliveIntvl pulumi.IntPtrInput `pulumi:"netIpv4TcpkeepaliveIntvl"` - // Sysctl setting net.netfilter.nf_conntrack_buckets. - NetNetfilterNfConntrackBuckets pulumi.IntPtrInput `pulumi:"netNetfilterNfConntrackBuckets"` - // Sysctl setting net.netfilter.nf_conntrack_max. - NetNetfilterNfConntrackMax pulumi.IntPtrInput `pulumi:"netNetfilterNfConntrackMax"` - // Sysctl setting vm.max_map_count. - VmMaxMapCount pulumi.IntPtrInput `pulumi:"vmMaxMapCount"` - // Sysctl setting vm.swappiness. - VmSwappiness pulumi.IntPtrInput `pulumi:"vmSwappiness"` - // Sysctl setting vm.vfs_cache_pressure. - VmVfsCachePressure pulumi.IntPtrInput `pulumi:"vmVfsCachePressure"` -} - -func (SysctlConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SysctlConfig)(nil)).Elem() +// The fully qualified Azure resource id. +func (o ResourceReferenceResponseOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v ResourceReferenceResponse) *string { return v.Id }).(pulumi.StringPtrOutput) } -func (i SysctlConfigArgs) ToSysctlConfigOutput() SysctlConfigOutput { - return i.ToSysctlConfigOutputWithContext(context.Background()) +type ResourceReferenceResponseArrayOutput struct{ *pulumi.OutputState } + +func (ResourceReferenceResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ResourceReferenceResponse)(nil)).Elem() } -func (i SysctlConfigArgs) ToSysctlConfigOutputWithContext(ctx context.Context) SysctlConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(SysctlConfigOutput) +func (o ResourceReferenceResponseArrayOutput) ToResourceReferenceResponseArrayOutput() ResourceReferenceResponseArrayOutput { + return o } -func (i SysctlConfigArgs) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { - return i.ToSysctlConfigPtrOutputWithContext(context.Background()) +func (o ResourceReferenceResponseArrayOutput) ToResourceReferenceResponseArrayOutputWithContext(ctx context.Context) ResourceReferenceResponseArrayOutput { + return o } -func (i SysctlConfigArgs) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SysctlConfigOutput).ToSysctlConfigPtrOutputWithContext(ctx) +func (o ResourceReferenceResponseArrayOutput) Index(i pulumi.IntInput) ResourceReferenceResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ResourceReferenceResponse { + return vs[0].([]ResourceReferenceResponse)[vs[1].(int)] + }).(ResourceReferenceResponseOutput) } -// SysctlConfigPtrInput is an input type that accepts SysctlConfigArgs, SysctlConfigPtr and SysctlConfigPtrOutput values. -// You can construct a concrete instance of `SysctlConfigPtrInput` via: -// -// SysctlConfigArgs{...} -// -// or: +// One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule. +type Schedule struct { + // For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. + AbsoluteMonthly *AbsoluteMonthlySchedule `pulumi:"absoluteMonthly"` + // For schedules like: 'recur every day' or 'recur every 3 days'. + Daily *DailySchedule `pulumi:"daily"` + // For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. + RelativeMonthly *RelativeMonthlySchedule `pulumi:"relativeMonthly"` + // For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. + Weekly *WeeklySchedule `pulumi:"weekly"` +} + +// ScheduleInput is an input type that accepts ScheduleArgs and ScheduleOutput values. +// You can construct a concrete instance of `ScheduleInput` via: // -// nil -type SysctlConfigPtrInput interface { +// ScheduleArgs{...} +type ScheduleInput interface { pulumi.Input - ToSysctlConfigPtrOutput() SysctlConfigPtrOutput - ToSysctlConfigPtrOutputWithContext(context.Context) SysctlConfigPtrOutput + ToScheduleOutput() ScheduleOutput + ToScheduleOutputWithContext(context.Context) ScheduleOutput } -type sysctlConfigPtrType SysctlConfigArgs - -func SysctlConfigPtr(v *SysctlConfigArgs) SysctlConfigPtrInput { - return (*sysctlConfigPtrType)(v) +// One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule. +type ScheduleArgs struct { + // For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. + AbsoluteMonthly AbsoluteMonthlySchedulePtrInput `pulumi:"absoluteMonthly"` + // For schedules like: 'recur every day' or 'recur every 3 days'. + Daily DailySchedulePtrInput `pulumi:"daily"` + // For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. + RelativeMonthly RelativeMonthlySchedulePtrInput `pulumi:"relativeMonthly"` + // For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. + Weekly WeeklySchedulePtrInput `pulumi:"weekly"` } -func (*sysctlConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**SysctlConfig)(nil)).Elem() +func (ScheduleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*Schedule)(nil)).Elem() } -func (i *sysctlConfigPtrType) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { - return i.ToSysctlConfigPtrOutputWithContext(context.Background()) +func (i ScheduleArgs) ToScheduleOutput() ScheduleOutput { + return i.ToScheduleOutputWithContext(context.Background()) } -func (i *sysctlConfigPtrType) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SysctlConfigPtrOutput) +func (i ScheduleArgs) ToScheduleOutputWithContext(ctx context.Context) ScheduleOutput { + return pulumi.ToOutputWithContext(ctx, i).(ScheduleOutput) } -// Sysctl settings for Linux agent nodes. -type SysctlConfigOutput struct{ *pulumi.OutputState } - -func (SysctlConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SysctlConfig)(nil)).Elem() +func (i ScheduleArgs) ToSchedulePtrOutput() SchedulePtrOutput { + return i.ToSchedulePtrOutputWithContext(context.Background()) } -func (o SysctlConfigOutput) ToSysctlConfigOutput() SysctlConfigOutput { - return o +func (i ScheduleArgs) ToSchedulePtrOutputWithContext(ctx context.Context) SchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ScheduleOutput).ToSchedulePtrOutputWithContext(ctx) } -func (o SysctlConfigOutput) ToSysctlConfigOutputWithContext(ctx context.Context) SysctlConfigOutput { - return o -} +// SchedulePtrInput is an input type that accepts ScheduleArgs, SchedulePtr and SchedulePtrOutput values. +// You can construct a concrete instance of `SchedulePtrInput` via: +// +// ScheduleArgs{...} +// +// or: +// +// nil +type SchedulePtrInput interface { + pulumi.Input -func (o SysctlConfigOutput) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { - return o.ToSysctlConfigPtrOutputWithContext(context.Background()) + ToSchedulePtrOutput() SchedulePtrOutput + ToSchedulePtrOutputWithContext(context.Context) SchedulePtrOutput } -func (o SysctlConfigOutput) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SysctlConfig) *SysctlConfig { - return &v - }).(SysctlConfigPtrOutput) +type schedulePtrType ScheduleArgs + +func SchedulePtr(v *ScheduleArgs) SchedulePtrInput { + return (*schedulePtrType)(v) } -// Sysctl setting fs.aio-max-nr. -func (o SysctlConfigOutput) FsAioMaxNr() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.FsAioMaxNr }).(pulumi.IntPtrOutput) +func (*schedulePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**Schedule)(nil)).Elem() } -// Sysctl setting fs.file-max. -func (o SysctlConfigOutput) FsFileMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.FsFileMax }).(pulumi.IntPtrOutput) +func (i *schedulePtrType) ToSchedulePtrOutput() SchedulePtrOutput { + return i.ToSchedulePtrOutputWithContext(context.Background()) } -// Sysctl setting fs.inotify.max_user_watches. -func (o SysctlConfigOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.FsInotifyMaxUserWatches }).(pulumi.IntPtrOutput) +func (i *schedulePtrType) ToSchedulePtrOutputWithContext(ctx context.Context) SchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SchedulePtrOutput) } -// Sysctl setting fs.nr_open. -func (o SysctlConfigOutput) FsNrOpen() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.FsNrOpen }).(pulumi.IntPtrOutput) +// One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule. +type ScheduleOutput struct{ *pulumi.OutputState } + +func (ScheduleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*Schedule)(nil)).Elem() } -// Sysctl setting kernel.threads-max. -func (o SysctlConfigOutput) KernelThreadsMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.KernelThreadsMax }).(pulumi.IntPtrOutput) +func (o ScheduleOutput) ToScheduleOutput() ScheduleOutput { + return o } -// Sysctl setting net.core.netdev_max_backlog. -func (o SysctlConfigOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreNetdevMaxBacklog }).(pulumi.IntPtrOutput) +func (o ScheduleOutput) ToScheduleOutputWithContext(ctx context.Context) ScheduleOutput { + return o } -// Sysctl setting net.core.optmem_max. -func (o SysctlConfigOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreOptmemMax }).(pulumi.IntPtrOutput) +func (o ScheduleOutput) ToSchedulePtrOutput() SchedulePtrOutput { + return o.ToSchedulePtrOutputWithContext(context.Background()) } -// Sysctl setting net.core.rmem_default. -func (o SysctlConfigOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreRmemDefault }).(pulumi.IntPtrOutput) +func (o ScheduleOutput) ToSchedulePtrOutputWithContext(ctx context.Context) SchedulePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v Schedule) *Schedule { + return &v + }).(SchedulePtrOutput) } -// Sysctl setting net.core.rmem_max. -func (o SysctlConfigOutput) NetCoreRmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreRmemMax }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +func (o ScheduleOutput) AbsoluteMonthly() AbsoluteMonthlySchedulePtrOutput { + return o.ApplyT(func(v Schedule) *AbsoluteMonthlySchedule { return v.AbsoluteMonthly }).(AbsoluteMonthlySchedulePtrOutput) } -// Sysctl setting net.core.somaxconn. -func (o SysctlConfigOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreSomaxconn }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every day' or 'recur every 3 days'. +func (o ScheduleOutput) Daily() DailySchedulePtrOutput { + return o.ApplyT(func(v Schedule) *DailySchedule { return v.Daily }).(DailySchedulePtrOutput) } -// Sysctl setting net.core.wmem_default. -func (o SysctlConfigOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreWmemDefault }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +func (o ScheduleOutput) RelativeMonthly() RelativeMonthlySchedulePtrOutput { + return o.ApplyT(func(v Schedule) *RelativeMonthlySchedule { return v.RelativeMonthly }).(RelativeMonthlySchedulePtrOutput) } -// Sysctl setting net.core.wmem_max. -func (o SysctlConfigOutput) NetCoreWmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreWmemMax }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +func (o ScheduleOutput) Weekly() WeeklySchedulePtrOutput { + return o.ApplyT(func(v Schedule) *WeeklySchedule { return v.Weekly }).(WeeklySchedulePtrOutput) } -// Sysctl setting net.ipv4.ip_local_port_range. -func (o SysctlConfigOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { - return o.ApplyT(func(v SysctlConfig) *string { return v.NetIpv4IpLocalPortRange }).(pulumi.StringPtrOutput) +type SchedulePtrOutput struct{ *pulumi.OutputState } + +func (SchedulePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Schedule)(nil)).Elem() } -// Sysctl setting net.ipv4.neigh.default.gc_thresh1. -func (o SysctlConfigOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4NeighDefaultGcThresh1 }).(pulumi.IntPtrOutput) +func (o SchedulePtrOutput) ToSchedulePtrOutput() SchedulePtrOutput { + return o } -// Sysctl setting net.ipv4.neigh.default.gc_thresh2. -func (o SysctlConfigOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4NeighDefaultGcThresh2 }).(pulumi.IntPtrOutput) +func (o SchedulePtrOutput) ToSchedulePtrOutputWithContext(ctx context.Context) SchedulePtrOutput { + return o } -// Sysctl setting net.ipv4.neigh.default.gc_thresh3. -func (o SysctlConfigOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4NeighDefaultGcThresh3 }).(pulumi.IntPtrOutput) +func (o SchedulePtrOutput) Elem() ScheduleOutput { + return o.ApplyT(func(v *Schedule) Schedule { + if v != nil { + return *v + } + var ret Schedule + return ret + }).(ScheduleOutput) } -// Sysctl setting net.ipv4.tcp_fin_timeout. -func (o SysctlConfigOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpFinTimeout }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +func (o SchedulePtrOutput) AbsoluteMonthly() AbsoluteMonthlySchedulePtrOutput { + return o.ApplyT(func(v *Schedule) *AbsoluteMonthlySchedule { + if v == nil { + return nil + } + return v.AbsoluteMonthly + }).(AbsoluteMonthlySchedulePtrOutput) } -// Sysctl setting net.ipv4.tcp_keepalive_probes. -func (o SysctlConfigOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpKeepaliveProbes }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every day' or 'recur every 3 days'. +func (o SchedulePtrOutput) Daily() DailySchedulePtrOutput { + return o.ApplyT(func(v *Schedule) *DailySchedule { + if v == nil { + return nil + } + return v.Daily + }).(DailySchedulePtrOutput) } -// Sysctl setting net.ipv4.tcp_keepalive_time. -func (o SysctlConfigOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpKeepaliveTime }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +func (o SchedulePtrOutput) RelativeMonthly() RelativeMonthlySchedulePtrOutput { + return o.ApplyT(func(v *Schedule) *RelativeMonthlySchedule { + if v == nil { + return nil + } + return v.RelativeMonthly + }).(RelativeMonthlySchedulePtrOutput) } -// Sysctl setting net.ipv4.tcp_max_syn_backlog. -func (o SysctlConfigOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpMaxSynBacklog }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +func (o SchedulePtrOutput) Weekly() WeeklySchedulePtrOutput { + return o.ApplyT(func(v *Schedule) *WeeklySchedule { + if v == nil { + return nil + } + return v.Weekly + }).(WeeklySchedulePtrOutput) } -// Sysctl setting net.ipv4.tcp_max_tw_buckets. -func (o SysctlConfigOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpMaxTwBuckets }).(pulumi.IntPtrOutput) +// One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule. +type ScheduleResponse struct { + // For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. + AbsoluteMonthly *AbsoluteMonthlyScheduleResponse `pulumi:"absoluteMonthly"` + // For schedules like: 'recur every day' or 'recur every 3 days'. + Daily *DailyScheduleResponse `pulumi:"daily"` + // For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. + RelativeMonthly *RelativeMonthlyScheduleResponse `pulumi:"relativeMonthly"` + // For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. + Weekly *WeeklyScheduleResponse `pulumi:"weekly"` } -// Sysctl setting net.ipv4.tcp_tw_reuse. -func (o SysctlConfigOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { - return o.ApplyT(func(v SysctlConfig) *bool { return v.NetIpv4TcpTwReuse }).(pulumi.BoolPtrOutput) +// One and only one of the schedule types should be specified. Choose either 'daily', 'weekly', 'absoluteMonthly' or 'relativeMonthly' for your maintenance schedule. +type ScheduleResponseOutput struct{ *pulumi.OutputState } + +func (ScheduleResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ScheduleResponse)(nil)).Elem() } -// Sysctl setting net.ipv4.tcp_keepalive_intvl. -func (o SysctlConfigOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpkeepaliveIntvl }).(pulumi.IntPtrOutput) +func (o ScheduleResponseOutput) ToScheduleResponseOutput() ScheduleResponseOutput { + return o } -// Sysctl setting net.netfilter.nf_conntrack_buckets. -func (o SysctlConfigOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetNetfilterNfConntrackBuckets }).(pulumi.IntPtrOutput) +func (o ScheduleResponseOutput) ToScheduleResponseOutputWithContext(ctx context.Context) ScheduleResponseOutput { + return o } -// Sysctl setting net.netfilter.nf_conntrack_max. -func (o SysctlConfigOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.NetNetfilterNfConntrackMax }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +func (o ScheduleResponseOutput) AbsoluteMonthly() AbsoluteMonthlyScheduleResponsePtrOutput { + return o.ApplyT(func(v ScheduleResponse) *AbsoluteMonthlyScheduleResponse { return v.AbsoluteMonthly }).(AbsoluteMonthlyScheduleResponsePtrOutput) } -// Sysctl setting vm.max_map_count. -func (o SysctlConfigOutput) VmMaxMapCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.VmMaxMapCount }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every day' or 'recur every 3 days'. +func (o ScheduleResponseOutput) Daily() DailyScheduleResponsePtrOutput { + return o.ApplyT(func(v ScheduleResponse) *DailyScheduleResponse { return v.Daily }).(DailyScheduleResponsePtrOutput) } -// Sysctl setting vm.swappiness. -func (o SysctlConfigOutput) VmSwappiness() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.VmSwappiness }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +func (o ScheduleResponseOutput) RelativeMonthly() RelativeMonthlyScheduleResponsePtrOutput { + return o.ApplyT(func(v ScheduleResponse) *RelativeMonthlyScheduleResponse { return v.RelativeMonthly }).(RelativeMonthlyScheduleResponsePtrOutput) } -// Sysctl setting vm.vfs_cache_pressure. -func (o SysctlConfigOutput) VmVfsCachePressure() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfig) *int { return v.VmVfsCachePressure }).(pulumi.IntPtrOutput) +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +func (o ScheduleResponseOutput) Weekly() WeeklyScheduleResponsePtrOutput { + return o.ApplyT(func(v ScheduleResponse) *WeeklyScheduleResponse { return v.Weekly }).(WeeklyScheduleResponsePtrOutput) } -type SysctlConfigPtrOutput struct{ *pulumi.OutputState } +type ScheduleResponsePtrOutput struct{ *pulumi.OutputState } -func (SysctlConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SysctlConfig)(nil)).Elem() +func (ScheduleResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ScheduleResponse)(nil)).Elem() } -func (o SysctlConfigPtrOutput) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { +func (o ScheduleResponsePtrOutput) ToScheduleResponsePtrOutput() ScheduleResponsePtrOutput { return o } -func (o SysctlConfigPtrOutput) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { +func (o ScheduleResponsePtrOutput) ToScheduleResponsePtrOutputWithContext(ctx context.Context) ScheduleResponsePtrOutput { return o } -func (o SysctlConfigPtrOutput) Elem() SysctlConfigOutput { - return o.ApplyT(func(v *SysctlConfig) SysctlConfig { +func (o ScheduleResponsePtrOutput) Elem() ScheduleResponseOutput { + return o.ApplyT(func(v *ScheduleResponse) ScheduleResponse { if v != nil { return *v } - var ret SysctlConfig + var ret ScheduleResponse return ret - }).(SysctlConfigOutput) + }).(ScheduleResponseOutput) } -// Sysctl setting fs.aio-max-nr. -func (o SysctlConfigPtrOutput) FsAioMaxNr() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// For schedules like: 'recur every month on the 15th' or 'recur every 3 months on the 20th'. +func (o ScheduleResponsePtrOutput) AbsoluteMonthly() AbsoluteMonthlyScheduleResponsePtrOutput { + return o.ApplyT(func(v *ScheduleResponse) *AbsoluteMonthlyScheduleResponse { if v == nil { return nil } - return v.FsAioMaxNr - }).(pulumi.IntPtrOutput) + return v.AbsoluteMonthly + }).(AbsoluteMonthlyScheduleResponsePtrOutput) } -// Sysctl setting fs.file-max. -func (o SysctlConfigPtrOutput) FsFileMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// For schedules like: 'recur every day' or 'recur every 3 days'. +func (o ScheduleResponsePtrOutput) Daily() DailyScheduleResponsePtrOutput { + return o.ApplyT(func(v *ScheduleResponse) *DailyScheduleResponse { if v == nil { return nil } - return v.FsFileMax - }).(pulumi.IntPtrOutput) + return v.Daily + }).(DailyScheduleResponsePtrOutput) } -// Sysctl setting fs.inotify.max_user_watches. -func (o SysctlConfigPtrOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// For schedules like: 'recur every month on the first Monday' or 'recur every 3 months on last Friday'. +func (o ScheduleResponsePtrOutput) RelativeMonthly() RelativeMonthlyScheduleResponsePtrOutput { + return o.ApplyT(func(v *ScheduleResponse) *RelativeMonthlyScheduleResponse { if v == nil { return nil } - return v.FsInotifyMaxUserWatches - }).(pulumi.IntPtrOutput) + return v.RelativeMonthly + }).(RelativeMonthlyScheduleResponsePtrOutput) } -// Sysctl setting fs.nr_open. -func (o SysctlConfigPtrOutput) FsNrOpen() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +func (o ScheduleResponsePtrOutput) Weekly() WeeklyScheduleResponsePtrOutput { + return o.ApplyT(func(v *ScheduleResponse) *WeeklyScheduleResponse { if v == nil { return nil } - return v.FsNrOpen - }).(pulumi.IntPtrOutput) + return v.Weekly + }).(WeeklyScheduleResponsePtrOutput) +} + +// Service mesh profile for a managed cluster. +type ServiceMeshProfile struct { + // Istio service mesh configuration. + Istio *IstioServiceMesh `pulumi:"istio"` + // Mode of the service mesh. + Mode string `pulumi:"mode"` +} + +// ServiceMeshProfileInput is an input type that accepts ServiceMeshProfileArgs and ServiceMeshProfileOutput values. +// You can construct a concrete instance of `ServiceMeshProfileInput` via: +// +// ServiceMeshProfileArgs{...} +type ServiceMeshProfileInput interface { + pulumi.Input + + ToServiceMeshProfileOutput() ServiceMeshProfileOutput + ToServiceMeshProfileOutputWithContext(context.Context) ServiceMeshProfileOutput +} + +// Service mesh profile for a managed cluster. +type ServiceMeshProfileArgs struct { + // Istio service mesh configuration. + Istio IstioServiceMeshPtrInput `pulumi:"istio"` + // Mode of the service mesh. + Mode pulumi.StringInput `pulumi:"mode"` +} + +func (ServiceMeshProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceMeshProfile)(nil)).Elem() +} + +func (i ServiceMeshProfileArgs) ToServiceMeshProfileOutput() ServiceMeshProfileOutput { + return i.ToServiceMeshProfileOutputWithContext(context.Background()) +} + +func (i ServiceMeshProfileArgs) ToServiceMeshProfileOutputWithContext(ctx context.Context) ServiceMeshProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceMeshProfileOutput) +} + +func (i ServiceMeshProfileArgs) ToServiceMeshProfilePtrOutput() ServiceMeshProfilePtrOutput { + return i.ToServiceMeshProfilePtrOutputWithContext(context.Background()) +} + +func (i ServiceMeshProfileArgs) ToServiceMeshProfilePtrOutputWithContext(ctx context.Context) ServiceMeshProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceMeshProfileOutput).ToServiceMeshProfilePtrOutputWithContext(ctx) +} + +// ServiceMeshProfilePtrInput is an input type that accepts ServiceMeshProfileArgs, ServiceMeshProfilePtr and ServiceMeshProfilePtrOutput values. +// You can construct a concrete instance of `ServiceMeshProfilePtrInput` via: +// +// ServiceMeshProfileArgs{...} +// +// or: +// +// nil +type ServiceMeshProfilePtrInput interface { + pulumi.Input + + ToServiceMeshProfilePtrOutput() ServiceMeshProfilePtrOutput + ToServiceMeshProfilePtrOutputWithContext(context.Context) ServiceMeshProfilePtrOutput +} + +type serviceMeshProfilePtrType ServiceMeshProfileArgs + +func ServiceMeshProfilePtr(v *ServiceMeshProfileArgs) ServiceMeshProfilePtrInput { + return (*serviceMeshProfilePtrType)(v) +} + +func (*serviceMeshProfilePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceMeshProfile)(nil)).Elem() +} + +func (i *serviceMeshProfilePtrType) ToServiceMeshProfilePtrOutput() ServiceMeshProfilePtrOutput { + return i.ToServiceMeshProfilePtrOutputWithContext(context.Background()) +} + +func (i *serviceMeshProfilePtrType) ToServiceMeshProfilePtrOutputWithContext(ctx context.Context) ServiceMeshProfilePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceMeshProfilePtrOutput) +} + +// Service mesh profile for a managed cluster. +type ServiceMeshProfileOutput struct{ *pulumi.OutputState } + +func (ServiceMeshProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceMeshProfile)(nil)).Elem() +} + +func (o ServiceMeshProfileOutput) ToServiceMeshProfileOutput() ServiceMeshProfileOutput { + return o +} + +func (o ServiceMeshProfileOutput) ToServiceMeshProfileOutputWithContext(ctx context.Context) ServiceMeshProfileOutput { + return o +} + +func (o ServiceMeshProfileOutput) ToServiceMeshProfilePtrOutput() ServiceMeshProfilePtrOutput { + return o.ToServiceMeshProfilePtrOutputWithContext(context.Background()) } -// Sysctl setting kernel.threads-max. -func (o SysctlConfigPtrOutput) KernelThreadsMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.KernelThreadsMax - }).(pulumi.IntPtrOutput) +func (o ServiceMeshProfileOutput) ToServiceMeshProfilePtrOutputWithContext(ctx context.Context) ServiceMeshProfilePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ServiceMeshProfile) *ServiceMeshProfile { + return &v + }).(ServiceMeshProfilePtrOutput) } -// Sysctl setting net.core.netdev_max_backlog. -func (o SysctlConfigPtrOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetCoreNetdevMaxBacklog - }).(pulumi.IntPtrOutput) +// Istio service mesh configuration. +func (o ServiceMeshProfileOutput) Istio() IstioServiceMeshPtrOutput { + return o.ApplyT(func(v ServiceMeshProfile) *IstioServiceMesh { return v.Istio }).(IstioServiceMeshPtrOutput) } -// Sysctl setting net.core.optmem_max. -func (o SysctlConfigPtrOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetCoreOptmemMax - }).(pulumi.IntPtrOutput) +// Mode of the service mesh. +func (o ServiceMeshProfileOutput) Mode() pulumi.StringOutput { + return o.ApplyT(func(v ServiceMeshProfile) string { return v.Mode }).(pulumi.StringOutput) } -// Sysctl setting net.core.rmem_default. -func (o SysctlConfigPtrOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetCoreRmemDefault - }).(pulumi.IntPtrOutput) +type ServiceMeshProfilePtrOutput struct{ *pulumi.OutputState } + +func (ServiceMeshProfilePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceMeshProfile)(nil)).Elem() } -// Sysctl setting net.core.rmem_max. -func (o SysctlConfigPtrOutput) NetCoreRmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetCoreRmemMax - }).(pulumi.IntPtrOutput) +func (o ServiceMeshProfilePtrOutput) ToServiceMeshProfilePtrOutput() ServiceMeshProfilePtrOutput { + return o } -// Sysctl setting net.core.somaxconn. -func (o SysctlConfigPtrOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetCoreSomaxconn - }).(pulumi.IntPtrOutput) +func (o ServiceMeshProfilePtrOutput) ToServiceMeshProfilePtrOutputWithContext(ctx context.Context) ServiceMeshProfilePtrOutput { + return o } -// Sysctl setting net.core.wmem_default. -func (o SysctlConfigPtrOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil +func (o ServiceMeshProfilePtrOutput) Elem() ServiceMeshProfileOutput { + return o.ApplyT(func(v *ServiceMeshProfile) ServiceMeshProfile { + if v != nil { + return *v } - return v.NetCoreWmemDefault - }).(pulumi.IntPtrOutput) + var ret ServiceMeshProfile + return ret + }).(ServiceMeshProfileOutput) } -// Sysctl setting net.core.wmem_max. -func (o SysctlConfigPtrOutput) NetCoreWmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// Istio service mesh configuration. +func (o ServiceMeshProfilePtrOutput) Istio() IstioServiceMeshPtrOutput { + return o.ApplyT(func(v *ServiceMeshProfile) *IstioServiceMesh { if v == nil { return nil } - return v.NetCoreWmemMax - }).(pulumi.IntPtrOutput) + return v.Istio + }).(IstioServiceMeshPtrOutput) } -// Sysctl setting net.ipv4.ip_local_port_range. -func (o SysctlConfigPtrOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *string { +// Mode of the service mesh. +func (o ServiceMeshProfilePtrOutput) Mode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ServiceMeshProfile) *string { if v == nil { return nil } - return v.NetIpv4IpLocalPortRange + return &v.Mode }).(pulumi.StringPtrOutput) } -// Sysctl setting net.ipv4.neigh.default.gc_thresh1. -func (o SysctlConfigPtrOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4NeighDefaultGcThresh1 - }).(pulumi.IntPtrOutput) +// Service mesh profile for a managed cluster. +type ServiceMeshProfileResponse struct { + // Istio service mesh configuration. + Istio *IstioServiceMeshResponse `pulumi:"istio"` + // Mode of the service mesh. + Mode string `pulumi:"mode"` } -// Sysctl setting net.ipv4.neigh.default.gc_thresh2. -func (o SysctlConfigPtrOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4NeighDefaultGcThresh2 - }).(pulumi.IntPtrOutput) -} +// Service mesh profile for a managed cluster. +type ServiceMeshProfileResponseOutput struct{ *pulumi.OutputState } -// Sysctl setting net.ipv4.neigh.default.gc_thresh3. -func (o SysctlConfigPtrOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4NeighDefaultGcThresh3 - }).(pulumi.IntPtrOutput) +func (ServiceMeshProfileResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceMeshProfileResponse)(nil)).Elem() } -// Sysctl setting net.ipv4.tcp_fin_timeout. -func (o SysctlConfigPtrOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4TcpFinTimeout - }).(pulumi.IntPtrOutput) +func (o ServiceMeshProfileResponseOutput) ToServiceMeshProfileResponseOutput() ServiceMeshProfileResponseOutput { + return o } -// Sysctl setting net.ipv4.tcp_keepalive_probes. -func (o SysctlConfigPtrOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4TcpKeepaliveProbes - }).(pulumi.IntPtrOutput) +func (o ServiceMeshProfileResponseOutput) ToServiceMeshProfileResponseOutputWithContext(ctx context.Context) ServiceMeshProfileResponseOutput { + return o } -// Sysctl setting net.ipv4.tcp_keepalive_time. -func (o SysctlConfigPtrOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4TcpKeepaliveTime - }).(pulumi.IntPtrOutput) +// Istio service mesh configuration. +func (o ServiceMeshProfileResponseOutput) Istio() IstioServiceMeshResponsePtrOutput { + return o.ApplyT(func(v ServiceMeshProfileResponse) *IstioServiceMeshResponse { return v.Istio }).(IstioServiceMeshResponsePtrOutput) } -// Sysctl setting net.ipv4.tcp_max_syn_backlog. -func (o SysctlConfigPtrOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4TcpMaxSynBacklog - }).(pulumi.IntPtrOutput) +// Mode of the service mesh. +func (o ServiceMeshProfileResponseOutput) Mode() pulumi.StringOutput { + return o.ApplyT(func(v ServiceMeshProfileResponse) string { return v.Mode }).(pulumi.StringOutput) } -// Sysctl setting net.ipv4.tcp_max_tw_buckets. -func (o SysctlConfigPtrOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4TcpMaxTwBuckets - }).(pulumi.IntPtrOutput) +type ServiceMeshProfileResponsePtrOutput struct{ *pulumi.OutputState } + +func (ServiceMeshProfileResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceMeshProfileResponse)(nil)).Elem() } -// Sysctl setting net.ipv4.tcp_tw_reuse. -func (o SysctlConfigPtrOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *bool { - if v == nil { - return nil - } - return v.NetIpv4TcpTwReuse - }).(pulumi.BoolPtrOutput) +func (o ServiceMeshProfileResponsePtrOutput) ToServiceMeshProfileResponsePtrOutput() ServiceMeshProfileResponsePtrOutput { + return o } -// Sysctl setting net.ipv4.tcp_keepalive_intvl. -func (o SysctlConfigPtrOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.NetIpv4TcpkeepaliveIntvl - }).(pulumi.IntPtrOutput) +func (o ServiceMeshProfileResponsePtrOutput) ToServiceMeshProfileResponsePtrOutputWithContext(ctx context.Context) ServiceMeshProfileResponsePtrOutput { + return o } -// Sysctl setting net.netfilter.nf_conntrack_buckets. -func (o SysctlConfigPtrOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil +func (o ServiceMeshProfileResponsePtrOutput) Elem() ServiceMeshProfileResponseOutput { + return o.ApplyT(func(v *ServiceMeshProfileResponse) ServiceMeshProfileResponse { + if v != nil { + return *v } - return v.NetNetfilterNfConntrackBuckets - }).(pulumi.IntPtrOutput) + var ret ServiceMeshProfileResponse + return ret + }).(ServiceMeshProfileResponseOutput) } -// Sysctl setting net.netfilter.nf_conntrack_max. -func (o SysctlConfigPtrOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// Istio service mesh configuration. +func (o ServiceMeshProfileResponsePtrOutput) Istio() IstioServiceMeshResponsePtrOutput { + return o.ApplyT(func(v *ServiceMeshProfileResponse) *IstioServiceMeshResponse { if v == nil { return nil } - return v.NetNetfilterNfConntrackMax - }).(pulumi.IntPtrOutput) + return v.Istio + }).(IstioServiceMeshResponsePtrOutput) } -// Sysctl setting vm.max_map_count. -func (o SysctlConfigPtrOutput) VmMaxMapCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { +// Mode of the service mesh. +func (o ServiceMeshProfileResponsePtrOutput) Mode() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ServiceMeshProfileResponse) *string { if v == nil { return nil } - return v.VmMaxMapCount - }).(pulumi.IntPtrOutput) + return &v.Mode + }).(pulumi.StringPtrOutput) } -// Sysctl setting vm.swappiness. -func (o SysctlConfigPtrOutput) VmSwappiness() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.VmSwappiness - }).(pulumi.IntPtrOutput) +// Sysctl settings for Linux agent nodes. +type SysctlConfig struct { + // Sysctl setting fs.aio-max-nr. + FsAioMaxNr *int `pulumi:"fsAioMaxNr"` + // Sysctl setting fs.file-max. + FsFileMax *int `pulumi:"fsFileMax"` + // Sysctl setting fs.inotify.max_user_watches. + FsInotifyMaxUserWatches *int `pulumi:"fsInotifyMaxUserWatches"` + // Sysctl setting fs.nr_open. + FsNrOpen *int `pulumi:"fsNrOpen"` + // Sysctl setting kernel.threads-max. + KernelThreadsMax *int `pulumi:"kernelThreadsMax"` + // Sysctl setting net.core.netdev_max_backlog. + NetCoreNetdevMaxBacklog *int `pulumi:"netCoreNetdevMaxBacklog"` + // Sysctl setting net.core.optmem_max. + NetCoreOptmemMax *int `pulumi:"netCoreOptmemMax"` + // Sysctl setting net.core.rmem_default. + NetCoreRmemDefault *int `pulumi:"netCoreRmemDefault"` + // Sysctl setting net.core.rmem_max. + NetCoreRmemMax *int `pulumi:"netCoreRmemMax"` + // Sysctl setting net.core.somaxconn. + NetCoreSomaxconn *int `pulumi:"netCoreSomaxconn"` + // Sysctl setting net.core.wmem_default. + NetCoreWmemDefault *int `pulumi:"netCoreWmemDefault"` + // Sysctl setting net.core.wmem_max. + NetCoreWmemMax *int `pulumi:"netCoreWmemMax"` + // Sysctl setting net.ipv4.ip_local_port_range. + NetIpv4IpLocalPortRange *string `pulumi:"netIpv4IpLocalPortRange"` + // Sysctl setting net.ipv4.neigh.default.gc_thresh1. + NetIpv4NeighDefaultGcThresh1 *int `pulumi:"netIpv4NeighDefaultGcThresh1"` + // Sysctl setting net.ipv4.neigh.default.gc_thresh2. + NetIpv4NeighDefaultGcThresh2 *int `pulumi:"netIpv4NeighDefaultGcThresh2"` + // Sysctl setting net.ipv4.neigh.default.gc_thresh3. + NetIpv4NeighDefaultGcThresh3 *int `pulumi:"netIpv4NeighDefaultGcThresh3"` + // Sysctl setting net.ipv4.tcp_fin_timeout. + NetIpv4TcpFinTimeout *int `pulumi:"netIpv4TcpFinTimeout"` + // Sysctl setting net.ipv4.tcp_keepalive_probes. + NetIpv4TcpKeepaliveProbes *int `pulumi:"netIpv4TcpKeepaliveProbes"` + // Sysctl setting net.ipv4.tcp_keepalive_time. + NetIpv4TcpKeepaliveTime *int `pulumi:"netIpv4TcpKeepaliveTime"` + // Sysctl setting net.ipv4.tcp_max_syn_backlog. + NetIpv4TcpMaxSynBacklog *int `pulumi:"netIpv4TcpMaxSynBacklog"` + // Sysctl setting net.ipv4.tcp_max_tw_buckets. + NetIpv4TcpMaxTwBuckets *int `pulumi:"netIpv4TcpMaxTwBuckets"` + // Sysctl setting net.ipv4.tcp_tw_reuse. + NetIpv4TcpTwReuse *bool `pulumi:"netIpv4TcpTwReuse"` + // Sysctl setting net.ipv4.tcp_keepalive_intvl. + NetIpv4TcpkeepaliveIntvl *int `pulumi:"netIpv4TcpkeepaliveIntvl"` + // Sysctl setting net.netfilter.nf_conntrack_buckets. + NetNetfilterNfConntrackBuckets *int `pulumi:"netNetfilterNfConntrackBuckets"` + // Sysctl setting net.netfilter.nf_conntrack_max. + NetNetfilterNfConntrackMax *int `pulumi:"netNetfilterNfConntrackMax"` + // Sysctl setting vm.max_map_count. + VmMaxMapCount *int `pulumi:"vmMaxMapCount"` + // Sysctl setting vm.swappiness. + VmSwappiness *int `pulumi:"vmSwappiness"` + // Sysctl setting vm.vfs_cache_pressure. + VmVfsCachePressure *int `pulumi:"vmVfsCachePressure"` } -// Sysctl setting vm.vfs_cache_pressure. -func (o SysctlConfigPtrOutput) VmVfsCachePressure() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfig) *int { - if v == nil { - return nil - } - return v.VmVfsCachePressure - }).(pulumi.IntPtrOutput) +// SysctlConfigInput is an input type that accepts SysctlConfigArgs and SysctlConfigOutput values. +// You can construct a concrete instance of `SysctlConfigInput` via: +// +// SysctlConfigArgs{...} +type SysctlConfigInput interface { + pulumi.Input + + ToSysctlConfigOutput() SysctlConfigOutput + ToSysctlConfigOutputWithContext(context.Context) SysctlConfigOutput } // Sysctl settings for Linux agent nodes. -type SysctlConfigResponse struct { +type SysctlConfigArgs struct { // Sysctl setting fs.aio-max-nr. - FsAioMaxNr *int `pulumi:"fsAioMaxNr"` + FsAioMaxNr pulumi.IntPtrInput `pulumi:"fsAioMaxNr"` // Sysctl setting fs.file-max. - FsFileMax *int `pulumi:"fsFileMax"` + FsFileMax pulumi.IntPtrInput `pulumi:"fsFileMax"` // Sysctl setting fs.inotify.max_user_watches. - FsInotifyMaxUserWatches *int `pulumi:"fsInotifyMaxUserWatches"` + FsInotifyMaxUserWatches pulumi.IntPtrInput `pulumi:"fsInotifyMaxUserWatches"` // Sysctl setting fs.nr_open. - FsNrOpen *int `pulumi:"fsNrOpen"` + FsNrOpen pulumi.IntPtrInput `pulumi:"fsNrOpen"` // Sysctl setting kernel.threads-max. - KernelThreadsMax *int `pulumi:"kernelThreadsMax"` + KernelThreadsMax pulumi.IntPtrInput `pulumi:"kernelThreadsMax"` // Sysctl setting net.core.netdev_max_backlog. - NetCoreNetdevMaxBacklog *int `pulumi:"netCoreNetdevMaxBacklog"` + NetCoreNetdevMaxBacklog pulumi.IntPtrInput `pulumi:"netCoreNetdevMaxBacklog"` // Sysctl setting net.core.optmem_max. - NetCoreOptmemMax *int `pulumi:"netCoreOptmemMax"` + NetCoreOptmemMax pulumi.IntPtrInput `pulumi:"netCoreOptmemMax"` // Sysctl setting net.core.rmem_default. - NetCoreRmemDefault *int `pulumi:"netCoreRmemDefault"` + NetCoreRmemDefault pulumi.IntPtrInput `pulumi:"netCoreRmemDefault"` // Sysctl setting net.core.rmem_max. - NetCoreRmemMax *int `pulumi:"netCoreRmemMax"` + NetCoreRmemMax pulumi.IntPtrInput `pulumi:"netCoreRmemMax"` // Sysctl setting net.core.somaxconn. - NetCoreSomaxconn *int `pulumi:"netCoreSomaxconn"` + NetCoreSomaxconn pulumi.IntPtrInput `pulumi:"netCoreSomaxconn"` // Sysctl setting net.core.wmem_default. - NetCoreWmemDefault *int `pulumi:"netCoreWmemDefault"` + NetCoreWmemDefault pulumi.IntPtrInput `pulumi:"netCoreWmemDefault"` // Sysctl setting net.core.wmem_max. - NetCoreWmemMax *int `pulumi:"netCoreWmemMax"` + NetCoreWmemMax pulumi.IntPtrInput `pulumi:"netCoreWmemMax"` // Sysctl setting net.ipv4.ip_local_port_range. - NetIpv4IpLocalPortRange *string `pulumi:"netIpv4IpLocalPortRange"` + NetIpv4IpLocalPortRange pulumi.StringPtrInput `pulumi:"netIpv4IpLocalPortRange"` // Sysctl setting net.ipv4.neigh.default.gc_thresh1. - NetIpv4NeighDefaultGcThresh1 *int `pulumi:"netIpv4NeighDefaultGcThresh1"` + NetIpv4NeighDefaultGcThresh1 pulumi.IntPtrInput `pulumi:"netIpv4NeighDefaultGcThresh1"` // Sysctl setting net.ipv4.neigh.default.gc_thresh2. - NetIpv4NeighDefaultGcThresh2 *int `pulumi:"netIpv4NeighDefaultGcThresh2"` + NetIpv4NeighDefaultGcThresh2 pulumi.IntPtrInput `pulumi:"netIpv4NeighDefaultGcThresh2"` // Sysctl setting net.ipv4.neigh.default.gc_thresh3. - NetIpv4NeighDefaultGcThresh3 *int `pulumi:"netIpv4NeighDefaultGcThresh3"` + NetIpv4NeighDefaultGcThresh3 pulumi.IntPtrInput `pulumi:"netIpv4NeighDefaultGcThresh3"` // Sysctl setting net.ipv4.tcp_fin_timeout. - NetIpv4TcpFinTimeout *int `pulumi:"netIpv4TcpFinTimeout"` + NetIpv4TcpFinTimeout pulumi.IntPtrInput `pulumi:"netIpv4TcpFinTimeout"` // Sysctl setting net.ipv4.tcp_keepalive_probes. - NetIpv4TcpKeepaliveProbes *int `pulumi:"netIpv4TcpKeepaliveProbes"` + NetIpv4TcpKeepaliveProbes pulumi.IntPtrInput `pulumi:"netIpv4TcpKeepaliveProbes"` // Sysctl setting net.ipv4.tcp_keepalive_time. - NetIpv4TcpKeepaliveTime *int `pulumi:"netIpv4TcpKeepaliveTime"` + NetIpv4TcpKeepaliveTime pulumi.IntPtrInput `pulumi:"netIpv4TcpKeepaliveTime"` // Sysctl setting net.ipv4.tcp_max_syn_backlog. - NetIpv4TcpMaxSynBacklog *int `pulumi:"netIpv4TcpMaxSynBacklog"` + NetIpv4TcpMaxSynBacklog pulumi.IntPtrInput `pulumi:"netIpv4TcpMaxSynBacklog"` // Sysctl setting net.ipv4.tcp_max_tw_buckets. - NetIpv4TcpMaxTwBuckets *int `pulumi:"netIpv4TcpMaxTwBuckets"` + NetIpv4TcpMaxTwBuckets pulumi.IntPtrInput `pulumi:"netIpv4TcpMaxTwBuckets"` // Sysctl setting net.ipv4.tcp_tw_reuse. - NetIpv4TcpTwReuse *bool `pulumi:"netIpv4TcpTwReuse"` + NetIpv4TcpTwReuse pulumi.BoolPtrInput `pulumi:"netIpv4TcpTwReuse"` // Sysctl setting net.ipv4.tcp_keepalive_intvl. - NetIpv4TcpkeepaliveIntvl *int `pulumi:"netIpv4TcpkeepaliveIntvl"` + NetIpv4TcpkeepaliveIntvl pulumi.IntPtrInput `pulumi:"netIpv4TcpkeepaliveIntvl"` // Sysctl setting net.netfilter.nf_conntrack_buckets. - NetNetfilterNfConntrackBuckets *int `pulumi:"netNetfilterNfConntrackBuckets"` + NetNetfilterNfConntrackBuckets pulumi.IntPtrInput `pulumi:"netNetfilterNfConntrackBuckets"` // Sysctl setting net.netfilter.nf_conntrack_max. - NetNetfilterNfConntrackMax *int `pulumi:"netNetfilterNfConntrackMax"` + NetNetfilterNfConntrackMax pulumi.IntPtrInput `pulumi:"netNetfilterNfConntrackMax"` // Sysctl setting vm.max_map_count. - VmMaxMapCount *int `pulumi:"vmMaxMapCount"` + VmMaxMapCount pulumi.IntPtrInput `pulumi:"vmMaxMapCount"` // Sysctl setting vm.swappiness. - VmSwappiness *int `pulumi:"vmSwappiness"` + VmSwappiness pulumi.IntPtrInput `pulumi:"vmSwappiness"` // Sysctl setting vm.vfs_cache_pressure. - VmVfsCachePressure *int `pulumi:"vmVfsCachePressure"` + VmVfsCachePressure pulumi.IntPtrInput `pulumi:"vmVfsCachePressure"` +} + +func (SysctlConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SysctlConfig)(nil)).Elem() +} + +func (i SysctlConfigArgs) ToSysctlConfigOutput() SysctlConfigOutput { + return i.ToSysctlConfigOutputWithContext(context.Background()) +} + +func (i SysctlConfigArgs) ToSysctlConfigOutputWithContext(ctx context.Context) SysctlConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(SysctlConfigOutput) +} + +func (i SysctlConfigArgs) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { + return i.ToSysctlConfigPtrOutputWithContext(context.Background()) +} + +func (i SysctlConfigArgs) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SysctlConfigOutput).ToSysctlConfigPtrOutputWithContext(ctx) +} + +// SysctlConfigPtrInput is an input type that accepts SysctlConfigArgs, SysctlConfigPtr and SysctlConfigPtrOutput values. +// You can construct a concrete instance of `SysctlConfigPtrInput` via: +// +// SysctlConfigArgs{...} +// +// or: +// +// nil +type SysctlConfigPtrInput interface { + pulumi.Input + + ToSysctlConfigPtrOutput() SysctlConfigPtrOutput + ToSysctlConfigPtrOutputWithContext(context.Context) SysctlConfigPtrOutput +} + +type sysctlConfigPtrType SysctlConfigArgs + +func SysctlConfigPtr(v *SysctlConfigArgs) SysctlConfigPtrInput { + return (*sysctlConfigPtrType)(v) +} + +func (*sysctlConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SysctlConfig)(nil)).Elem() +} + +func (i *sysctlConfigPtrType) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { + return i.ToSysctlConfigPtrOutputWithContext(context.Background()) +} + +func (i *sysctlConfigPtrType) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SysctlConfigPtrOutput) } // Sysctl settings for Linux agent nodes. -type SysctlConfigResponseOutput struct{ *pulumi.OutputState } +type SysctlConfigOutput struct{ *pulumi.OutputState } -func (SysctlConfigResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SysctlConfigResponse)(nil)).Elem() +func (SysctlConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SysctlConfig)(nil)).Elem() } -func (o SysctlConfigResponseOutput) ToSysctlConfigResponseOutput() SysctlConfigResponseOutput { +func (o SysctlConfigOutput) ToSysctlConfigOutput() SysctlConfigOutput { return o } -func (o SysctlConfigResponseOutput) ToSysctlConfigResponseOutputWithContext(ctx context.Context) SysctlConfigResponseOutput { +func (o SysctlConfigOutput) ToSysctlConfigOutputWithContext(ctx context.Context) SysctlConfigOutput { return o } +func (o SysctlConfigOutput) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { + return o.ToSysctlConfigPtrOutputWithContext(context.Background()) +} + +func (o SysctlConfigOutput) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SysctlConfig) *SysctlConfig { + return &v + }).(SysctlConfigPtrOutput) +} + // Sysctl setting fs.aio-max-nr. -func (o SysctlConfigResponseOutput) FsAioMaxNr() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsAioMaxNr }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) FsAioMaxNr() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.FsAioMaxNr }).(pulumi.IntPtrOutput) } // Sysctl setting fs.file-max. -func (o SysctlConfigResponseOutput) FsFileMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsFileMax }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) FsFileMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.FsFileMax }).(pulumi.IntPtrOutput) } // Sysctl setting fs.inotify.max_user_watches. -func (o SysctlConfigResponseOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsInotifyMaxUserWatches }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.FsInotifyMaxUserWatches }).(pulumi.IntPtrOutput) } // Sysctl setting fs.nr_open. -func (o SysctlConfigResponseOutput) FsNrOpen() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsNrOpen }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) FsNrOpen() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.FsNrOpen }).(pulumi.IntPtrOutput) } // Sysctl setting kernel.threads-max. -func (o SysctlConfigResponseOutput) KernelThreadsMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.KernelThreadsMax }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) KernelThreadsMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.KernelThreadsMax }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.netdev_max_backlog. -func (o SysctlConfigResponseOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreNetdevMaxBacklog }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreNetdevMaxBacklog }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.optmem_max. -func (o SysctlConfigResponseOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreOptmemMax }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreOptmemMax }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.rmem_default. -func (o SysctlConfigResponseOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreRmemDefault }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreRmemDefault }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.rmem_max. -func (o SysctlConfigResponseOutput) NetCoreRmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreRmemMax }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreRmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreRmemMax }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.somaxconn. -func (o SysctlConfigResponseOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreSomaxconn }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreSomaxconn }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.wmem_default. -func (o SysctlConfigResponseOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreWmemDefault }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreWmemDefault }).(pulumi.IntPtrOutput) } // Sysctl setting net.core.wmem_max. -func (o SysctlConfigResponseOutput) NetCoreWmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreWmemMax }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetCoreWmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetCoreWmemMax }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.ip_local_port_range. -func (o SysctlConfigResponseOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *string { return v.NetIpv4IpLocalPortRange }).(pulumi.StringPtrOutput) +func (o SysctlConfigOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { + return o.ApplyT(func(v SysctlConfig) *string { return v.NetIpv4IpLocalPortRange }).(pulumi.StringPtrOutput) } // Sysctl setting net.ipv4.neigh.default.gc_thresh1. -func (o SysctlConfigResponseOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4NeighDefaultGcThresh1 }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4NeighDefaultGcThresh1 }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.neigh.default.gc_thresh2. -func (o SysctlConfigResponseOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4NeighDefaultGcThresh2 }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4NeighDefaultGcThresh2 }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.neigh.default.gc_thresh3. -func (o SysctlConfigResponseOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4NeighDefaultGcThresh3 }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4NeighDefaultGcThresh3 }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.tcp_fin_timeout. -func (o SysctlConfigResponseOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpFinTimeout }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpFinTimeout }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.tcp_keepalive_probes. -func (o SysctlConfigResponseOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpKeepaliveProbes }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpKeepaliveProbes }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.tcp_keepalive_time. -func (o SysctlConfigResponseOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpKeepaliveTime }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpKeepaliveTime }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.tcp_max_syn_backlog. -func (o SysctlConfigResponseOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpMaxSynBacklog }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpMaxSynBacklog }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.tcp_max_tw_buckets. -func (o SysctlConfigResponseOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpMaxTwBuckets }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpMaxTwBuckets }).(pulumi.IntPtrOutput) } // Sysctl setting net.ipv4.tcp_tw_reuse. -func (o SysctlConfigResponseOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *bool { return v.NetIpv4TcpTwReuse }).(pulumi.BoolPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { + return o.ApplyT(func(v SysctlConfig) *bool { return v.NetIpv4TcpTwReuse }).(pulumi.BoolPtrOutput) } // Sysctl setting net.ipv4.tcp_keepalive_intvl. -func (o SysctlConfigResponseOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpkeepaliveIntvl }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetIpv4TcpkeepaliveIntvl }).(pulumi.IntPtrOutput) } // Sysctl setting net.netfilter.nf_conntrack_buckets. -func (o SysctlConfigResponseOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetNetfilterNfConntrackBuckets }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetNetfilterNfConntrackBuckets }).(pulumi.IntPtrOutput) } // Sysctl setting net.netfilter.nf_conntrack_max. -func (o SysctlConfigResponseOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetNetfilterNfConntrackMax }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.NetNetfilterNfConntrackMax }).(pulumi.IntPtrOutput) } // Sysctl setting vm.max_map_count. -func (o SysctlConfigResponseOutput) VmMaxMapCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.VmMaxMapCount }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) VmMaxMapCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.VmMaxMapCount }).(pulumi.IntPtrOutput) } // Sysctl setting vm.swappiness. -func (o SysctlConfigResponseOutput) VmSwappiness() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.VmSwappiness }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) VmSwappiness() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.VmSwappiness }).(pulumi.IntPtrOutput) } // Sysctl setting vm.vfs_cache_pressure. -func (o SysctlConfigResponseOutput) VmVfsCachePressure() pulumi.IntPtrOutput { - return o.ApplyT(func(v SysctlConfigResponse) *int { return v.VmVfsCachePressure }).(pulumi.IntPtrOutput) +func (o SysctlConfigOutput) VmVfsCachePressure() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfig) *int { return v.VmVfsCachePressure }).(pulumi.IntPtrOutput) } -type SysctlConfigResponsePtrOutput struct{ *pulumi.OutputState } +type SysctlConfigPtrOutput struct{ *pulumi.OutputState } -func (SysctlConfigResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SysctlConfigResponse)(nil)).Elem() +func (SysctlConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SysctlConfig)(nil)).Elem() } -func (o SysctlConfigResponsePtrOutput) ToSysctlConfigResponsePtrOutput() SysctlConfigResponsePtrOutput { +func (o SysctlConfigPtrOutput) ToSysctlConfigPtrOutput() SysctlConfigPtrOutput { return o } -func (o SysctlConfigResponsePtrOutput) ToSysctlConfigResponsePtrOutputWithContext(ctx context.Context) SysctlConfigResponsePtrOutput { +func (o SysctlConfigPtrOutput) ToSysctlConfigPtrOutputWithContext(ctx context.Context) SysctlConfigPtrOutput { return o } -func (o SysctlConfigResponsePtrOutput) Elem() SysctlConfigResponseOutput { - return o.ApplyT(func(v *SysctlConfigResponse) SysctlConfigResponse { +func (o SysctlConfigPtrOutput) Elem() SysctlConfigOutput { + return o.ApplyT(func(v *SysctlConfig) SysctlConfig { if v != nil { return *v } - var ret SysctlConfigResponse + var ret SysctlConfig return ret - }).(SysctlConfigResponseOutput) + }).(SysctlConfigOutput) } // Sysctl setting fs.aio-max-nr. -func (o SysctlConfigResponsePtrOutput) FsAioMaxNr() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) FsAioMaxNr() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19223,8 +21194,8 @@ func (o SysctlConfigResponsePtrOutput) FsAioMaxNr() pulumi.IntPtrOutput { } // Sysctl setting fs.file-max. -func (o SysctlConfigResponsePtrOutput) FsFileMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) FsFileMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19233,8 +21204,8 @@ func (o SysctlConfigResponsePtrOutput) FsFileMax() pulumi.IntPtrOutput { } // Sysctl setting fs.inotify.max_user_watches. -func (o SysctlConfigResponsePtrOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19243,8 +21214,8 @@ func (o SysctlConfigResponsePtrOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOu } // Sysctl setting fs.nr_open. -func (o SysctlConfigResponsePtrOutput) FsNrOpen() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) FsNrOpen() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19253,8 +21224,8 @@ func (o SysctlConfigResponsePtrOutput) FsNrOpen() pulumi.IntPtrOutput { } // Sysctl setting kernel.threads-max. -func (o SysctlConfigResponsePtrOutput) KernelThreadsMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) KernelThreadsMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19263,8 +21234,8 @@ func (o SysctlConfigResponsePtrOutput) KernelThreadsMax() pulumi.IntPtrOutput { } // Sysctl setting net.core.netdev_max_backlog. -func (o SysctlConfigResponsePtrOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19273,8 +21244,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOu } // Sysctl setting net.core.optmem_max. -func (o SysctlConfigResponsePtrOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19283,8 +21254,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { } // Sysctl setting net.core.rmem_default. -func (o SysctlConfigResponsePtrOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19293,8 +21264,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreRmemDefault() pulumi.IntPtrOutput } // Sysctl setting net.core.rmem_max. -func (o SysctlConfigResponsePtrOutput) NetCoreRmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreRmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19303,8 +21274,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreRmemMax() pulumi.IntPtrOutput { } // Sysctl setting net.core.somaxconn. -func (o SysctlConfigResponsePtrOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19313,8 +21284,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { } // Sysctl setting net.core.wmem_default. -func (o SysctlConfigResponsePtrOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19323,8 +21294,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreWmemDefault() pulumi.IntPtrOutput } // Sysctl setting net.core.wmem_max. -func (o SysctlConfigResponsePtrOutput) NetCoreWmemMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetCoreWmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19333,8 +21304,8 @@ func (o SysctlConfigResponsePtrOutput) NetCoreWmemMax() pulumi.IntPtrOutput { } // Sysctl setting net.ipv4.ip_local_port_range. -func (o SysctlConfigResponsePtrOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *string { +func (o SysctlConfigPtrOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *string { if v == nil { return nil } @@ -19343,8 +21314,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4IpLocalPortRange() pulumi.StringPt } // Sysctl setting net.ipv4.neigh.default.gc_thresh1. -func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19353,8 +21324,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh1() pulumi.Int } // Sysctl setting net.ipv4.neigh.default.gc_thresh2. -func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19363,8 +21334,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh2() pulumi.Int } // Sysctl setting net.ipv4.neigh.default.gc_thresh3. -func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19373,8 +21344,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh3() pulumi.Int } // Sysctl setting net.ipv4.tcp_fin_timeout. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19383,8 +21354,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutpu } // Sysctl setting net.ipv4.tcp_keepalive_probes. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19393,8 +21364,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtr } // Sysctl setting net.ipv4.tcp_keepalive_time. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19403,8 +21374,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOu } // Sysctl setting net.ipv4.tcp_max_syn_backlog. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19413,8 +21384,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOu } // Sysctl setting net.ipv4.tcp_max_tw_buckets. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19423,8 +21394,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOut } // Sysctl setting net.ipv4.tcp_tw_reuse. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *bool { +func (o SysctlConfigPtrOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *bool { if v == nil { return nil } @@ -19433,8 +21404,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput } // Sysctl setting net.ipv4.tcp_keepalive_intvl. -func (o SysctlConfigResponsePtrOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19443,8 +21414,8 @@ func (o SysctlConfigResponsePtrOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrO } // Sysctl setting net.netfilter.nf_conntrack_buckets. -func (o SysctlConfigResponsePtrOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19453,8 +21424,8 @@ func (o SysctlConfigResponsePtrOutput) NetNetfilterNfConntrackBuckets() pulumi.I } // Sysctl setting net.netfilter.nf_conntrack_max. -func (o SysctlConfigResponsePtrOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19463,8 +21434,8 @@ func (o SysctlConfigResponsePtrOutput) NetNetfilterNfConntrackMax() pulumi.IntPt } // Sysctl setting vm.max_map_count. -func (o SysctlConfigResponsePtrOutput) VmMaxMapCount() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) VmMaxMapCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19473,8 +21444,8 @@ func (o SysctlConfigResponsePtrOutput) VmMaxMapCount() pulumi.IntPtrOutput { } // Sysctl setting vm.swappiness. -func (o SysctlConfigResponsePtrOutput) VmSwappiness() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) VmSwappiness() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19483,8 +21454,8 @@ func (o SysctlConfigResponsePtrOutput) VmSwappiness() pulumi.IntPtrOutput { } // Sysctl setting vm.vfs_cache_pressure. -func (o SysctlConfigResponsePtrOutput) VmVfsCachePressure() pulumi.IntPtrOutput { - return o.ApplyT(func(v *SysctlConfigResponse) *int { +func (o SysctlConfigPtrOutput) VmVfsCachePressure() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfig) *int { if v == nil { return nil } @@ -19492,1155 +21463,1144 @@ func (o SysctlConfigResponsePtrOutput) VmVfsCachePressure() pulumi.IntPtrOutput }).(pulumi.IntPtrOutput) } -// Metadata pertaining to creation and last modification of the resource. -type SystemDataResponse struct { - // The timestamp of resource creation (UTC). - CreatedAt *string `pulumi:"createdAt"` - // The identity that created the resource. - CreatedBy *string `pulumi:"createdBy"` - // The type of identity that created the resource. - CreatedByType *string `pulumi:"createdByType"` - // The timestamp of resource last modification (UTC) - LastModifiedAt *string `pulumi:"lastModifiedAt"` - // The identity that last modified the resource. - LastModifiedBy *string `pulumi:"lastModifiedBy"` - // The type of identity that last modified the resource. - LastModifiedByType *string `pulumi:"lastModifiedByType"` +// Sysctl settings for Linux agent nodes. +type SysctlConfigResponse struct { + // Sysctl setting fs.aio-max-nr. + FsAioMaxNr *int `pulumi:"fsAioMaxNr"` + // Sysctl setting fs.file-max. + FsFileMax *int `pulumi:"fsFileMax"` + // Sysctl setting fs.inotify.max_user_watches. + FsInotifyMaxUserWatches *int `pulumi:"fsInotifyMaxUserWatches"` + // Sysctl setting fs.nr_open. + FsNrOpen *int `pulumi:"fsNrOpen"` + // Sysctl setting kernel.threads-max. + KernelThreadsMax *int `pulumi:"kernelThreadsMax"` + // Sysctl setting net.core.netdev_max_backlog. + NetCoreNetdevMaxBacklog *int `pulumi:"netCoreNetdevMaxBacklog"` + // Sysctl setting net.core.optmem_max. + NetCoreOptmemMax *int `pulumi:"netCoreOptmemMax"` + // Sysctl setting net.core.rmem_default. + NetCoreRmemDefault *int `pulumi:"netCoreRmemDefault"` + // Sysctl setting net.core.rmem_max. + NetCoreRmemMax *int `pulumi:"netCoreRmemMax"` + // Sysctl setting net.core.somaxconn. + NetCoreSomaxconn *int `pulumi:"netCoreSomaxconn"` + // Sysctl setting net.core.wmem_default. + NetCoreWmemDefault *int `pulumi:"netCoreWmemDefault"` + // Sysctl setting net.core.wmem_max. + NetCoreWmemMax *int `pulumi:"netCoreWmemMax"` + // Sysctl setting net.ipv4.ip_local_port_range. + NetIpv4IpLocalPortRange *string `pulumi:"netIpv4IpLocalPortRange"` + // Sysctl setting net.ipv4.neigh.default.gc_thresh1. + NetIpv4NeighDefaultGcThresh1 *int `pulumi:"netIpv4NeighDefaultGcThresh1"` + // Sysctl setting net.ipv4.neigh.default.gc_thresh2. + NetIpv4NeighDefaultGcThresh2 *int `pulumi:"netIpv4NeighDefaultGcThresh2"` + // Sysctl setting net.ipv4.neigh.default.gc_thresh3. + NetIpv4NeighDefaultGcThresh3 *int `pulumi:"netIpv4NeighDefaultGcThresh3"` + // Sysctl setting net.ipv4.tcp_fin_timeout. + NetIpv4TcpFinTimeout *int `pulumi:"netIpv4TcpFinTimeout"` + // Sysctl setting net.ipv4.tcp_keepalive_probes. + NetIpv4TcpKeepaliveProbes *int `pulumi:"netIpv4TcpKeepaliveProbes"` + // Sysctl setting net.ipv4.tcp_keepalive_time. + NetIpv4TcpKeepaliveTime *int `pulumi:"netIpv4TcpKeepaliveTime"` + // Sysctl setting net.ipv4.tcp_max_syn_backlog. + NetIpv4TcpMaxSynBacklog *int `pulumi:"netIpv4TcpMaxSynBacklog"` + // Sysctl setting net.ipv4.tcp_max_tw_buckets. + NetIpv4TcpMaxTwBuckets *int `pulumi:"netIpv4TcpMaxTwBuckets"` + // Sysctl setting net.ipv4.tcp_tw_reuse. + NetIpv4TcpTwReuse *bool `pulumi:"netIpv4TcpTwReuse"` + // Sysctl setting net.ipv4.tcp_keepalive_intvl. + NetIpv4TcpkeepaliveIntvl *int `pulumi:"netIpv4TcpkeepaliveIntvl"` + // Sysctl setting net.netfilter.nf_conntrack_buckets. + NetNetfilterNfConntrackBuckets *int `pulumi:"netNetfilterNfConntrackBuckets"` + // Sysctl setting net.netfilter.nf_conntrack_max. + NetNetfilterNfConntrackMax *int `pulumi:"netNetfilterNfConntrackMax"` + // Sysctl setting vm.max_map_count. + VmMaxMapCount *int `pulumi:"vmMaxMapCount"` + // Sysctl setting vm.swappiness. + VmSwappiness *int `pulumi:"vmSwappiness"` + // Sysctl setting vm.vfs_cache_pressure. + VmVfsCachePressure *int `pulumi:"vmVfsCachePressure"` } -// Metadata pertaining to creation and last modification of the resource. -type SystemDataResponseOutput struct{ *pulumi.OutputState } +// Sysctl settings for Linux agent nodes. +type SysctlConfigResponseOutput struct{ *pulumi.OutputState } -func (SystemDataResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SystemDataResponse)(nil)).Elem() +func (SysctlConfigResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SysctlConfigResponse)(nil)).Elem() } -func (o SystemDataResponseOutput) ToSystemDataResponseOutput() SystemDataResponseOutput { +func (o SysctlConfigResponseOutput) ToSysctlConfigResponseOutput() SysctlConfigResponseOutput { return o } -func (o SystemDataResponseOutput) ToSystemDataResponseOutputWithContext(ctx context.Context) SystemDataResponseOutput { +func (o SysctlConfigResponseOutput) ToSysctlConfigResponseOutputWithContext(ctx context.Context) SysctlConfigResponseOutput { return o } -// The timestamp of resource creation (UTC). -func (o SystemDataResponseOutput) CreatedAt() pulumi.StringPtrOutput { - return o.ApplyT(func(v SystemDataResponse) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) -} - -// The identity that created the resource. -func (o SystemDataResponseOutput) CreatedBy() pulumi.StringPtrOutput { - return o.ApplyT(func(v SystemDataResponse) *string { return v.CreatedBy }).(pulumi.StringPtrOutput) -} - -// The type of identity that created the resource. -func (o SystemDataResponseOutput) CreatedByType() pulumi.StringPtrOutput { - return o.ApplyT(func(v SystemDataResponse) *string { return v.CreatedByType }).(pulumi.StringPtrOutput) -} - -// The timestamp of resource last modification (UTC) -func (o SystemDataResponseOutput) LastModifiedAt() pulumi.StringPtrOutput { - return o.ApplyT(func(v SystemDataResponse) *string { return v.LastModifiedAt }).(pulumi.StringPtrOutput) -} - -// The identity that last modified the resource. -func (o SystemDataResponseOutput) LastModifiedBy() pulumi.StringPtrOutput { - return o.ApplyT(func(v SystemDataResponse) *string { return v.LastModifiedBy }).(pulumi.StringPtrOutput) -} - -// The type of identity that last modified the resource. -func (o SystemDataResponseOutput) LastModifiedByType() pulumi.StringPtrOutput { - return o.ApplyT(func(v SystemDataResponse) *string { return v.LastModifiedByType }).(pulumi.StringPtrOutput) -} - -// Time in a week. -type TimeInWeek struct { - // The day of the week. - Day *string `pulumi:"day"` - // Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. - HourSlots []int `pulumi:"hourSlots"` -} - -// TimeInWeekInput is an input type that accepts TimeInWeekArgs and TimeInWeekOutput values. -// You can construct a concrete instance of `TimeInWeekInput` via: -// -// TimeInWeekArgs{...} -type TimeInWeekInput interface { - pulumi.Input - - ToTimeInWeekOutput() TimeInWeekOutput - ToTimeInWeekOutputWithContext(context.Context) TimeInWeekOutput -} - -// Time in a week. -type TimeInWeekArgs struct { - // The day of the week. - Day pulumi.StringPtrInput `pulumi:"day"` - // Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. - HourSlots pulumi.IntArrayInput `pulumi:"hourSlots"` +// Sysctl setting fs.aio-max-nr. +func (o SysctlConfigResponseOutput) FsAioMaxNr() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsAioMaxNr }).(pulumi.IntPtrOutput) } -func (TimeInWeekArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TimeInWeek)(nil)).Elem() +// Sysctl setting fs.file-max. +func (o SysctlConfigResponseOutput) FsFileMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsFileMax }).(pulumi.IntPtrOutput) } -func (i TimeInWeekArgs) ToTimeInWeekOutput() TimeInWeekOutput { - return i.ToTimeInWeekOutputWithContext(context.Background()) +// Sysctl setting fs.inotify.max_user_watches. +func (o SysctlConfigResponseOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsInotifyMaxUserWatches }).(pulumi.IntPtrOutput) } -func (i TimeInWeekArgs) ToTimeInWeekOutputWithContext(ctx context.Context) TimeInWeekOutput { - return pulumi.ToOutputWithContext(ctx, i).(TimeInWeekOutput) +// Sysctl setting fs.nr_open. +func (o SysctlConfigResponseOutput) FsNrOpen() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.FsNrOpen }).(pulumi.IntPtrOutput) } -// TimeInWeekArrayInput is an input type that accepts TimeInWeekArray and TimeInWeekArrayOutput values. -// You can construct a concrete instance of `TimeInWeekArrayInput` via: -// -// TimeInWeekArray{ TimeInWeekArgs{...} } -type TimeInWeekArrayInput interface { - pulumi.Input +// Sysctl setting kernel.threads-max. +func (o SysctlConfigResponseOutput) KernelThreadsMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.KernelThreadsMax }).(pulumi.IntPtrOutput) +} - ToTimeInWeekArrayOutput() TimeInWeekArrayOutput - ToTimeInWeekArrayOutputWithContext(context.Context) TimeInWeekArrayOutput +// Sysctl setting net.core.netdev_max_backlog. +func (o SysctlConfigResponseOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreNetdevMaxBacklog }).(pulumi.IntPtrOutput) } -type TimeInWeekArray []TimeInWeekInput +// Sysctl setting net.core.optmem_max. +func (o SysctlConfigResponseOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreOptmemMax }).(pulumi.IntPtrOutput) +} -func (TimeInWeekArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]TimeInWeek)(nil)).Elem() +// Sysctl setting net.core.rmem_default. +func (o SysctlConfigResponseOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreRmemDefault }).(pulumi.IntPtrOutput) } -func (i TimeInWeekArray) ToTimeInWeekArrayOutput() TimeInWeekArrayOutput { - return i.ToTimeInWeekArrayOutputWithContext(context.Background()) +// Sysctl setting net.core.rmem_max. +func (o SysctlConfigResponseOutput) NetCoreRmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreRmemMax }).(pulumi.IntPtrOutput) } -func (i TimeInWeekArray) ToTimeInWeekArrayOutputWithContext(ctx context.Context) TimeInWeekArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(TimeInWeekArrayOutput) +// Sysctl setting net.core.somaxconn. +func (o SysctlConfigResponseOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreSomaxconn }).(pulumi.IntPtrOutput) } -// Time in a week. -type TimeInWeekOutput struct{ *pulumi.OutputState } +// Sysctl setting net.core.wmem_default. +func (o SysctlConfigResponseOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreWmemDefault }).(pulumi.IntPtrOutput) +} -func (TimeInWeekOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TimeInWeek)(nil)).Elem() +// Sysctl setting net.core.wmem_max. +func (o SysctlConfigResponseOutput) NetCoreWmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetCoreWmemMax }).(pulumi.IntPtrOutput) } -func (o TimeInWeekOutput) ToTimeInWeekOutput() TimeInWeekOutput { - return o +// Sysctl setting net.ipv4.ip_local_port_range. +func (o SysctlConfigResponseOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *string { return v.NetIpv4IpLocalPortRange }).(pulumi.StringPtrOutput) } -func (o TimeInWeekOutput) ToTimeInWeekOutputWithContext(ctx context.Context) TimeInWeekOutput { - return o +// Sysctl setting net.ipv4.neigh.default.gc_thresh1. +func (o SysctlConfigResponseOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4NeighDefaultGcThresh1 }).(pulumi.IntPtrOutput) } -// The day of the week. -func (o TimeInWeekOutput) Day() pulumi.StringPtrOutput { - return o.ApplyT(func(v TimeInWeek) *string { return v.Day }).(pulumi.StringPtrOutput) +// Sysctl setting net.ipv4.neigh.default.gc_thresh2. +func (o SysctlConfigResponseOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4NeighDefaultGcThresh2 }).(pulumi.IntPtrOutput) } -// Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. -func (o TimeInWeekOutput) HourSlots() pulumi.IntArrayOutput { - return o.ApplyT(func(v TimeInWeek) []int { return v.HourSlots }).(pulumi.IntArrayOutput) +// Sysctl setting net.ipv4.neigh.default.gc_thresh3. +func (o SysctlConfigResponseOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4NeighDefaultGcThresh3 }).(pulumi.IntPtrOutput) } -type TimeInWeekArrayOutput struct{ *pulumi.OutputState } +// Sysctl setting net.ipv4.tcp_fin_timeout. +func (o SysctlConfigResponseOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpFinTimeout }).(pulumi.IntPtrOutput) +} -func (TimeInWeekArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]TimeInWeek)(nil)).Elem() +// Sysctl setting net.ipv4.tcp_keepalive_probes. +func (o SysctlConfigResponseOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpKeepaliveProbes }).(pulumi.IntPtrOutput) } -func (o TimeInWeekArrayOutput) ToTimeInWeekArrayOutput() TimeInWeekArrayOutput { - return o +// Sysctl setting net.ipv4.tcp_keepalive_time. +func (o SysctlConfigResponseOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpKeepaliveTime }).(pulumi.IntPtrOutput) } -func (o TimeInWeekArrayOutput) ToTimeInWeekArrayOutputWithContext(ctx context.Context) TimeInWeekArrayOutput { - return o +// Sysctl setting net.ipv4.tcp_max_syn_backlog. +func (o SysctlConfigResponseOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpMaxSynBacklog }).(pulumi.IntPtrOutput) } -func (o TimeInWeekArrayOutput) Index(i pulumi.IntInput) TimeInWeekOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeInWeek { - return vs[0].([]TimeInWeek)[vs[1].(int)] - }).(TimeInWeekOutput) +// Sysctl setting net.ipv4.tcp_max_tw_buckets. +func (o SysctlConfigResponseOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpMaxTwBuckets }).(pulumi.IntPtrOutput) } -// Time in a week. -type TimeInWeekResponse struct { - // The day of the week. - Day *string `pulumi:"day"` - // Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. - HourSlots []int `pulumi:"hourSlots"` +// Sysctl setting net.ipv4.tcp_tw_reuse. +func (o SysctlConfigResponseOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *bool { return v.NetIpv4TcpTwReuse }).(pulumi.BoolPtrOutput) } -// Time in a week. -type TimeInWeekResponseOutput struct{ *pulumi.OutputState } +// Sysctl setting net.ipv4.tcp_keepalive_intvl. +func (o SysctlConfigResponseOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetIpv4TcpkeepaliveIntvl }).(pulumi.IntPtrOutput) +} -func (TimeInWeekResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TimeInWeekResponse)(nil)).Elem() +// Sysctl setting net.netfilter.nf_conntrack_buckets. +func (o SysctlConfigResponseOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetNetfilterNfConntrackBuckets }).(pulumi.IntPtrOutput) } -func (o TimeInWeekResponseOutput) ToTimeInWeekResponseOutput() TimeInWeekResponseOutput { - return o +// Sysctl setting net.netfilter.nf_conntrack_max. +func (o SysctlConfigResponseOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.NetNetfilterNfConntrackMax }).(pulumi.IntPtrOutput) } -func (o TimeInWeekResponseOutput) ToTimeInWeekResponseOutputWithContext(ctx context.Context) TimeInWeekResponseOutput { - return o +// Sysctl setting vm.max_map_count. +func (o SysctlConfigResponseOutput) VmMaxMapCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.VmMaxMapCount }).(pulumi.IntPtrOutput) } -// The day of the week. -func (o TimeInWeekResponseOutput) Day() pulumi.StringPtrOutput { - return o.ApplyT(func(v TimeInWeekResponse) *string { return v.Day }).(pulumi.StringPtrOutput) +// Sysctl setting vm.swappiness. +func (o SysctlConfigResponseOutput) VmSwappiness() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.VmSwappiness }).(pulumi.IntPtrOutput) } -// Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. -func (o TimeInWeekResponseOutput) HourSlots() pulumi.IntArrayOutput { - return o.ApplyT(func(v TimeInWeekResponse) []int { return v.HourSlots }).(pulumi.IntArrayOutput) +// Sysctl setting vm.vfs_cache_pressure. +func (o SysctlConfigResponseOutput) VmVfsCachePressure() pulumi.IntPtrOutput { + return o.ApplyT(func(v SysctlConfigResponse) *int { return v.VmVfsCachePressure }).(pulumi.IntPtrOutput) } -type TimeInWeekResponseArrayOutput struct{ *pulumi.OutputState } +type SysctlConfigResponsePtrOutput struct{ *pulumi.OutputState } -func (TimeInWeekResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]TimeInWeekResponse)(nil)).Elem() +func (SysctlConfigResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SysctlConfigResponse)(nil)).Elem() } -func (o TimeInWeekResponseArrayOutput) ToTimeInWeekResponseArrayOutput() TimeInWeekResponseArrayOutput { +func (o SysctlConfigResponsePtrOutput) ToSysctlConfigResponsePtrOutput() SysctlConfigResponsePtrOutput { return o } -func (o TimeInWeekResponseArrayOutput) ToTimeInWeekResponseArrayOutputWithContext(ctx context.Context) TimeInWeekResponseArrayOutput { +func (o SysctlConfigResponsePtrOutput) ToSysctlConfigResponsePtrOutputWithContext(ctx context.Context) SysctlConfigResponsePtrOutput { return o } -func (o TimeInWeekResponseArrayOutput) Index(i pulumi.IntInput) TimeInWeekResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeInWeekResponse { - return vs[0].([]TimeInWeekResponse)[vs[1].(int)] - }).(TimeInWeekResponseOutput) +func (o SysctlConfigResponsePtrOutput) Elem() SysctlConfigResponseOutput { + return o.ApplyT(func(v *SysctlConfigResponse) SysctlConfigResponse { + if v != nil { + return *v + } + var ret SysctlConfigResponse + return ret + }).(SysctlConfigResponseOutput) } -// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. -type TimeSpan struct { - // The end of a time span - End *string `pulumi:"end"` - // The start of a time span - Start *string `pulumi:"start"` +// Sysctl setting fs.aio-max-nr. +func (o SysctlConfigResponsePtrOutput) FsAioMaxNr() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.FsAioMaxNr + }).(pulumi.IntPtrOutput) } -// TimeSpanInput is an input type that accepts TimeSpanArgs and TimeSpanOutput values. -// You can construct a concrete instance of `TimeSpanInput` via: -// -// TimeSpanArgs{...} -type TimeSpanInput interface { - pulumi.Input +// Sysctl setting fs.file-max. +func (o SysctlConfigResponsePtrOutput) FsFileMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.FsFileMax + }).(pulumi.IntPtrOutput) +} - ToTimeSpanOutput() TimeSpanOutput - ToTimeSpanOutputWithContext(context.Context) TimeSpanOutput +// Sysctl setting fs.inotify.max_user_watches. +func (o SysctlConfigResponsePtrOutput) FsInotifyMaxUserWatches() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.FsInotifyMaxUserWatches + }).(pulumi.IntPtrOutput) } -// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. -type TimeSpanArgs struct { - // The end of a time span - End pulumi.StringPtrInput `pulumi:"end"` - // The start of a time span - Start pulumi.StringPtrInput `pulumi:"start"` +// Sysctl setting fs.nr_open. +func (o SysctlConfigResponsePtrOutput) FsNrOpen() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.FsNrOpen + }).(pulumi.IntPtrOutput) +} + +// Sysctl setting kernel.threads-max. +func (o SysctlConfigResponsePtrOutput) KernelThreadsMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.KernelThreadsMax + }).(pulumi.IntPtrOutput) +} + +// Sysctl setting net.core.netdev_max_backlog. +func (o SysctlConfigResponsePtrOutput) NetCoreNetdevMaxBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreNetdevMaxBacklog + }).(pulumi.IntPtrOutput) } -func (TimeSpanArgs) ElementType() reflect.Type { - return reflect.TypeOf((*TimeSpan)(nil)).Elem() +// Sysctl setting net.core.optmem_max. +func (o SysctlConfigResponsePtrOutput) NetCoreOptmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreOptmemMax + }).(pulumi.IntPtrOutput) } -func (i TimeSpanArgs) ToTimeSpanOutput() TimeSpanOutput { - return i.ToTimeSpanOutputWithContext(context.Background()) +// Sysctl setting net.core.rmem_default. +func (o SysctlConfigResponsePtrOutput) NetCoreRmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreRmemDefault + }).(pulumi.IntPtrOutput) } -func (i TimeSpanArgs) ToTimeSpanOutputWithContext(ctx context.Context) TimeSpanOutput { - return pulumi.ToOutputWithContext(ctx, i).(TimeSpanOutput) +// Sysctl setting net.core.rmem_max. +func (o SysctlConfigResponsePtrOutput) NetCoreRmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreRmemMax + }).(pulumi.IntPtrOutput) } -// TimeSpanArrayInput is an input type that accepts TimeSpanArray and TimeSpanArrayOutput values. -// You can construct a concrete instance of `TimeSpanArrayInput` via: -// -// TimeSpanArray{ TimeSpanArgs{...} } -type TimeSpanArrayInput interface { - pulumi.Input - - ToTimeSpanArrayOutput() TimeSpanArrayOutput - ToTimeSpanArrayOutputWithContext(context.Context) TimeSpanArrayOutput +// Sysctl setting net.core.somaxconn. +func (o SysctlConfigResponsePtrOutput) NetCoreSomaxconn() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreSomaxconn + }).(pulumi.IntPtrOutput) } -type TimeSpanArray []TimeSpanInput - -func (TimeSpanArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]TimeSpan)(nil)).Elem() +// Sysctl setting net.core.wmem_default. +func (o SysctlConfigResponsePtrOutput) NetCoreWmemDefault() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreWmemDefault + }).(pulumi.IntPtrOutput) } -func (i TimeSpanArray) ToTimeSpanArrayOutput() TimeSpanArrayOutput { - return i.ToTimeSpanArrayOutputWithContext(context.Background()) +// Sysctl setting net.core.wmem_max. +func (o SysctlConfigResponsePtrOutput) NetCoreWmemMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetCoreWmemMax + }).(pulumi.IntPtrOutput) } -func (i TimeSpanArray) ToTimeSpanArrayOutputWithContext(ctx context.Context) TimeSpanArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(TimeSpanArrayOutput) +// Sysctl setting net.ipv4.ip_local_port_range. +func (o SysctlConfigResponsePtrOutput) NetIpv4IpLocalPortRange() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *string { + if v == nil { + return nil + } + return v.NetIpv4IpLocalPortRange + }).(pulumi.StringPtrOutput) } -// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. -type TimeSpanOutput struct{ *pulumi.OutputState } - -func (TimeSpanOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TimeSpan)(nil)).Elem() +// Sysctl setting net.ipv4.neigh.default.gc_thresh1. +func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh1() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4NeighDefaultGcThresh1 + }).(pulumi.IntPtrOutput) } -func (o TimeSpanOutput) ToTimeSpanOutput() TimeSpanOutput { - return o +// Sysctl setting net.ipv4.neigh.default.gc_thresh2. +func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh2() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4NeighDefaultGcThresh2 + }).(pulumi.IntPtrOutput) } -func (o TimeSpanOutput) ToTimeSpanOutputWithContext(ctx context.Context) TimeSpanOutput { - return o +// Sysctl setting net.ipv4.neigh.default.gc_thresh3. +func (o SysctlConfigResponsePtrOutput) NetIpv4NeighDefaultGcThresh3() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4NeighDefaultGcThresh3 + }).(pulumi.IntPtrOutput) } -// The end of a time span -func (o TimeSpanOutput) End() pulumi.StringPtrOutput { - return o.ApplyT(func(v TimeSpan) *string { return v.End }).(pulumi.StringPtrOutput) +// Sysctl setting net.ipv4.tcp_fin_timeout. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpFinTimeout() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4TcpFinTimeout + }).(pulumi.IntPtrOutput) } -// The start of a time span -func (o TimeSpanOutput) Start() pulumi.StringPtrOutput { - return o.ApplyT(func(v TimeSpan) *string { return v.Start }).(pulumi.StringPtrOutput) +// Sysctl setting net.ipv4.tcp_keepalive_probes. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpKeepaliveProbes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4TcpKeepaliveProbes + }).(pulumi.IntPtrOutput) } -type TimeSpanArrayOutput struct{ *pulumi.OutputState } - -func (TimeSpanArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]TimeSpan)(nil)).Elem() +// Sysctl setting net.ipv4.tcp_keepalive_time. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpKeepaliveTime() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4TcpKeepaliveTime + }).(pulumi.IntPtrOutput) } -func (o TimeSpanArrayOutput) ToTimeSpanArrayOutput() TimeSpanArrayOutput { - return o +// Sysctl setting net.ipv4.tcp_max_syn_backlog. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpMaxSynBacklog() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4TcpMaxSynBacklog + }).(pulumi.IntPtrOutput) } -func (o TimeSpanArrayOutput) ToTimeSpanArrayOutputWithContext(ctx context.Context) TimeSpanArrayOutput { - return o +// Sysctl setting net.ipv4.tcp_max_tw_buckets. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpMaxTwBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4TcpMaxTwBuckets + }).(pulumi.IntPtrOutput) } -func (o TimeSpanArrayOutput) Index(i pulumi.IntInput) TimeSpanOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeSpan { - return vs[0].([]TimeSpan)[vs[1].(int)] - }).(TimeSpanOutput) +// Sysctl setting net.ipv4.tcp_tw_reuse. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpTwReuse() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *bool { + if v == nil { + return nil + } + return v.NetIpv4TcpTwReuse + }).(pulumi.BoolPtrOutput) } -// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. -type TimeSpanResponse struct { - // The end of a time span - End *string `pulumi:"end"` - // The start of a time span - Start *string `pulumi:"start"` +// Sysctl setting net.ipv4.tcp_keepalive_intvl. +func (o SysctlConfigResponsePtrOutput) NetIpv4TcpkeepaliveIntvl() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetIpv4TcpkeepaliveIntvl + }).(pulumi.IntPtrOutput) } -// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. -type TimeSpanResponseOutput struct{ *pulumi.OutputState } +// Sysctl setting net.netfilter.nf_conntrack_buckets. +func (o SysctlConfigResponsePtrOutput) NetNetfilterNfConntrackBuckets() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetNetfilterNfConntrackBuckets + }).(pulumi.IntPtrOutput) +} -func (TimeSpanResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*TimeSpanResponse)(nil)).Elem() +// Sysctl setting net.netfilter.nf_conntrack_max. +func (o SysctlConfigResponsePtrOutput) NetNetfilterNfConntrackMax() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.NetNetfilterNfConntrackMax + }).(pulumi.IntPtrOutput) } -func (o TimeSpanResponseOutput) ToTimeSpanResponseOutput() TimeSpanResponseOutput { - return o +// Sysctl setting vm.max_map_count. +func (o SysctlConfigResponsePtrOutput) VmMaxMapCount() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.VmMaxMapCount + }).(pulumi.IntPtrOutput) } -func (o TimeSpanResponseOutput) ToTimeSpanResponseOutputWithContext(ctx context.Context) TimeSpanResponseOutput { - return o +// Sysctl setting vm.swappiness. +func (o SysctlConfigResponsePtrOutput) VmSwappiness() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.VmSwappiness + }).(pulumi.IntPtrOutput) } -// The end of a time span -func (o TimeSpanResponseOutput) End() pulumi.StringPtrOutput { - return o.ApplyT(func(v TimeSpanResponse) *string { return v.End }).(pulumi.StringPtrOutput) +// Sysctl setting vm.vfs_cache_pressure. +func (o SysctlConfigResponsePtrOutput) VmVfsCachePressure() pulumi.IntPtrOutput { + return o.ApplyT(func(v *SysctlConfigResponse) *int { + if v == nil { + return nil + } + return v.VmVfsCachePressure + }).(pulumi.IntPtrOutput) } -// The start of a time span -func (o TimeSpanResponseOutput) Start() pulumi.StringPtrOutput { - return o.ApplyT(func(v TimeSpanResponse) *string { return v.Start }).(pulumi.StringPtrOutput) +// Metadata pertaining to creation and last modification of the resource. +type SystemDataResponse struct { + // The timestamp of resource creation (UTC). + CreatedAt *string `pulumi:"createdAt"` + // The identity that created the resource. + CreatedBy *string `pulumi:"createdBy"` + // The type of identity that created the resource. + CreatedByType *string `pulumi:"createdByType"` + // The timestamp of resource last modification (UTC) + LastModifiedAt *string `pulumi:"lastModifiedAt"` + // The identity that last modified the resource. + LastModifiedBy *string `pulumi:"lastModifiedBy"` + // The type of identity that last modified the resource. + LastModifiedByType *string `pulumi:"lastModifiedByType"` } -type TimeSpanResponseArrayOutput struct{ *pulumi.OutputState } +// Metadata pertaining to creation and last modification of the resource. +type SystemDataResponseOutput struct{ *pulumi.OutputState } -func (TimeSpanResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]TimeSpanResponse)(nil)).Elem() +func (SystemDataResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SystemDataResponse)(nil)).Elem() } -func (o TimeSpanResponseArrayOutput) ToTimeSpanResponseArrayOutput() TimeSpanResponseArrayOutput { +func (o SystemDataResponseOutput) ToSystemDataResponseOutput() SystemDataResponseOutput { return o } -func (o TimeSpanResponseArrayOutput) ToTimeSpanResponseArrayOutputWithContext(ctx context.Context) TimeSpanResponseArrayOutput { +func (o SystemDataResponseOutput) ToSystemDataResponseOutputWithContext(ctx context.Context) SystemDataResponseOutput { return o } -func (o TimeSpanResponseArrayOutput) Index(i pulumi.IntInput) TimeSpanResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeSpanResponse { - return vs[0].([]TimeSpanResponse)[vs[1].(int)] - }).(TimeSpanResponseOutput) +// The timestamp of resource creation (UTC). +func (o SystemDataResponseOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v SystemDataResponse) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) } -// A group to be updated. -type UpdateGroup struct { - // Name of the group. - // It must match a group name of an existing fleet member. - Name string `pulumi:"name"` +// The identity that created the resource. +func (o SystemDataResponseOutput) CreatedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v SystemDataResponse) *string { return v.CreatedBy }).(pulumi.StringPtrOutput) } -// UpdateGroupInput is an input type that accepts UpdateGroupArgs and UpdateGroupOutput values. -// You can construct a concrete instance of `UpdateGroupInput` via: -// -// UpdateGroupArgs{...} -type UpdateGroupInput interface { - pulumi.Input - - ToUpdateGroupOutput() UpdateGroupOutput - ToUpdateGroupOutputWithContext(context.Context) UpdateGroupOutput +// The type of identity that created the resource. +func (o SystemDataResponseOutput) CreatedByType() pulumi.StringPtrOutput { + return o.ApplyT(func(v SystemDataResponse) *string { return v.CreatedByType }).(pulumi.StringPtrOutput) } -// A group to be updated. -type UpdateGroupArgs struct { - // Name of the group. - // It must match a group name of an existing fleet member. - Name pulumi.StringInput `pulumi:"name"` +// The timestamp of resource last modification (UTC) +func (o SystemDataResponseOutput) LastModifiedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v SystemDataResponse) *string { return v.LastModifiedAt }).(pulumi.StringPtrOutput) } -func (UpdateGroupArgs) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateGroup)(nil)).Elem() +// The identity that last modified the resource. +func (o SystemDataResponseOutput) LastModifiedBy() pulumi.StringPtrOutput { + return o.ApplyT(func(v SystemDataResponse) *string { return v.LastModifiedBy }).(pulumi.StringPtrOutput) } -func (i UpdateGroupArgs) ToUpdateGroupOutput() UpdateGroupOutput { - return i.ToUpdateGroupOutputWithContext(context.Background()) +// The type of identity that last modified the resource. +func (o SystemDataResponseOutput) LastModifiedByType() pulumi.StringPtrOutput { + return o.ApplyT(func(v SystemDataResponse) *string { return v.LastModifiedByType }).(pulumi.StringPtrOutput) } -func (i UpdateGroupArgs) ToUpdateGroupOutputWithContext(ctx context.Context) UpdateGroupOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateGroupOutput) +// Time in a week. +type TimeInWeek struct { + // The day of the week. + Day *string `pulumi:"day"` + // Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. + HourSlots []int `pulumi:"hourSlots"` } -// UpdateGroupArrayInput is an input type that accepts UpdateGroupArray and UpdateGroupArrayOutput values. -// You can construct a concrete instance of `UpdateGroupArrayInput` via: +// TimeInWeekInput is an input type that accepts TimeInWeekArgs and TimeInWeekOutput values. +// You can construct a concrete instance of `TimeInWeekInput` via: // -// UpdateGroupArray{ UpdateGroupArgs{...} } -type UpdateGroupArrayInput interface { +// TimeInWeekArgs{...} +type TimeInWeekInput interface { pulumi.Input - ToUpdateGroupArrayOutput() UpdateGroupArrayOutput - ToUpdateGroupArrayOutputWithContext(context.Context) UpdateGroupArrayOutput -} - -type UpdateGroupArray []UpdateGroupInput - -func (UpdateGroupArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateGroup)(nil)).Elem() -} - -func (i UpdateGroupArray) ToUpdateGroupArrayOutput() UpdateGroupArrayOutput { - return i.ToUpdateGroupArrayOutputWithContext(context.Background()) -} - -func (i UpdateGroupArray) ToUpdateGroupArrayOutputWithContext(ctx context.Context) UpdateGroupArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateGroupArrayOutput) -} - -// A group to be updated. -type UpdateGroupOutput struct{ *pulumi.OutputState } - -func (UpdateGroupOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateGroup)(nil)).Elem() -} - -func (o UpdateGroupOutput) ToUpdateGroupOutput() UpdateGroupOutput { - return o -} - -func (o UpdateGroupOutput) ToUpdateGroupOutputWithContext(ctx context.Context) UpdateGroupOutput { - return o + ToTimeInWeekOutput() TimeInWeekOutput + ToTimeInWeekOutputWithContext(context.Context) TimeInWeekOutput } -// Name of the group. -// It must match a group name of an existing fleet member. -func (o UpdateGroupOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v UpdateGroup) string { return v.Name }).(pulumi.StringOutput) +// Time in a week. +type TimeInWeekArgs struct { + // The day of the week. + Day pulumi.StringPtrInput `pulumi:"day"` + // Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. + HourSlots pulumi.IntArrayInput `pulumi:"hourSlots"` } -type UpdateGroupArrayOutput struct{ *pulumi.OutputState } - -func (UpdateGroupArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateGroup)(nil)).Elem() +func (TimeInWeekArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TimeInWeek)(nil)).Elem() } -func (o UpdateGroupArrayOutput) ToUpdateGroupArrayOutput() UpdateGroupArrayOutput { - return o +func (i TimeInWeekArgs) ToTimeInWeekOutput() TimeInWeekOutput { + return i.ToTimeInWeekOutputWithContext(context.Background()) } -func (o UpdateGroupArrayOutput) ToUpdateGroupArrayOutputWithContext(ctx context.Context) UpdateGroupArrayOutput { - return o +func (i TimeInWeekArgs) ToTimeInWeekOutputWithContext(ctx context.Context) TimeInWeekOutput { + return pulumi.ToOutputWithContext(ctx, i).(TimeInWeekOutput) } -func (o UpdateGroupArrayOutput) Index(i pulumi.IntInput) UpdateGroupOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UpdateGroup { - return vs[0].([]UpdateGroup)[vs[1].(int)] - }).(UpdateGroupOutput) -} +// TimeInWeekArrayInput is an input type that accepts TimeInWeekArray and TimeInWeekArrayOutput values. +// You can construct a concrete instance of `TimeInWeekArrayInput` via: +// +// TimeInWeekArray{ TimeInWeekArgs{...} } +type TimeInWeekArrayInput interface { + pulumi.Input -// A group to be updated. -type UpdateGroupResponse struct { - // Name of the group. - // It must match a group name of an existing fleet member. - Name string `pulumi:"name"` + ToTimeInWeekArrayOutput() TimeInWeekArrayOutput + ToTimeInWeekArrayOutputWithContext(context.Context) TimeInWeekArrayOutput } -// A group to be updated. -type UpdateGroupResponseOutput struct{ *pulumi.OutputState } - -func (UpdateGroupResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateGroupResponse)(nil)).Elem() -} +type TimeInWeekArray []TimeInWeekInput -func (o UpdateGroupResponseOutput) ToUpdateGroupResponseOutput() UpdateGroupResponseOutput { - return o +func (TimeInWeekArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TimeInWeek)(nil)).Elem() } -func (o UpdateGroupResponseOutput) ToUpdateGroupResponseOutputWithContext(ctx context.Context) UpdateGroupResponseOutput { - return o +func (i TimeInWeekArray) ToTimeInWeekArrayOutput() TimeInWeekArrayOutput { + return i.ToTimeInWeekArrayOutputWithContext(context.Background()) } -// Name of the group. -// It must match a group name of an existing fleet member. -func (o UpdateGroupResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v UpdateGroupResponse) string { return v.Name }).(pulumi.StringOutput) +func (i TimeInWeekArray) ToTimeInWeekArrayOutputWithContext(ctx context.Context) TimeInWeekArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TimeInWeekArrayOutput) } -type UpdateGroupResponseArrayOutput struct{ *pulumi.OutputState } +// Time in a week. +type TimeInWeekOutput struct{ *pulumi.OutputState } -func (UpdateGroupResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateGroupResponse)(nil)).Elem() +func (TimeInWeekOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TimeInWeek)(nil)).Elem() } -func (o UpdateGroupResponseArrayOutput) ToUpdateGroupResponseArrayOutput() UpdateGroupResponseArrayOutput { +func (o TimeInWeekOutput) ToTimeInWeekOutput() TimeInWeekOutput { return o } -func (o UpdateGroupResponseArrayOutput) ToUpdateGroupResponseArrayOutputWithContext(ctx context.Context) UpdateGroupResponseArrayOutput { +func (o TimeInWeekOutput) ToTimeInWeekOutputWithContext(ctx context.Context) TimeInWeekOutput { return o } -func (o UpdateGroupResponseArrayOutput) Index(i pulumi.IntInput) UpdateGroupResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UpdateGroupResponse { - return vs[0].([]UpdateGroupResponse)[vs[1].(int)] - }).(UpdateGroupResponseOutput) +// The day of the week. +func (o TimeInWeekOutput) Day() pulumi.StringPtrOutput { + return o.ApplyT(func(v TimeInWeek) *string { return v.Day }).(pulumi.StringPtrOutput) } -// The status of a UpdateGroup. -type UpdateGroupStatusResponse struct { - // The list of member this UpdateGroup updates. - Members []MemberUpdateStatusResponse `pulumi:"members"` - // The name of the UpdateGroup. - Name string `pulumi:"name"` - // The status of the UpdateGroup. - Status UpdateStatusResponse `pulumi:"status"` +// Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. +func (o TimeInWeekOutput) HourSlots() pulumi.IntArrayOutput { + return o.ApplyT(func(v TimeInWeek) []int { return v.HourSlots }).(pulumi.IntArrayOutput) } -// The status of a UpdateGroup. -type UpdateGroupStatusResponseOutput struct{ *pulumi.OutputState } +type TimeInWeekArrayOutput struct{ *pulumi.OutputState } -func (UpdateGroupStatusResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateGroupStatusResponse)(nil)).Elem() +func (TimeInWeekArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TimeInWeek)(nil)).Elem() } -func (o UpdateGroupStatusResponseOutput) ToUpdateGroupStatusResponseOutput() UpdateGroupStatusResponseOutput { +func (o TimeInWeekArrayOutput) ToTimeInWeekArrayOutput() TimeInWeekArrayOutput { return o } -func (o UpdateGroupStatusResponseOutput) ToUpdateGroupStatusResponseOutputWithContext(ctx context.Context) UpdateGroupStatusResponseOutput { +func (o TimeInWeekArrayOutput) ToTimeInWeekArrayOutputWithContext(ctx context.Context) TimeInWeekArrayOutput { return o } -// The list of member this UpdateGroup updates. -func (o UpdateGroupStatusResponseOutput) Members() MemberUpdateStatusResponseArrayOutput { - return o.ApplyT(func(v UpdateGroupStatusResponse) []MemberUpdateStatusResponse { return v.Members }).(MemberUpdateStatusResponseArrayOutput) -} - -// The name of the UpdateGroup. -func (o UpdateGroupStatusResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v UpdateGroupStatusResponse) string { return v.Name }).(pulumi.StringOutput) +func (o TimeInWeekArrayOutput) Index(i pulumi.IntInput) TimeInWeekOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeInWeek { + return vs[0].([]TimeInWeek)[vs[1].(int)] + }).(TimeInWeekOutput) } -// The status of the UpdateGroup. -func (o UpdateGroupStatusResponseOutput) Status() UpdateStatusResponseOutput { - return o.ApplyT(func(v UpdateGroupStatusResponse) UpdateStatusResponse { return v.Status }).(UpdateStatusResponseOutput) +// Time in a week. +type TimeInWeekResponse struct { + // The day of the week. + Day *string `pulumi:"day"` + // Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. + HourSlots []int `pulumi:"hourSlots"` } -type UpdateGroupStatusResponseArrayOutput struct{ *pulumi.OutputState } +// Time in a week. +type TimeInWeekResponseOutput struct{ *pulumi.OutputState } -func (UpdateGroupStatusResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateGroupStatusResponse)(nil)).Elem() +func (TimeInWeekResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TimeInWeekResponse)(nil)).Elem() } -func (o UpdateGroupStatusResponseArrayOutput) ToUpdateGroupStatusResponseArrayOutput() UpdateGroupStatusResponseArrayOutput { +func (o TimeInWeekResponseOutput) ToTimeInWeekResponseOutput() TimeInWeekResponseOutput { return o } -func (o UpdateGroupStatusResponseArrayOutput) ToUpdateGroupStatusResponseArrayOutputWithContext(ctx context.Context) UpdateGroupStatusResponseArrayOutput { +func (o TimeInWeekResponseOutput) ToTimeInWeekResponseOutputWithContext(ctx context.Context) TimeInWeekResponseOutput { return o } -func (o UpdateGroupStatusResponseArrayOutput) Index(i pulumi.IntInput) UpdateGroupStatusResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UpdateGroupStatusResponse { - return vs[0].([]UpdateGroupStatusResponse)[vs[1].(int)] - }).(UpdateGroupStatusResponseOutput) +// The day of the week. +func (o TimeInWeekResponseOutput) Day() pulumi.StringPtrOutput { + return o.ApplyT(func(v TimeInWeekResponse) *string { return v.Day }).(pulumi.StringPtrOutput) } -// The status of a UpdateRun. -type UpdateRunStatusResponse struct { - // The stages composing an update run. Stages are run sequentially withing an UpdateRun. - Stages []UpdateStageStatusResponse `pulumi:"stages"` - // The status of the UpdateRun. - Status UpdateStatusResponse `pulumi:"status"` +// Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range. +func (o TimeInWeekResponseOutput) HourSlots() pulumi.IntArrayOutput { + return o.ApplyT(func(v TimeInWeekResponse) []int { return v.HourSlots }).(pulumi.IntArrayOutput) } -// The status of a UpdateRun. -type UpdateRunStatusResponseOutput struct{ *pulumi.OutputState } +type TimeInWeekResponseArrayOutput struct{ *pulumi.OutputState } -func (UpdateRunStatusResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateRunStatusResponse)(nil)).Elem() +func (TimeInWeekResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TimeInWeekResponse)(nil)).Elem() } -func (o UpdateRunStatusResponseOutput) ToUpdateRunStatusResponseOutput() UpdateRunStatusResponseOutput { +func (o TimeInWeekResponseArrayOutput) ToTimeInWeekResponseArrayOutput() TimeInWeekResponseArrayOutput { return o } -func (o UpdateRunStatusResponseOutput) ToUpdateRunStatusResponseOutputWithContext(ctx context.Context) UpdateRunStatusResponseOutput { +func (o TimeInWeekResponseArrayOutput) ToTimeInWeekResponseArrayOutputWithContext(ctx context.Context) TimeInWeekResponseArrayOutput { return o } -// The stages composing an update run. Stages are run sequentially withing an UpdateRun. -func (o UpdateRunStatusResponseOutput) Stages() UpdateStageStatusResponseArrayOutput { - return o.ApplyT(func(v UpdateRunStatusResponse) []UpdateStageStatusResponse { return v.Stages }).(UpdateStageStatusResponseArrayOutput) -} - -// The status of the UpdateRun. -func (o UpdateRunStatusResponseOutput) Status() UpdateStatusResponseOutput { - return o.ApplyT(func(v UpdateRunStatusResponse) UpdateStatusResponse { return v.Status }).(UpdateStatusResponseOutput) +func (o TimeInWeekResponseArrayOutput) Index(i pulumi.IntInput) TimeInWeekResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeInWeekResponse { + return vs[0].([]TimeInWeekResponse)[vs[1].(int)] + }).(TimeInWeekResponseOutput) } -// Defines the update sequence of the clusters via stages and groups. -// -// Stages within a run are executed sequentially one after another. -// Groups within a stage are executed in parallel. -// Member clusters within a group are updated sequentially one after another. -// -// A valid strategy contains no duplicate groups within or across stages. -type UpdateRunStrategy struct { - // The list of stages that compose this update run. Min size: 1. - Stages []UpdateStage `pulumi:"stages"` +// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. +type TimeSpan struct { + // The end of a time span + End *string `pulumi:"end"` + // The start of a time span + Start *string `pulumi:"start"` } -// UpdateRunStrategyInput is an input type that accepts UpdateRunStrategyArgs and UpdateRunStrategyOutput values. -// You can construct a concrete instance of `UpdateRunStrategyInput` via: +// TimeSpanInput is an input type that accepts TimeSpanArgs and TimeSpanOutput values. +// You can construct a concrete instance of `TimeSpanInput` via: // -// UpdateRunStrategyArgs{...} -type UpdateRunStrategyInput interface { +// TimeSpanArgs{...} +type TimeSpanInput interface { pulumi.Input - ToUpdateRunStrategyOutput() UpdateRunStrategyOutput - ToUpdateRunStrategyOutputWithContext(context.Context) UpdateRunStrategyOutput -} - -// Defines the update sequence of the clusters via stages and groups. -// -// Stages within a run are executed sequentially one after another. -// Groups within a stage are executed in parallel. -// Member clusters within a group are updated sequentially one after another. -// -// A valid strategy contains no duplicate groups within or across stages. -type UpdateRunStrategyArgs struct { - // The list of stages that compose this update run. Min size: 1. - Stages UpdateStageArrayInput `pulumi:"stages"` -} - -func (UpdateRunStrategyArgs) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateRunStrategy)(nil)).Elem() + ToTimeSpanOutput() TimeSpanOutput + ToTimeSpanOutputWithContext(context.Context) TimeSpanOutput } -func (i UpdateRunStrategyArgs) ToUpdateRunStrategyOutput() UpdateRunStrategyOutput { - return i.ToUpdateRunStrategyOutputWithContext(context.Background()) +// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. +type TimeSpanArgs struct { + // The end of a time span + End pulumi.StringPtrInput `pulumi:"end"` + // The start of a time span + Start pulumi.StringPtrInput `pulumi:"start"` } -func (i UpdateRunStrategyArgs) ToUpdateRunStrategyOutputWithContext(ctx context.Context) UpdateRunStrategyOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateRunStrategyOutput) +func (TimeSpanArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TimeSpan)(nil)).Elem() } -func (i UpdateRunStrategyArgs) ToUpdateRunStrategyPtrOutput() UpdateRunStrategyPtrOutput { - return i.ToUpdateRunStrategyPtrOutputWithContext(context.Background()) +func (i TimeSpanArgs) ToTimeSpanOutput() TimeSpanOutput { + return i.ToTimeSpanOutputWithContext(context.Background()) } -func (i UpdateRunStrategyArgs) ToUpdateRunStrategyPtrOutputWithContext(ctx context.Context) UpdateRunStrategyPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateRunStrategyOutput).ToUpdateRunStrategyPtrOutputWithContext(ctx) +func (i TimeSpanArgs) ToTimeSpanOutputWithContext(ctx context.Context) TimeSpanOutput { + return pulumi.ToOutputWithContext(ctx, i).(TimeSpanOutput) } -// UpdateRunStrategyPtrInput is an input type that accepts UpdateRunStrategyArgs, UpdateRunStrategyPtr and UpdateRunStrategyPtrOutput values. -// You can construct a concrete instance of `UpdateRunStrategyPtrInput` via: -// -// UpdateRunStrategyArgs{...} -// -// or: +// TimeSpanArrayInput is an input type that accepts TimeSpanArray and TimeSpanArrayOutput values. +// You can construct a concrete instance of `TimeSpanArrayInput` via: // -// nil -type UpdateRunStrategyPtrInput interface { +// TimeSpanArray{ TimeSpanArgs{...} } +type TimeSpanArrayInput interface { pulumi.Input - ToUpdateRunStrategyPtrOutput() UpdateRunStrategyPtrOutput - ToUpdateRunStrategyPtrOutputWithContext(context.Context) UpdateRunStrategyPtrOutput -} - -type updateRunStrategyPtrType UpdateRunStrategyArgs - -func UpdateRunStrategyPtr(v *UpdateRunStrategyArgs) UpdateRunStrategyPtrInput { - return (*updateRunStrategyPtrType)(v) -} - -func (*updateRunStrategyPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**UpdateRunStrategy)(nil)).Elem() -} - -func (i *updateRunStrategyPtrType) ToUpdateRunStrategyPtrOutput() UpdateRunStrategyPtrOutput { - return i.ToUpdateRunStrategyPtrOutputWithContext(context.Background()) -} - -func (i *updateRunStrategyPtrType) ToUpdateRunStrategyPtrOutputWithContext(ctx context.Context) UpdateRunStrategyPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateRunStrategyPtrOutput) -} - -// Defines the update sequence of the clusters via stages and groups. -// -// Stages within a run are executed sequentially one after another. -// Groups within a stage are executed in parallel. -// Member clusters within a group are updated sequentially one after another. -// -// A valid strategy contains no duplicate groups within or across stages. -type UpdateRunStrategyOutput struct{ *pulumi.OutputState } - -func (UpdateRunStrategyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateRunStrategy)(nil)).Elem() -} - -func (o UpdateRunStrategyOutput) ToUpdateRunStrategyOutput() UpdateRunStrategyOutput { - return o + ToTimeSpanArrayOutput() TimeSpanArrayOutput + ToTimeSpanArrayOutputWithContext(context.Context) TimeSpanArrayOutput } -func (o UpdateRunStrategyOutput) ToUpdateRunStrategyOutputWithContext(ctx context.Context) UpdateRunStrategyOutput { - return o -} +type TimeSpanArray []TimeSpanInput -func (o UpdateRunStrategyOutput) ToUpdateRunStrategyPtrOutput() UpdateRunStrategyPtrOutput { - return o.ToUpdateRunStrategyPtrOutputWithContext(context.Background()) +func (TimeSpanArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TimeSpan)(nil)).Elem() } -func (o UpdateRunStrategyOutput) ToUpdateRunStrategyPtrOutputWithContext(ctx context.Context) UpdateRunStrategyPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v UpdateRunStrategy) *UpdateRunStrategy { - return &v - }).(UpdateRunStrategyPtrOutput) +func (i TimeSpanArray) ToTimeSpanArrayOutput() TimeSpanArrayOutput { + return i.ToTimeSpanArrayOutputWithContext(context.Background()) } -// The list of stages that compose this update run. Min size: 1. -func (o UpdateRunStrategyOutput) Stages() UpdateStageArrayOutput { - return o.ApplyT(func(v UpdateRunStrategy) []UpdateStage { return v.Stages }).(UpdateStageArrayOutput) +func (i TimeSpanArray) ToTimeSpanArrayOutputWithContext(ctx context.Context) TimeSpanArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TimeSpanArrayOutput) } -type UpdateRunStrategyPtrOutput struct{ *pulumi.OutputState } +// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. +type TimeSpanOutput struct{ *pulumi.OutputState } -func (UpdateRunStrategyPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**UpdateRunStrategy)(nil)).Elem() +func (TimeSpanOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TimeSpan)(nil)).Elem() } -func (o UpdateRunStrategyPtrOutput) ToUpdateRunStrategyPtrOutput() UpdateRunStrategyPtrOutput { +func (o TimeSpanOutput) ToTimeSpanOutput() TimeSpanOutput { return o } -func (o UpdateRunStrategyPtrOutput) ToUpdateRunStrategyPtrOutputWithContext(ctx context.Context) UpdateRunStrategyPtrOutput { +func (o TimeSpanOutput) ToTimeSpanOutputWithContext(ctx context.Context) TimeSpanOutput { return o } -func (o UpdateRunStrategyPtrOutput) Elem() UpdateRunStrategyOutput { - return o.ApplyT(func(v *UpdateRunStrategy) UpdateRunStrategy { - if v != nil { - return *v - } - var ret UpdateRunStrategy - return ret - }).(UpdateRunStrategyOutput) -} - -// The list of stages that compose this update run. Min size: 1. -func (o UpdateRunStrategyPtrOutput) Stages() UpdateStageArrayOutput { - return o.ApplyT(func(v *UpdateRunStrategy) []UpdateStage { - if v == nil { - return nil - } - return v.Stages - }).(UpdateStageArrayOutput) +// The end of a time span +func (o TimeSpanOutput) End() pulumi.StringPtrOutput { + return o.ApplyT(func(v TimeSpan) *string { return v.End }).(pulumi.StringPtrOutput) } -// Defines the update sequence of the clusters via stages and groups. -// -// Stages within a run are executed sequentially one after another. -// Groups within a stage are executed in parallel. -// Member clusters within a group are updated sequentially one after another. -// -// A valid strategy contains no duplicate groups within or across stages. -type UpdateRunStrategyResponse struct { - // The list of stages that compose this update run. Min size: 1. - Stages []UpdateStageResponse `pulumi:"stages"` +// The start of a time span +func (o TimeSpanOutput) Start() pulumi.StringPtrOutput { + return o.ApplyT(func(v TimeSpan) *string { return v.Start }).(pulumi.StringPtrOutput) } -// Defines the update sequence of the clusters via stages and groups. -// -// Stages within a run are executed sequentially one after another. -// Groups within a stage are executed in parallel. -// Member clusters within a group are updated sequentially one after another. -// -// A valid strategy contains no duplicate groups within or across stages. -type UpdateRunStrategyResponseOutput struct{ *pulumi.OutputState } +type TimeSpanArrayOutput struct{ *pulumi.OutputState } -func (UpdateRunStrategyResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateRunStrategyResponse)(nil)).Elem() +func (TimeSpanArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TimeSpan)(nil)).Elem() } -func (o UpdateRunStrategyResponseOutput) ToUpdateRunStrategyResponseOutput() UpdateRunStrategyResponseOutput { +func (o TimeSpanArrayOutput) ToTimeSpanArrayOutput() TimeSpanArrayOutput { return o } -func (o UpdateRunStrategyResponseOutput) ToUpdateRunStrategyResponseOutputWithContext(ctx context.Context) UpdateRunStrategyResponseOutput { +func (o TimeSpanArrayOutput) ToTimeSpanArrayOutputWithContext(ctx context.Context) TimeSpanArrayOutput { return o } -// The list of stages that compose this update run. Min size: 1. -func (o UpdateRunStrategyResponseOutput) Stages() UpdateStageResponseArrayOutput { - return o.ApplyT(func(v UpdateRunStrategyResponse) []UpdateStageResponse { return v.Stages }).(UpdateStageResponseArrayOutput) +func (o TimeSpanArrayOutput) Index(i pulumi.IntInput) TimeSpanOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeSpan { + return vs[0].([]TimeSpan)[vs[1].(int)] + }).(TimeSpanOutput) } -type UpdateRunStrategyResponsePtrOutput struct{ *pulumi.OutputState } - -func (UpdateRunStrategyResponsePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**UpdateRunStrategyResponse)(nil)).Elem() +// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. +type TimeSpanResponse struct { + // The end of a time span + End *string `pulumi:"end"` + // The start of a time span + Start *string `pulumi:"start"` } -func (o UpdateRunStrategyResponsePtrOutput) ToUpdateRunStrategyResponsePtrOutput() UpdateRunStrategyResponsePtrOutput { - return o +// For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z. +type TimeSpanResponseOutput struct{ *pulumi.OutputState } + +func (TimeSpanResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TimeSpanResponse)(nil)).Elem() } -func (o UpdateRunStrategyResponsePtrOutput) ToUpdateRunStrategyResponsePtrOutputWithContext(ctx context.Context) UpdateRunStrategyResponsePtrOutput { +func (o TimeSpanResponseOutput) ToTimeSpanResponseOutput() TimeSpanResponseOutput { return o } -func (o UpdateRunStrategyResponsePtrOutput) Elem() UpdateRunStrategyResponseOutput { - return o.ApplyT(func(v *UpdateRunStrategyResponse) UpdateRunStrategyResponse { - if v != nil { - return *v - } - var ret UpdateRunStrategyResponse - return ret - }).(UpdateRunStrategyResponseOutput) +func (o TimeSpanResponseOutput) ToTimeSpanResponseOutputWithContext(ctx context.Context) TimeSpanResponseOutput { + return o } -// The list of stages that compose this update run. Min size: 1. -func (o UpdateRunStrategyResponsePtrOutput) Stages() UpdateStageResponseArrayOutput { - return o.ApplyT(func(v *UpdateRunStrategyResponse) []UpdateStageResponse { - if v == nil { - return nil - } - return v.Stages - }).(UpdateStageResponseArrayOutput) +// The end of a time span +func (o TimeSpanResponseOutput) End() pulumi.StringPtrOutput { + return o.ApplyT(func(v TimeSpanResponse) *string { return v.End }).(pulumi.StringPtrOutput) } -// Defines a stage which contains the groups to update and the steps to take (e.g., wait for a time period) before starting the next stage. -type UpdateStage struct { - // The time in seconds to wait at the end of this stage before starting the next one. Defaults to 0 seconds if unspecified. - AfterStageWaitInSeconds *int `pulumi:"afterStageWaitInSeconds"` - // Defines the groups to be executed in parallel in this stage. Duplicate groups are not allowed. Min size: 1. - Groups []UpdateGroup `pulumi:"groups"` - // The name of the stage. Must be unique within the UpdateRun. - Name string `pulumi:"name"` +// The start of a time span +func (o TimeSpanResponseOutput) Start() pulumi.StringPtrOutput { + return o.ApplyT(func(v TimeSpanResponse) *string { return v.Start }).(pulumi.StringPtrOutput) } -// UpdateStageInput is an input type that accepts UpdateStageArgs and UpdateStageOutput values. -// You can construct a concrete instance of `UpdateStageInput` via: -// -// UpdateStageArgs{...} -type UpdateStageInput interface { - pulumi.Input +type TimeSpanResponseArrayOutput struct{ *pulumi.OutputState } - ToUpdateStageOutput() UpdateStageOutput - ToUpdateStageOutputWithContext(context.Context) UpdateStageOutput +func (TimeSpanResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TimeSpanResponse)(nil)).Elem() } -// Defines a stage which contains the groups to update and the steps to take (e.g., wait for a time period) before starting the next stage. -type UpdateStageArgs struct { - // The time in seconds to wait at the end of this stage before starting the next one. Defaults to 0 seconds if unspecified. - AfterStageWaitInSeconds pulumi.IntPtrInput `pulumi:"afterStageWaitInSeconds"` - // Defines the groups to be executed in parallel in this stage. Duplicate groups are not allowed. Min size: 1. - Groups UpdateGroupArrayInput `pulumi:"groups"` - // The name of the stage. Must be unique within the UpdateRun. - Name pulumi.StringInput `pulumi:"name"` +func (o TimeSpanResponseArrayOutput) ToTimeSpanResponseArrayOutput() TimeSpanResponseArrayOutput { + return o } -func (UpdateStageArgs) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateStage)(nil)).Elem() +func (o TimeSpanResponseArrayOutput) ToTimeSpanResponseArrayOutputWithContext(ctx context.Context) TimeSpanResponseArrayOutput { + return o } -func (i UpdateStageArgs) ToUpdateStageOutput() UpdateStageOutput { - return i.ToUpdateStageOutputWithContext(context.Background()) +func (o TimeSpanResponseArrayOutput) Index(i pulumi.IntInput) TimeSpanResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TimeSpanResponse { + return vs[0].([]TimeSpanResponse)[vs[1].(int)] + }).(TimeSpanResponseOutput) } -func (i UpdateStageArgs) ToUpdateStageOutputWithContext(ctx context.Context) UpdateStageOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateStageOutput) +// Settings for overrides when upgrading a cluster. +type UpgradeOverrideSettings struct { + // Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. + ForceUpgrade *bool `pulumi:"forceUpgrade"` + // Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. + Until *string `pulumi:"until"` } -// UpdateStageArrayInput is an input type that accepts UpdateStageArray and UpdateStageArrayOutput values. -// You can construct a concrete instance of `UpdateStageArrayInput` via: +// UpgradeOverrideSettingsInput is an input type that accepts UpgradeOverrideSettingsArgs and UpgradeOverrideSettingsOutput values. +// You can construct a concrete instance of `UpgradeOverrideSettingsInput` via: // -// UpdateStageArray{ UpdateStageArgs{...} } -type UpdateStageArrayInput interface { +// UpgradeOverrideSettingsArgs{...} +type UpgradeOverrideSettingsInput interface { pulumi.Input - ToUpdateStageArrayOutput() UpdateStageArrayOutput - ToUpdateStageArrayOutputWithContext(context.Context) UpdateStageArrayOutput -} - -type UpdateStageArray []UpdateStageInput - -func (UpdateStageArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateStage)(nil)).Elem() + ToUpgradeOverrideSettingsOutput() UpgradeOverrideSettingsOutput + ToUpgradeOverrideSettingsOutputWithContext(context.Context) UpgradeOverrideSettingsOutput } -func (i UpdateStageArray) ToUpdateStageArrayOutput() UpdateStageArrayOutput { - return i.ToUpdateStageArrayOutputWithContext(context.Background()) +// Settings for overrides when upgrading a cluster. +type UpgradeOverrideSettingsArgs struct { + // Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. + ForceUpgrade pulumi.BoolPtrInput `pulumi:"forceUpgrade"` + // Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. + Until pulumi.StringPtrInput `pulumi:"until"` } -func (i UpdateStageArray) ToUpdateStageArrayOutputWithContext(ctx context.Context) UpdateStageArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(UpdateStageArrayOutput) +func (UpgradeOverrideSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UpgradeOverrideSettings)(nil)).Elem() } -// Defines a stage which contains the groups to update and the steps to take (e.g., wait for a time period) before starting the next stage. -type UpdateStageOutput struct{ *pulumi.OutputState } - -func (UpdateStageOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateStage)(nil)).Elem() +func (i UpgradeOverrideSettingsArgs) ToUpgradeOverrideSettingsOutput() UpgradeOverrideSettingsOutput { + return i.ToUpgradeOverrideSettingsOutputWithContext(context.Background()) } -func (o UpdateStageOutput) ToUpdateStageOutput() UpdateStageOutput { - return o +func (i UpgradeOverrideSettingsArgs) ToUpgradeOverrideSettingsOutputWithContext(ctx context.Context) UpgradeOverrideSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(UpgradeOverrideSettingsOutput) } -func (o UpdateStageOutput) ToUpdateStageOutputWithContext(ctx context.Context) UpdateStageOutput { - return o +func (i UpgradeOverrideSettingsArgs) ToUpgradeOverrideSettingsPtrOutput() UpgradeOverrideSettingsPtrOutput { + return i.ToUpgradeOverrideSettingsPtrOutputWithContext(context.Background()) } -// The time in seconds to wait at the end of this stage before starting the next one. Defaults to 0 seconds if unspecified. -func (o UpdateStageOutput) AfterStageWaitInSeconds() pulumi.IntPtrOutput { - return o.ApplyT(func(v UpdateStage) *int { return v.AfterStageWaitInSeconds }).(pulumi.IntPtrOutput) +func (i UpgradeOverrideSettingsArgs) ToUpgradeOverrideSettingsPtrOutputWithContext(ctx context.Context) UpgradeOverrideSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UpgradeOverrideSettingsOutput).ToUpgradeOverrideSettingsPtrOutputWithContext(ctx) } -// Defines the groups to be executed in parallel in this stage. Duplicate groups are not allowed. Min size: 1. -func (o UpdateStageOutput) Groups() UpdateGroupArrayOutput { - return o.ApplyT(func(v UpdateStage) []UpdateGroup { return v.Groups }).(UpdateGroupArrayOutput) -} +// UpgradeOverrideSettingsPtrInput is an input type that accepts UpgradeOverrideSettingsArgs, UpgradeOverrideSettingsPtr and UpgradeOverrideSettingsPtrOutput values. +// You can construct a concrete instance of `UpgradeOverrideSettingsPtrInput` via: +// +// UpgradeOverrideSettingsArgs{...} +// +// or: +// +// nil +type UpgradeOverrideSettingsPtrInput interface { + pulumi.Input -// The name of the stage. Must be unique within the UpdateRun. -func (o UpdateStageOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v UpdateStage) string { return v.Name }).(pulumi.StringOutput) + ToUpgradeOverrideSettingsPtrOutput() UpgradeOverrideSettingsPtrOutput + ToUpgradeOverrideSettingsPtrOutputWithContext(context.Context) UpgradeOverrideSettingsPtrOutput } -type UpdateStageArrayOutput struct{ *pulumi.OutputState } +type upgradeOverrideSettingsPtrType UpgradeOverrideSettingsArgs -func (UpdateStageArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateStage)(nil)).Elem() +func UpgradeOverrideSettingsPtr(v *UpgradeOverrideSettingsArgs) UpgradeOverrideSettingsPtrInput { + return (*upgradeOverrideSettingsPtrType)(v) } -func (o UpdateStageArrayOutput) ToUpdateStageArrayOutput() UpdateStageArrayOutput { - return o -} - -func (o UpdateStageArrayOutput) ToUpdateStageArrayOutputWithContext(ctx context.Context) UpdateStageArrayOutput { - return o +func (*upgradeOverrideSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UpgradeOverrideSettings)(nil)).Elem() } -func (o UpdateStageArrayOutput) Index(i pulumi.IntInput) UpdateStageOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UpdateStage { - return vs[0].([]UpdateStage)[vs[1].(int)] - }).(UpdateStageOutput) +func (i *upgradeOverrideSettingsPtrType) ToUpgradeOverrideSettingsPtrOutput() UpgradeOverrideSettingsPtrOutput { + return i.ToUpgradeOverrideSettingsPtrOutputWithContext(context.Background()) } -// Defines a stage which contains the groups to update and the steps to take (e.g., wait for a time period) before starting the next stage. -type UpdateStageResponse struct { - // The time in seconds to wait at the end of this stage before starting the next one. Defaults to 0 seconds if unspecified. - AfterStageWaitInSeconds *int `pulumi:"afterStageWaitInSeconds"` - // Defines the groups to be executed in parallel in this stage. Duplicate groups are not allowed. Min size: 1. - Groups []UpdateGroupResponse `pulumi:"groups"` - // The name of the stage. Must be unique within the UpdateRun. - Name string `pulumi:"name"` +func (i *upgradeOverrideSettingsPtrType) ToUpgradeOverrideSettingsPtrOutputWithContext(ctx context.Context) UpgradeOverrideSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UpgradeOverrideSettingsPtrOutput) } -// Defines a stage which contains the groups to update and the steps to take (e.g., wait for a time period) before starting the next stage. -type UpdateStageResponseOutput struct{ *pulumi.OutputState } +// Settings for overrides when upgrading a cluster. +type UpgradeOverrideSettingsOutput struct{ *pulumi.OutputState } -func (UpdateStageResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateStageResponse)(nil)).Elem() +func (UpgradeOverrideSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UpgradeOverrideSettings)(nil)).Elem() } -func (o UpdateStageResponseOutput) ToUpdateStageResponseOutput() UpdateStageResponseOutput { +func (o UpgradeOverrideSettingsOutput) ToUpgradeOverrideSettingsOutput() UpgradeOverrideSettingsOutput { return o } -func (o UpdateStageResponseOutput) ToUpdateStageResponseOutputWithContext(ctx context.Context) UpdateStageResponseOutput { +func (o UpgradeOverrideSettingsOutput) ToUpgradeOverrideSettingsOutputWithContext(ctx context.Context) UpgradeOverrideSettingsOutput { return o } -// The time in seconds to wait at the end of this stage before starting the next one. Defaults to 0 seconds if unspecified. -func (o UpdateStageResponseOutput) AfterStageWaitInSeconds() pulumi.IntPtrOutput { - return o.ApplyT(func(v UpdateStageResponse) *int { return v.AfterStageWaitInSeconds }).(pulumi.IntPtrOutput) -} - -// Defines the groups to be executed in parallel in this stage. Duplicate groups are not allowed. Min size: 1. -func (o UpdateStageResponseOutput) Groups() UpdateGroupResponseArrayOutput { - return o.ApplyT(func(v UpdateStageResponse) []UpdateGroupResponse { return v.Groups }).(UpdateGroupResponseArrayOutput) -} - -// The name of the stage. Must be unique within the UpdateRun. -func (o UpdateStageResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v UpdateStageResponse) string { return v.Name }).(pulumi.StringOutput) -} - -type UpdateStageResponseArrayOutput struct{ *pulumi.OutputState } - -func (UpdateStageResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateStageResponse)(nil)).Elem() -} - -func (o UpdateStageResponseArrayOutput) ToUpdateStageResponseArrayOutput() UpdateStageResponseArrayOutput { - return o +func (o UpgradeOverrideSettingsOutput) ToUpgradeOverrideSettingsPtrOutput() UpgradeOverrideSettingsPtrOutput { + return o.ToUpgradeOverrideSettingsPtrOutputWithContext(context.Background()) } -func (o UpdateStageResponseArrayOutput) ToUpdateStageResponseArrayOutputWithContext(ctx context.Context) UpdateStageResponseArrayOutput { - return o +func (o UpgradeOverrideSettingsOutput) ToUpgradeOverrideSettingsPtrOutputWithContext(ctx context.Context) UpgradeOverrideSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UpgradeOverrideSettings) *UpgradeOverrideSettings { + return &v + }).(UpgradeOverrideSettingsPtrOutput) } -func (o UpdateStageResponseArrayOutput) Index(i pulumi.IntInput) UpdateStageResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UpdateStageResponse { - return vs[0].([]UpdateStageResponse)[vs[1].(int)] - }).(UpdateStageResponseOutput) +// Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. +func (o UpgradeOverrideSettingsOutput) ForceUpgrade() pulumi.BoolPtrOutput { + return o.ApplyT(func(v UpgradeOverrideSettings) *bool { return v.ForceUpgrade }).(pulumi.BoolPtrOutput) } -// The status of a UpdateStage. -type UpdateStageStatusResponse struct { - // The status of the wait period configured on the UpdateStage. - AfterStageWaitStatus WaitStatusResponse `pulumi:"afterStageWaitStatus"` - // The list of groups to be updated as part of this UpdateStage. - Groups []UpdateGroupStatusResponse `pulumi:"groups"` - // The name of the UpdateStage. - Name string `pulumi:"name"` - // The status of the UpdateStage. - Status UpdateStatusResponse `pulumi:"status"` +// Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. +func (o UpgradeOverrideSettingsOutput) Until() pulumi.StringPtrOutput { + return o.ApplyT(func(v UpgradeOverrideSettings) *string { return v.Until }).(pulumi.StringPtrOutput) } -// The status of a UpdateStage. -type UpdateStageStatusResponseOutput struct{ *pulumi.OutputState } +type UpgradeOverrideSettingsPtrOutput struct{ *pulumi.OutputState } -func (UpdateStageStatusResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateStageStatusResponse)(nil)).Elem() +func (UpgradeOverrideSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UpgradeOverrideSettings)(nil)).Elem() } -func (o UpdateStageStatusResponseOutput) ToUpdateStageStatusResponseOutput() UpdateStageStatusResponseOutput { +func (o UpgradeOverrideSettingsPtrOutput) ToUpgradeOverrideSettingsPtrOutput() UpgradeOverrideSettingsPtrOutput { return o } -func (o UpdateStageStatusResponseOutput) ToUpdateStageStatusResponseOutputWithContext(ctx context.Context) UpdateStageStatusResponseOutput { +func (o UpgradeOverrideSettingsPtrOutput) ToUpgradeOverrideSettingsPtrOutputWithContext(ctx context.Context) UpgradeOverrideSettingsPtrOutput { return o } -// The status of the wait period configured on the UpdateStage. -func (o UpdateStageStatusResponseOutput) AfterStageWaitStatus() WaitStatusResponseOutput { - return o.ApplyT(func(v UpdateStageStatusResponse) WaitStatusResponse { return v.AfterStageWaitStatus }).(WaitStatusResponseOutput) +func (o UpgradeOverrideSettingsPtrOutput) Elem() UpgradeOverrideSettingsOutput { + return o.ApplyT(func(v *UpgradeOverrideSettings) UpgradeOverrideSettings { + if v != nil { + return *v + } + var ret UpgradeOverrideSettings + return ret + }).(UpgradeOverrideSettingsOutput) } -// The list of groups to be updated as part of this UpdateStage. -func (o UpdateStageStatusResponseOutput) Groups() UpdateGroupStatusResponseArrayOutput { - return o.ApplyT(func(v UpdateStageStatusResponse) []UpdateGroupStatusResponse { return v.Groups }).(UpdateGroupStatusResponseArrayOutput) +// Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. +func (o UpgradeOverrideSettingsPtrOutput) ForceUpgrade() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *UpgradeOverrideSettings) *bool { + if v == nil { + return nil + } + return v.ForceUpgrade + }).(pulumi.BoolPtrOutput) } -// The name of the UpdateStage. -func (o UpdateStageStatusResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v UpdateStageStatusResponse) string { return v.Name }).(pulumi.StringOutput) +// Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. +func (o UpgradeOverrideSettingsPtrOutput) Until() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UpgradeOverrideSettings) *string { + if v == nil { + return nil + } + return v.Until + }).(pulumi.StringPtrOutput) } -// The status of the UpdateStage. -func (o UpdateStageStatusResponseOutput) Status() UpdateStatusResponseOutput { - return o.ApplyT(func(v UpdateStageStatusResponse) UpdateStatusResponse { return v.Status }).(UpdateStatusResponseOutput) +// Settings for overrides when upgrading a cluster. +type UpgradeOverrideSettingsResponse struct { + // Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. + ForceUpgrade *bool `pulumi:"forceUpgrade"` + // Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. + Until *string `pulumi:"until"` } -type UpdateStageStatusResponseArrayOutput struct{ *pulumi.OutputState } +// Settings for overrides when upgrading a cluster. +type UpgradeOverrideSettingsResponseOutput struct{ *pulumi.OutputState } -func (UpdateStageStatusResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UpdateStageStatusResponse)(nil)).Elem() +func (UpgradeOverrideSettingsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UpgradeOverrideSettingsResponse)(nil)).Elem() } -func (o UpdateStageStatusResponseArrayOutput) ToUpdateStageStatusResponseArrayOutput() UpdateStageStatusResponseArrayOutput { +func (o UpgradeOverrideSettingsResponseOutput) ToUpgradeOverrideSettingsResponseOutput() UpgradeOverrideSettingsResponseOutput { return o } -func (o UpdateStageStatusResponseArrayOutput) ToUpdateStageStatusResponseArrayOutputWithContext(ctx context.Context) UpdateStageStatusResponseArrayOutput { +func (o UpgradeOverrideSettingsResponseOutput) ToUpgradeOverrideSettingsResponseOutputWithContext(ctx context.Context) UpgradeOverrideSettingsResponseOutput { return o } -func (o UpdateStageStatusResponseArrayOutput) Index(i pulumi.IntInput) UpdateStageStatusResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UpdateStageStatusResponse { - return vs[0].([]UpdateStageStatusResponse)[vs[1].(int)] - }).(UpdateStageStatusResponseOutput) +// Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. +func (o UpgradeOverrideSettingsResponseOutput) ForceUpgrade() pulumi.BoolPtrOutput { + return o.ApplyT(func(v UpgradeOverrideSettingsResponse) *bool { return v.ForceUpgrade }).(pulumi.BoolPtrOutput) } -// The status for an operation or group of operations. -type UpdateStatusResponse struct { - // The time the operation or group was completed. - CompletedTime string `pulumi:"completedTime"` - // The error details when a failure is encountered. - Error ErrorDetailResponse `pulumi:"error"` - // The time the operation or group was started. - StartTime string `pulumi:"startTime"` - // The State of the operation or group. - State string `pulumi:"state"` +// Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. +func (o UpgradeOverrideSettingsResponseOutput) Until() pulumi.StringPtrOutput { + return o.ApplyT(func(v UpgradeOverrideSettingsResponse) *string { return v.Until }).(pulumi.StringPtrOutput) } -// The status for an operation or group of operations. -type UpdateStatusResponseOutput struct{ *pulumi.OutputState } +type UpgradeOverrideSettingsResponsePtrOutput struct{ *pulumi.OutputState } -func (UpdateStatusResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UpdateStatusResponse)(nil)).Elem() +func (UpgradeOverrideSettingsResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UpgradeOverrideSettingsResponse)(nil)).Elem() } -func (o UpdateStatusResponseOutput) ToUpdateStatusResponseOutput() UpdateStatusResponseOutput { +func (o UpgradeOverrideSettingsResponsePtrOutput) ToUpgradeOverrideSettingsResponsePtrOutput() UpgradeOverrideSettingsResponsePtrOutput { return o } -func (o UpdateStatusResponseOutput) ToUpdateStatusResponseOutputWithContext(ctx context.Context) UpdateStatusResponseOutput { +func (o UpgradeOverrideSettingsResponsePtrOutput) ToUpgradeOverrideSettingsResponsePtrOutputWithContext(ctx context.Context) UpgradeOverrideSettingsResponsePtrOutput { return o } -// The time the operation or group was completed. -func (o UpdateStatusResponseOutput) CompletedTime() pulumi.StringOutput { - return o.ApplyT(func(v UpdateStatusResponse) string { return v.CompletedTime }).(pulumi.StringOutput) -} - -// The error details when a failure is encountered. -func (o UpdateStatusResponseOutput) Error() ErrorDetailResponseOutput { - return o.ApplyT(func(v UpdateStatusResponse) ErrorDetailResponse { return v.Error }).(ErrorDetailResponseOutput) +func (o UpgradeOverrideSettingsResponsePtrOutput) Elem() UpgradeOverrideSettingsResponseOutput { + return o.ApplyT(func(v *UpgradeOverrideSettingsResponse) UpgradeOverrideSettingsResponse { + if v != nil { + return *v + } + var ret UpgradeOverrideSettingsResponse + return ret + }).(UpgradeOverrideSettingsResponseOutput) } -// The time the operation or group was started. -func (o UpdateStatusResponseOutput) StartTime() pulumi.StringOutput { - return o.ApplyT(func(v UpdateStatusResponse) string { return v.StartTime }).(pulumi.StringOutput) +// Whether to force upgrade the cluster. Note that this option instructs upgrade operation to bypass upgrade protections such as checking for deprecated API usage. Enable this option only with caution. +func (o UpgradeOverrideSettingsResponsePtrOutput) ForceUpgrade() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *UpgradeOverrideSettingsResponse) *bool { + if v == nil { + return nil + } + return v.ForceUpgrade + }).(pulumi.BoolPtrOutput) } -// The State of the operation or group. -func (o UpdateStatusResponseOutput) State() pulumi.StringOutput { - return o.ApplyT(func(v UpdateStatusResponse) string { return v.State }).(pulumi.StringOutput) +// Until when the overrides are effective. Note that this only matches the start time of an upgrade, and the effectiveness won't change once an upgrade starts even if the `until` expires as upgrade proceeds. This field is not set by default. It must be set for the overrides to take effect. +func (o UpgradeOverrideSettingsResponsePtrOutput) Until() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UpgradeOverrideSettingsResponse) *string { + if v == nil { + return nil + } + return v.Until + }).(pulumi.StringPtrOutput) } // Details about a user assigned identity. @@ -20801,6 +22761,60 @@ func (o UserAssignedIdentityResponseOutput) ResourceId() pulumi.StringPtrOutput return o.ApplyT(func(v UserAssignedIdentityResponse) *string { return v.ResourceId }).(pulumi.StringPtrOutput) } +type UserAssignedIdentityResponsePtrOutput struct{ *pulumi.OutputState } + +func (UserAssignedIdentityResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserAssignedIdentityResponse)(nil)).Elem() +} + +func (o UserAssignedIdentityResponsePtrOutput) ToUserAssignedIdentityResponsePtrOutput() UserAssignedIdentityResponsePtrOutput { + return o +} + +func (o UserAssignedIdentityResponsePtrOutput) ToUserAssignedIdentityResponsePtrOutputWithContext(ctx context.Context) UserAssignedIdentityResponsePtrOutput { + return o +} + +func (o UserAssignedIdentityResponsePtrOutput) Elem() UserAssignedIdentityResponseOutput { + return o.ApplyT(func(v *UserAssignedIdentityResponse) UserAssignedIdentityResponse { + if v != nil { + return *v + } + var ret UserAssignedIdentityResponse + return ret + }).(UserAssignedIdentityResponseOutput) +} + +// The client ID of the user assigned identity. +func (o UserAssignedIdentityResponsePtrOutput) ClientId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserAssignedIdentityResponse) *string { + if v == nil { + return nil + } + return v.ClientId + }).(pulumi.StringPtrOutput) +} + +// The object ID of the user assigned identity. +func (o UserAssignedIdentityResponsePtrOutput) ObjectId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserAssignedIdentityResponse) *string { + if v == nil { + return nil + } + return v.ObjectId + }).(pulumi.StringPtrOutput) +} + +// The resource ID of the user assigned identity. +func (o UserAssignedIdentityResponsePtrOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserAssignedIdentityResponse) *string { + if v == nil { + return nil + } + return v.ResourceId + }).(pulumi.StringPtrOutput) +} + type UserAssignedIdentityResponseMapOutput struct{ *pulumi.OutputState } func (UserAssignedIdentityResponseMapOutput) ElementType() reflect.Type { @@ -20821,37 +22835,240 @@ func (o UserAssignedIdentityResponseMapOutput) MapIndex(k pulumi.StringInput) Us }).(UserAssignedIdentityResponseOutput) } -// The status of the wait duration. -type WaitStatusResponse struct { - // The status of the wait duration. - Status UpdateStatusResponse `pulumi:"status"` - // The wait duration configured in seconds. - WaitDurationInSeconds int `pulumi:"waitDurationInSeconds"` +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +type WeeklySchedule struct { + // Specifies on which day of the week the maintenance occurs. + DayOfWeek string `pulumi:"dayOfWeek"` + // Specifies the number of weeks between each set of occurrences. + IntervalWeeks int `pulumi:"intervalWeeks"` +} + +// WeeklyScheduleInput is an input type that accepts WeeklyScheduleArgs and WeeklyScheduleOutput values. +// You can construct a concrete instance of `WeeklyScheduleInput` via: +// +// WeeklyScheduleArgs{...} +type WeeklyScheduleInput interface { + pulumi.Input + + ToWeeklyScheduleOutput() WeeklyScheduleOutput + ToWeeklyScheduleOutputWithContext(context.Context) WeeklyScheduleOutput +} + +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +type WeeklyScheduleArgs struct { + // Specifies on which day of the week the maintenance occurs. + DayOfWeek pulumi.StringInput `pulumi:"dayOfWeek"` + // Specifies the number of weeks between each set of occurrences. + IntervalWeeks pulumi.IntInput `pulumi:"intervalWeeks"` +} + +func (WeeklyScheduleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*WeeklySchedule)(nil)).Elem() +} + +func (i WeeklyScheduleArgs) ToWeeklyScheduleOutput() WeeklyScheduleOutput { + return i.ToWeeklyScheduleOutputWithContext(context.Background()) +} + +func (i WeeklyScheduleArgs) ToWeeklyScheduleOutputWithContext(ctx context.Context) WeeklyScheduleOutput { + return pulumi.ToOutputWithContext(ctx, i).(WeeklyScheduleOutput) +} + +func (i WeeklyScheduleArgs) ToWeeklySchedulePtrOutput() WeeklySchedulePtrOutput { + return i.ToWeeklySchedulePtrOutputWithContext(context.Background()) +} + +func (i WeeklyScheduleArgs) ToWeeklySchedulePtrOutputWithContext(ctx context.Context) WeeklySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(WeeklyScheduleOutput).ToWeeklySchedulePtrOutputWithContext(ctx) +} + +// WeeklySchedulePtrInput is an input type that accepts WeeklyScheduleArgs, WeeklySchedulePtr and WeeklySchedulePtrOutput values. +// You can construct a concrete instance of `WeeklySchedulePtrInput` via: +// +// WeeklyScheduleArgs{...} +// +// or: +// +// nil +type WeeklySchedulePtrInput interface { + pulumi.Input + + ToWeeklySchedulePtrOutput() WeeklySchedulePtrOutput + ToWeeklySchedulePtrOutputWithContext(context.Context) WeeklySchedulePtrOutput +} + +type weeklySchedulePtrType WeeklyScheduleArgs + +func WeeklySchedulePtr(v *WeeklyScheduleArgs) WeeklySchedulePtrInput { + return (*weeklySchedulePtrType)(v) +} + +func (*weeklySchedulePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**WeeklySchedule)(nil)).Elem() +} + +func (i *weeklySchedulePtrType) ToWeeklySchedulePtrOutput() WeeklySchedulePtrOutput { + return i.ToWeeklySchedulePtrOutputWithContext(context.Background()) +} + +func (i *weeklySchedulePtrType) ToWeeklySchedulePtrOutputWithContext(ctx context.Context) WeeklySchedulePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(WeeklySchedulePtrOutput) +} + +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +type WeeklyScheduleOutput struct{ *pulumi.OutputState } + +func (WeeklyScheduleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WeeklySchedule)(nil)).Elem() +} + +func (o WeeklyScheduleOutput) ToWeeklyScheduleOutput() WeeklyScheduleOutput { + return o +} + +func (o WeeklyScheduleOutput) ToWeeklyScheduleOutputWithContext(ctx context.Context) WeeklyScheduleOutput { + return o +} + +func (o WeeklyScheduleOutput) ToWeeklySchedulePtrOutput() WeeklySchedulePtrOutput { + return o.ToWeeklySchedulePtrOutputWithContext(context.Background()) +} + +func (o WeeklyScheduleOutput) ToWeeklySchedulePtrOutputWithContext(ctx context.Context) WeeklySchedulePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v WeeklySchedule) *WeeklySchedule { + return &v + }).(WeeklySchedulePtrOutput) +} + +// Specifies on which day of the week the maintenance occurs. +func (o WeeklyScheduleOutput) DayOfWeek() pulumi.StringOutput { + return o.ApplyT(func(v WeeklySchedule) string { return v.DayOfWeek }).(pulumi.StringOutput) +} + +// Specifies the number of weeks between each set of occurrences. +func (o WeeklyScheduleOutput) IntervalWeeks() pulumi.IntOutput { + return o.ApplyT(func(v WeeklySchedule) int { return v.IntervalWeeks }).(pulumi.IntOutput) +} + +type WeeklySchedulePtrOutput struct{ *pulumi.OutputState } + +func (WeeklySchedulePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**WeeklySchedule)(nil)).Elem() +} + +func (o WeeklySchedulePtrOutput) ToWeeklySchedulePtrOutput() WeeklySchedulePtrOutput { + return o +} + +func (o WeeklySchedulePtrOutput) ToWeeklySchedulePtrOutputWithContext(ctx context.Context) WeeklySchedulePtrOutput { + return o +} + +func (o WeeklySchedulePtrOutput) Elem() WeeklyScheduleOutput { + return o.ApplyT(func(v *WeeklySchedule) WeeklySchedule { + if v != nil { + return *v + } + var ret WeeklySchedule + return ret + }).(WeeklyScheduleOutput) +} + +// Specifies on which day of the week the maintenance occurs. +func (o WeeklySchedulePtrOutput) DayOfWeek() pulumi.StringPtrOutput { + return o.ApplyT(func(v *WeeklySchedule) *string { + if v == nil { + return nil + } + return &v.DayOfWeek + }).(pulumi.StringPtrOutput) +} + +// Specifies the number of weeks between each set of occurrences. +func (o WeeklySchedulePtrOutput) IntervalWeeks() pulumi.IntPtrOutput { + return o.ApplyT(func(v *WeeklySchedule) *int { + if v == nil { + return nil + } + return &v.IntervalWeeks + }).(pulumi.IntPtrOutput) +} + +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +type WeeklyScheduleResponse struct { + // Specifies on which day of the week the maintenance occurs. + DayOfWeek string `pulumi:"dayOfWeek"` + // Specifies the number of weeks between each set of occurrences. + IntervalWeeks int `pulumi:"intervalWeeks"` +} + +// For schedules like: 'recur every Monday' or 'recur every 3 weeks on Wednesday'. +type WeeklyScheduleResponseOutput struct{ *pulumi.OutputState } + +func (WeeklyScheduleResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WeeklyScheduleResponse)(nil)).Elem() +} + +func (o WeeklyScheduleResponseOutput) ToWeeklyScheduleResponseOutput() WeeklyScheduleResponseOutput { + return o +} + +func (o WeeklyScheduleResponseOutput) ToWeeklyScheduleResponseOutputWithContext(ctx context.Context) WeeklyScheduleResponseOutput { + return o +} + +// Specifies on which day of the week the maintenance occurs. +func (o WeeklyScheduleResponseOutput) DayOfWeek() pulumi.StringOutput { + return o.ApplyT(func(v WeeklyScheduleResponse) string { return v.DayOfWeek }).(pulumi.StringOutput) } -// The status of the wait duration. -type WaitStatusResponseOutput struct{ *pulumi.OutputState } +// Specifies the number of weeks between each set of occurrences. +func (o WeeklyScheduleResponseOutput) IntervalWeeks() pulumi.IntOutput { + return o.ApplyT(func(v WeeklyScheduleResponse) int { return v.IntervalWeeks }).(pulumi.IntOutput) +} + +type WeeklyScheduleResponsePtrOutput struct{ *pulumi.OutputState } -func (WaitStatusResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*WaitStatusResponse)(nil)).Elem() +func (WeeklyScheduleResponsePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**WeeklyScheduleResponse)(nil)).Elem() } -func (o WaitStatusResponseOutput) ToWaitStatusResponseOutput() WaitStatusResponseOutput { +func (o WeeklyScheduleResponsePtrOutput) ToWeeklyScheduleResponsePtrOutput() WeeklyScheduleResponsePtrOutput { return o } -func (o WaitStatusResponseOutput) ToWaitStatusResponseOutputWithContext(ctx context.Context) WaitStatusResponseOutput { +func (o WeeklyScheduleResponsePtrOutput) ToWeeklyScheduleResponsePtrOutputWithContext(ctx context.Context) WeeklyScheduleResponsePtrOutput { return o } -// The status of the wait duration. -func (o WaitStatusResponseOutput) Status() UpdateStatusResponseOutput { - return o.ApplyT(func(v WaitStatusResponse) UpdateStatusResponse { return v.Status }).(UpdateStatusResponseOutput) +func (o WeeklyScheduleResponsePtrOutput) Elem() WeeklyScheduleResponseOutput { + return o.ApplyT(func(v *WeeklyScheduleResponse) WeeklyScheduleResponse { + if v != nil { + return *v + } + var ret WeeklyScheduleResponse + return ret + }).(WeeklyScheduleResponseOutput) +} + +// Specifies on which day of the week the maintenance occurs. +func (o WeeklyScheduleResponsePtrOutput) DayOfWeek() pulumi.StringPtrOutput { + return o.ApplyT(func(v *WeeklyScheduleResponse) *string { + if v == nil { + return nil + } + return &v.DayOfWeek + }).(pulumi.StringPtrOutput) } -// The wait duration configured in seconds. -func (o WaitStatusResponseOutput) WaitDurationInSeconds() pulumi.IntOutput { - return o.ApplyT(func(v WaitStatusResponse) int { return v.WaitDurationInSeconds }).(pulumi.IntOutput) +// Specifies the number of weeks between each set of occurrences. +func (o WeeklyScheduleResponsePtrOutput) IntervalWeeks() pulumi.IntPtrOutput { + return o.ApplyT(func(v *WeeklyScheduleResponse) *int { + if v == nil { + return nil + } + return &v.IntervalWeeks + }).(pulumi.IntPtrOutput) } // Windows gMSA Profile in the managed cluster. @@ -21127,14 +23344,34 @@ func (o WindowsGmsaProfileResponsePtrOutput) RootDomainName() pulumi.StringPtrOu } func init() { + pulumi.RegisterOutputType(AbsoluteMonthlyScheduleOutput{}) + pulumi.RegisterOutputType(AbsoluteMonthlySchedulePtrOutput{}) + pulumi.RegisterOutputType(AbsoluteMonthlyScheduleResponseOutput{}) + pulumi.RegisterOutputType(AbsoluteMonthlyScheduleResponsePtrOutput{}) + pulumi.RegisterOutputType(AgentPoolNetworkProfileOutput{}) + pulumi.RegisterOutputType(AgentPoolNetworkProfilePtrOutput{}) + pulumi.RegisterOutputType(AgentPoolNetworkProfileResponseOutput{}) + pulumi.RegisterOutputType(AgentPoolNetworkProfileResponsePtrOutput{}) + pulumi.RegisterOutputType(AgentPoolSecurityProfileOutput{}) + pulumi.RegisterOutputType(AgentPoolSecurityProfilePtrOutput{}) + pulumi.RegisterOutputType(AgentPoolSecurityProfileResponseOutput{}) + pulumi.RegisterOutputType(AgentPoolSecurityProfileResponsePtrOutput{}) pulumi.RegisterOutputType(AgentPoolUpgradeSettingsOutput{}) pulumi.RegisterOutputType(AgentPoolUpgradeSettingsPtrOutput{}) pulumi.RegisterOutputType(AgentPoolUpgradeSettingsResponseOutput{}) pulumi.RegisterOutputType(AgentPoolUpgradeSettingsResponsePtrOutput{}) + pulumi.RegisterOutputType(AgentPoolWindowsProfileOutput{}) + pulumi.RegisterOutputType(AgentPoolWindowsProfilePtrOutput{}) + pulumi.RegisterOutputType(AgentPoolWindowsProfileResponseOutput{}) + pulumi.RegisterOutputType(AgentPoolWindowsProfileResponsePtrOutput{}) pulumi.RegisterOutputType(AzureKeyVaultKmsOutput{}) pulumi.RegisterOutputType(AzureKeyVaultKmsPtrOutput{}) pulumi.RegisterOutputType(AzureKeyVaultKmsResponseOutput{}) pulumi.RegisterOutputType(AzureKeyVaultKmsResponsePtrOutput{}) + pulumi.RegisterOutputType(ClusterUpgradeSettingsOutput{}) + pulumi.RegisterOutputType(ClusterUpgradeSettingsPtrOutput{}) + pulumi.RegisterOutputType(ClusterUpgradeSettingsResponseOutput{}) + pulumi.RegisterOutputType(ClusterUpgradeSettingsResponsePtrOutput{}) pulumi.RegisterOutputType(ContainerServiceLinuxProfileOutput{}) pulumi.RegisterOutputType(ContainerServiceLinuxProfilePtrOutput{}) pulumi.RegisterOutputType(ContainerServiceLinuxProfileResponseOutput{}) @@ -21157,36 +23394,62 @@ func init() { pulumi.RegisterOutputType(CreationDataResponsePtrOutput{}) pulumi.RegisterOutputType(CredentialResultResponseOutput{}) pulumi.RegisterOutputType(CredentialResultResponseArrayOutput{}) - pulumi.RegisterOutputType(ErrorAdditionalInfoResponseOutput{}) - pulumi.RegisterOutputType(ErrorAdditionalInfoResponseArrayOutput{}) - pulumi.RegisterOutputType(ErrorDetailResponseOutput{}) - pulumi.RegisterOutputType(ErrorDetailResponseArrayOutput{}) + pulumi.RegisterOutputType(DailyScheduleOutput{}) + pulumi.RegisterOutputType(DailySchedulePtrOutput{}) + pulumi.RegisterOutputType(DailyScheduleResponseOutput{}) + pulumi.RegisterOutputType(DailyScheduleResponsePtrOutput{}) + pulumi.RegisterOutputType(DateSpanOutput{}) + pulumi.RegisterOutputType(DateSpanArrayOutput{}) + pulumi.RegisterOutputType(DateSpanResponseOutput{}) + pulumi.RegisterOutputType(DateSpanResponseArrayOutput{}) + pulumi.RegisterOutputType(DelegatedResourceOutput{}) + pulumi.RegisterOutputType(DelegatedResourceMapOutput{}) + pulumi.RegisterOutputType(DelegatedResourceResponseOutput{}) + pulumi.RegisterOutputType(DelegatedResourceResponseMapOutput{}) pulumi.RegisterOutputType(ExtendedLocationOutput{}) pulumi.RegisterOutputType(ExtendedLocationPtrOutput{}) pulumi.RegisterOutputType(ExtendedLocationResponseOutput{}) pulumi.RegisterOutputType(ExtendedLocationResponsePtrOutput{}) - pulumi.RegisterOutputType(FleetCredentialResultResponseOutput{}) - pulumi.RegisterOutputType(FleetCredentialResultResponseArrayOutput{}) - pulumi.RegisterOutputType(FleetHubProfileOutput{}) - pulumi.RegisterOutputType(FleetHubProfilePtrOutput{}) - pulumi.RegisterOutputType(FleetHubProfileResponseOutput{}) - pulumi.RegisterOutputType(FleetHubProfileResponsePtrOutput{}) + pulumi.RegisterOutputType(IPTagOutput{}) + pulumi.RegisterOutputType(IPTagArrayOutput{}) + pulumi.RegisterOutputType(IPTagResponseOutput{}) + pulumi.RegisterOutputType(IPTagResponseArrayOutput{}) + pulumi.RegisterOutputType(IstioCertificateAuthorityOutput{}) + pulumi.RegisterOutputType(IstioCertificateAuthorityPtrOutput{}) + pulumi.RegisterOutputType(IstioCertificateAuthorityResponseOutput{}) + pulumi.RegisterOutputType(IstioCertificateAuthorityResponsePtrOutput{}) + pulumi.RegisterOutputType(IstioComponentsOutput{}) + pulumi.RegisterOutputType(IstioComponentsPtrOutput{}) + pulumi.RegisterOutputType(IstioComponentsResponseOutput{}) + pulumi.RegisterOutputType(IstioComponentsResponsePtrOutput{}) + pulumi.RegisterOutputType(IstioEgressGatewayOutput{}) + pulumi.RegisterOutputType(IstioEgressGatewayArrayOutput{}) + pulumi.RegisterOutputType(IstioEgressGatewayResponseOutput{}) + pulumi.RegisterOutputType(IstioEgressGatewayResponseArrayOutput{}) + pulumi.RegisterOutputType(IstioIngressGatewayOutput{}) + pulumi.RegisterOutputType(IstioIngressGatewayArrayOutput{}) + pulumi.RegisterOutputType(IstioIngressGatewayResponseOutput{}) + pulumi.RegisterOutputType(IstioIngressGatewayResponseArrayOutput{}) + pulumi.RegisterOutputType(IstioPluginCertificateAuthorityOutput{}) + pulumi.RegisterOutputType(IstioPluginCertificateAuthorityPtrOutput{}) + pulumi.RegisterOutputType(IstioPluginCertificateAuthorityResponseOutput{}) + pulumi.RegisterOutputType(IstioPluginCertificateAuthorityResponsePtrOutput{}) + pulumi.RegisterOutputType(IstioServiceMeshOutput{}) + pulumi.RegisterOutputType(IstioServiceMeshPtrOutput{}) + pulumi.RegisterOutputType(IstioServiceMeshResponseOutput{}) + pulumi.RegisterOutputType(IstioServiceMeshResponsePtrOutput{}) pulumi.RegisterOutputType(KubeletConfigOutput{}) pulumi.RegisterOutputType(KubeletConfigPtrOutput{}) pulumi.RegisterOutputType(KubeletConfigResponseOutput{}) pulumi.RegisterOutputType(KubeletConfigResponsePtrOutput{}) - pulumi.RegisterOutputType(LabelSelectorOutput{}) - pulumi.RegisterOutputType(LabelSelectorPtrOutput{}) - pulumi.RegisterOutputType(LabelSelectorRequirementOutput{}) - pulumi.RegisterOutputType(LabelSelectorRequirementArrayOutput{}) - pulumi.RegisterOutputType(LabelSelectorRequirementResponseOutput{}) - pulumi.RegisterOutputType(LabelSelectorRequirementResponseArrayOutput{}) - pulumi.RegisterOutputType(LabelSelectorResponseOutput{}) - pulumi.RegisterOutputType(LabelSelectorResponsePtrOutput{}) pulumi.RegisterOutputType(LinuxOSConfigOutput{}) pulumi.RegisterOutputType(LinuxOSConfigPtrOutput{}) pulumi.RegisterOutputType(LinuxOSConfigResponseOutput{}) pulumi.RegisterOutputType(LinuxOSConfigResponsePtrOutput{}) + pulumi.RegisterOutputType(MaintenanceWindowOutput{}) + pulumi.RegisterOutputType(MaintenanceWindowPtrOutput{}) + pulumi.RegisterOutputType(MaintenanceWindowResponseOutput{}) + pulumi.RegisterOutputType(MaintenanceWindowResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterAADProfileOutput{}) pulumi.RegisterOutputType(ManagedClusterAADProfilePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterAADProfileResponseOutput{}) @@ -21220,6 +23483,10 @@ func init() { pulumi.RegisterOutputType(ManagedClusterAzureMonitorProfileMetricsResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterAzureMonitorProfileResponseOutput{}) pulumi.RegisterOutputType(ManagedClusterAzureMonitorProfileResponsePtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterCostAnalysisOutput{}) + pulumi.RegisterOutputType(ManagedClusterCostAnalysisPtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterCostAnalysisResponseOutput{}) + pulumi.RegisterOutputType(ManagedClusterCostAnalysisResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterHTTPProxyConfigOutput{}) pulumi.RegisterOutputType(ManagedClusterHTTPProxyConfigPtrOutput{}) pulumi.RegisterOutputType(ManagedClusterHTTPProxyConfigResponseOutput{}) @@ -21230,6 +23497,14 @@ func init() { pulumi.RegisterOutputType(ManagedClusterIdentityResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterIdentityResponseUserAssignedIdentitiesOutput{}) pulumi.RegisterOutputType(ManagedClusterIdentityResponseUserAssignedIdentitiesMapOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfilePtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileResponseOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileResponsePtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileWebAppRoutingOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileWebAppRoutingPtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileWebAppRoutingResponseOutput{}) + pulumi.RegisterOutputType(ManagedClusterIngressProfileWebAppRoutingResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterLoadBalancerProfileOutput{}) pulumi.RegisterOutputType(ManagedClusterLoadBalancerProfilePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterLoadBalancerProfileManagedOutboundIPsOutput{}) @@ -21250,6 +23525,10 @@ func init() { pulumi.RegisterOutputType(ManagedClusterManagedOutboundIPProfilePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterManagedOutboundIPProfileResponseOutput{}) pulumi.RegisterOutputType(ManagedClusterManagedOutboundIPProfileResponsePtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterMetricsProfileOutput{}) + pulumi.RegisterOutputType(ManagedClusterMetricsProfilePtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterMetricsProfileResponseOutput{}) + pulumi.RegisterOutputType(ManagedClusterMetricsProfileResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterNATGatewayProfileOutput{}) pulumi.RegisterOutputType(ManagedClusterNATGatewayProfilePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterNATGatewayProfileResponseOutput{}) @@ -21278,7 +23557,6 @@ func init() { pulumi.RegisterOutputType(ManagedClusterPodIdentityResponseProvisioningInfoOutput{}) pulumi.RegisterOutputType(ManagedClusterPropertiesAutoScalerProfileOutput{}) pulumi.RegisterOutputType(ManagedClusterPropertiesAutoScalerProfilePtrOutput{}) - pulumi.RegisterOutputType(ManagedClusterPropertiesForSnapshotResponseOutput{}) pulumi.RegisterOutputType(ManagedClusterPropertiesResponseAutoScalerProfileOutput{}) pulumi.RegisterOutputType(ManagedClusterPropertiesResponseAutoScalerProfilePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterSKUOutput{}) @@ -21329,10 +23607,6 @@ func init() { pulumi.RegisterOutputType(ManagedClusterStorageProfileSnapshotControllerPtrOutput{}) pulumi.RegisterOutputType(ManagedClusterStorageProfileSnapshotControllerResponseOutput{}) pulumi.RegisterOutputType(ManagedClusterStorageProfileSnapshotControllerResponsePtrOutput{}) - pulumi.RegisterOutputType(ManagedClusterUpdateOutput{}) - pulumi.RegisterOutputType(ManagedClusterUpdateResponseOutput{}) - pulumi.RegisterOutputType(ManagedClusterUpgradeSpecOutput{}) - pulumi.RegisterOutputType(ManagedClusterUpgradeSpecResponseOutput{}) pulumi.RegisterOutputType(ManagedClusterWindowsProfileOutput{}) pulumi.RegisterOutputType(ManagedClusterWindowsProfilePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterWindowsProfileResponseOutput{}) @@ -21345,45 +23619,14 @@ func init() { pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileKedaResponsePtrOutput{}) pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileResponseOutput{}) pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileResponsePtrOutput{}) - pulumi.RegisterOutputType(MemberUpdateStatusResponseOutput{}) - pulumi.RegisterOutputType(MemberUpdateStatusResponseArrayOutput{}) - pulumi.RegisterOutputType(NetworkProfileOutput{}) - pulumi.RegisterOutputType(NetworkProfilePtrOutput{}) - pulumi.RegisterOutputType(NetworkProfileForSnapshotResponseOutput{}) - pulumi.RegisterOutputType(NetworkProfileResponseOutput{}) - pulumi.RegisterOutputType(NetworkProfileResponsePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftAPIPropertiesOutput{}) - pulumi.RegisterOutputType(OpenShiftAPIPropertiesPtrOutput{}) - pulumi.RegisterOutputType(OpenShiftAPIPropertiesResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftAPIPropertiesResponsePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAADIdentityProviderOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAADIdentityProviderPtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAADIdentityProviderResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAADIdentityProviderResponsePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAgentPoolProfileOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAgentPoolProfileArrayOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAgentPoolProfileResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAgentPoolProfileResponseArrayOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAuthProfileOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAuthProfilePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAuthProfileResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterAuthProfileResponsePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterIdentityProviderOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterIdentityProviderArrayOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterIdentityProviderResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterIdentityProviderResponseArrayOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMasterPoolProfileOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMasterPoolProfilePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMasterPoolProfileResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMasterPoolProfileResponsePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMonitorProfileOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMonitorProfilePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMonitorProfileResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftManagedClusterMonitorProfileResponsePtrOutput{}) - pulumi.RegisterOutputType(OpenShiftRouterProfileOutput{}) - pulumi.RegisterOutputType(OpenShiftRouterProfileArrayOutput{}) - pulumi.RegisterOutputType(OpenShiftRouterProfileResponseOutput{}) - pulumi.RegisterOutputType(OpenShiftRouterProfileResponseArrayOutput{}) + pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerOutput{}) + pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerPtrOutput{}) + pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponseOutput{}) + pulumi.RegisterOutputType(ManagedClusterWorkloadAutoScalerProfileVerticalPodAutoscalerResponsePtrOutput{}) + pulumi.RegisterOutputType(PortRangeOutput{}) + pulumi.RegisterOutputType(PortRangeArrayOutput{}) + pulumi.RegisterOutputType(PortRangeResponseOutput{}) + pulumi.RegisterOutputType(PortRangeResponseArrayOutput{}) pulumi.RegisterOutputType(PowerStateOutput{}) pulumi.RegisterOutputType(PowerStatePtrOutput{}) pulumi.RegisterOutputType(PowerStateResponseOutput{}) @@ -21398,14 +23641,22 @@ func init() { pulumi.RegisterOutputType(PrivateLinkResourceResponseArrayOutput{}) pulumi.RegisterOutputType(PrivateLinkServiceConnectionStateOutput{}) pulumi.RegisterOutputType(PrivateLinkServiceConnectionStateResponseOutput{}) - pulumi.RegisterOutputType(PurchasePlanOutput{}) - pulumi.RegisterOutputType(PurchasePlanPtrOutput{}) - pulumi.RegisterOutputType(PurchasePlanResponseOutput{}) - pulumi.RegisterOutputType(PurchasePlanResponsePtrOutput{}) + pulumi.RegisterOutputType(RelativeMonthlyScheduleOutput{}) + pulumi.RegisterOutputType(RelativeMonthlySchedulePtrOutput{}) + pulumi.RegisterOutputType(RelativeMonthlyScheduleResponseOutput{}) + pulumi.RegisterOutputType(RelativeMonthlyScheduleResponsePtrOutput{}) pulumi.RegisterOutputType(ResourceReferenceOutput{}) pulumi.RegisterOutputType(ResourceReferenceArrayOutput{}) pulumi.RegisterOutputType(ResourceReferenceResponseOutput{}) pulumi.RegisterOutputType(ResourceReferenceResponseArrayOutput{}) + pulumi.RegisterOutputType(ScheduleOutput{}) + pulumi.RegisterOutputType(SchedulePtrOutput{}) + pulumi.RegisterOutputType(ScheduleResponseOutput{}) + pulumi.RegisterOutputType(ScheduleResponsePtrOutput{}) + pulumi.RegisterOutputType(ServiceMeshProfileOutput{}) + pulumi.RegisterOutputType(ServiceMeshProfilePtrOutput{}) + pulumi.RegisterOutputType(ServiceMeshProfileResponseOutput{}) + pulumi.RegisterOutputType(ServiceMeshProfileResponsePtrOutput{}) pulumi.RegisterOutputType(SysctlConfigOutput{}) pulumi.RegisterOutputType(SysctlConfigPtrOutput{}) pulumi.RegisterOutputType(SysctlConfigResponseOutput{}) @@ -21419,29 +23670,19 @@ func init() { pulumi.RegisterOutputType(TimeSpanArrayOutput{}) pulumi.RegisterOutputType(TimeSpanResponseOutput{}) pulumi.RegisterOutputType(TimeSpanResponseArrayOutput{}) - pulumi.RegisterOutputType(UpdateGroupOutput{}) - pulumi.RegisterOutputType(UpdateGroupArrayOutput{}) - pulumi.RegisterOutputType(UpdateGroupResponseOutput{}) - pulumi.RegisterOutputType(UpdateGroupResponseArrayOutput{}) - pulumi.RegisterOutputType(UpdateGroupStatusResponseOutput{}) - pulumi.RegisterOutputType(UpdateGroupStatusResponseArrayOutput{}) - pulumi.RegisterOutputType(UpdateRunStatusResponseOutput{}) - pulumi.RegisterOutputType(UpdateRunStrategyOutput{}) - pulumi.RegisterOutputType(UpdateRunStrategyPtrOutput{}) - pulumi.RegisterOutputType(UpdateRunStrategyResponseOutput{}) - pulumi.RegisterOutputType(UpdateRunStrategyResponsePtrOutput{}) - pulumi.RegisterOutputType(UpdateStageOutput{}) - pulumi.RegisterOutputType(UpdateStageArrayOutput{}) - pulumi.RegisterOutputType(UpdateStageResponseOutput{}) - pulumi.RegisterOutputType(UpdateStageResponseArrayOutput{}) - pulumi.RegisterOutputType(UpdateStageStatusResponseOutput{}) - pulumi.RegisterOutputType(UpdateStageStatusResponseArrayOutput{}) - pulumi.RegisterOutputType(UpdateStatusResponseOutput{}) + pulumi.RegisterOutputType(UpgradeOverrideSettingsOutput{}) + pulumi.RegisterOutputType(UpgradeOverrideSettingsPtrOutput{}) + pulumi.RegisterOutputType(UpgradeOverrideSettingsResponseOutput{}) + pulumi.RegisterOutputType(UpgradeOverrideSettingsResponsePtrOutput{}) pulumi.RegisterOutputType(UserAssignedIdentityOutput{}) pulumi.RegisterOutputType(UserAssignedIdentityMapOutput{}) pulumi.RegisterOutputType(UserAssignedIdentityResponseOutput{}) + pulumi.RegisterOutputType(UserAssignedIdentityResponsePtrOutput{}) pulumi.RegisterOutputType(UserAssignedIdentityResponseMapOutput{}) - pulumi.RegisterOutputType(WaitStatusResponseOutput{}) + pulumi.RegisterOutputType(WeeklyScheduleOutput{}) + pulumi.RegisterOutputType(WeeklySchedulePtrOutput{}) + pulumi.RegisterOutputType(WeeklyScheduleResponseOutput{}) + pulumi.RegisterOutputType(WeeklyScheduleResponsePtrOutput{}) pulumi.RegisterOutputType(WindowsGmsaProfileOutput{}) pulumi.RegisterOutputType(WindowsGmsaProfilePtrOutput{}) pulumi.RegisterOutputType(WindowsGmsaProfileResponseOutput{}) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/snapshot.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/snapshot.go similarity index 94% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/snapshot.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/snapshot.go index d5aee5371..9b2b63294 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/snapshot.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/snapshot.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,9 +13,6 @@ import ( ) // A node pool snapshot resource. -// Azure REST API version: 2023-04-01. Prior API version in Azure Native 1.x: 2021-08-01. -// -// Other available API versions: 2023-05-02-preview, 2023-06-01, 2023-06-02-preview, 2023-07-01, 2023-07-02-preview, 2023-08-01, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. type Snapshot struct { pulumi.CustomResourceState @@ -58,6 +55,9 @@ func NewSnapshot(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'ResourceGroupName'") } aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:containerservice:Snapshot"), + }, { Type: pulumi.String("azure-native:containerservice/v20210801:Snapshot"), }, @@ -220,11 +220,20 @@ func NewSnapshot(ctx *pulumi.Context, { Type: pulumi.String("azure-native:containerservice/v20240502preview:Snapshot"), }, + { + Type: pulumi.String("azure-native:containerservice/v20240602preview:Snapshot"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240701:Snapshot"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240702preview:Snapshot"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) var resource Snapshot - err := ctx.RegisterResource("azure-native:containerservice:Snapshot", name, args, &resource, opts...) + err := ctx.RegisterResource("azure-native:containerservice/v20240801:Snapshot", name, args, &resource, opts...) if err != nil { return nil, err } @@ -236,7 +245,7 @@ func NewSnapshot(ctx *pulumi.Context, func GetSnapshot(ctx *pulumi.Context, name string, id pulumi.IDInput, state *SnapshotState, opts ...pulumi.ResourceOption) (*Snapshot, error) { var resource Snapshot - err := ctx.ReadResource("azure-native:containerservice:Snapshot", name, id, state, &resource, opts...) + err := ctx.ReadResource("azure-native:containerservice/v20240801:Snapshot", name, id, state, &resource, opts...) if err != nil { return nil, err } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/trustedAccessRoleBinding.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/trustedAccessRoleBinding.go similarity index 94% rename from vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/trustedAccessRoleBinding.go rename to vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/trustedAccessRoleBinding.go index d8b97c00b..5bc0cf4ba 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/trustedAccessRoleBinding.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801/trustedAccessRoleBinding.go @@ -1,7 +1,7 @@ // Code generated by the Pulumi SDK Generator DO NOT EDIT. // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** -package containerservice +package v20240801 import ( "context" @@ -13,9 +13,6 @@ import ( ) // Defines binding between a resource and role -// Azure REST API version: 2023-05-02-preview. Prior API version in Azure Native 1.x: 2022-04-02-preview. -// -// Other available API versions: 2023-06-02-preview, 2023-07-02-preview, 2023-08-02-preview, 2023-09-01, 2023-09-02-preview, 2023-10-01, 2023-10-02-preview, 2023-11-01, 2023-11-02-preview, 2024-01-01, 2024-01-02-preview, 2024-02-01, 2024-02-02-preview, 2024-03-02-preview, 2024-04-02-preview, 2024-05-01, 2024-05-02-preview. type TrustedAccessRoleBinding struct { pulumi.CustomResourceState @@ -53,6 +50,9 @@ func NewTrustedAccessRoleBinding(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'SourceResourceId'") } aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:containerservice:TrustedAccessRoleBinding"), + }, { Type: pulumi.String("azure-native:containerservice/v20220402preview:TrustedAccessRoleBinding"), }, @@ -146,11 +146,20 @@ func NewTrustedAccessRoleBinding(ctx *pulumi.Context, { Type: pulumi.String("azure-native:containerservice/v20240502preview:TrustedAccessRoleBinding"), }, + { + Type: pulumi.String("azure-native:containerservice/v20240602preview:TrustedAccessRoleBinding"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240701:TrustedAccessRoleBinding"), + }, + { + Type: pulumi.String("azure-native:containerservice/v20240702preview:TrustedAccessRoleBinding"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) var resource TrustedAccessRoleBinding - err := ctx.RegisterResource("azure-native:containerservice:TrustedAccessRoleBinding", name, args, &resource, opts...) + err := ctx.RegisterResource("azure-native:containerservice/v20240801:TrustedAccessRoleBinding", name, args, &resource, opts...) if err != nil { return nil, err } @@ -162,7 +171,7 @@ func NewTrustedAccessRoleBinding(ctx *pulumi.Context, func GetTrustedAccessRoleBinding(ctx *pulumi.Context, name string, id pulumi.IDInput, state *TrustedAccessRoleBindingState, opts ...pulumi.ResourceOption) (*TrustedAccessRoleBinding, error) { var resource TrustedAccessRoleBinding - err := ctx.ReadResource("azure-native:containerservice:TrustedAccessRoleBinding", name, id, state, &resource, opts...) + err := ctx.ReadResource("azure-native:containerservice/v20240801:TrustedAccessRoleBinding", name, id, state, &resource, opts...) if err != nil { return nil, err } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRule.go index 6acc15651..84abf111f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRule.go @@ -15,7 +15,7 @@ import ( // Network admin rule. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. type AdminRule struct { pulumi.CustomResourceState @@ -135,6 +135,15 @@ func NewAdminRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:AdminRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:AdminRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240101preview:AdminRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:AdminRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRuleCollection.go index c8b6a16c7..05ab743c2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRuleCollection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/adminRuleCollection.go @@ -15,7 +15,7 @@ import ( // Defines the admin rule collection. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. type AdminRuleCollection struct { pulumi.CustomResourceState @@ -102,6 +102,15 @@ func NewAdminRuleCollection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:AdminRuleCollection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:AdminRuleCollection"), + }, + { + Type: pulumi.String("azure-native:network/v20240101preview:AdminRuleCollection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:AdminRuleCollection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGateway.go index 9dd4e4ede..01a61c5fb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGateway.go @@ -15,7 +15,7 @@ import ( // Application gateway resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ApplicationGateway struct { pulumi.CustomResourceState @@ -271,6 +271,12 @@ func NewApplicationGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ApplicationGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ApplicationGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ApplicationGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGatewayPrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGatewayPrivateEndpointConnection.go index 0fec8164f..0fe023f89 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGatewayPrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationGatewayPrivateEndpointConnection.go @@ -15,7 +15,7 @@ import ( // Private Endpoint connection on an application gateway. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ApplicationGatewayPrivateEndpointConnection struct { pulumi.CustomResourceState @@ -109,6 +109,12 @@ func NewApplicationGatewayPrivateEndpointConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ApplicationGatewayPrivateEndpointConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ApplicationGatewayPrivateEndpointConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ApplicationGatewayPrivateEndpointConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationSecurityGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationSecurityGroup.go index 12e1d8a15..3b075bc10 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationSecurityGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/applicationSecurityGroup.go @@ -15,7 +15,7 @@ import ( // An application security group in a resource group. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ApplicationSecurityGroup struct { pulumi.CustomResourceState @@ -172,6 +172,12 @@ func NewApplicationSecurityGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ApplicationSecurityGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ApplicationSecurityGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ApplicationSecurityGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/azureFirewall.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/azureFirewall.go index b9cf80adc..c07e2a2af 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/azureFirewall.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/azureFirewall.go @@ -15,7 +15,7 @@ import ( // Azure Firewall resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type AzureFirewall struct { pulumi.CustomResourceState @@ -181,6 +181,12 @@ func NewAzureFirewall(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:AzureFirewall"), }, + { + Type: pulumi.String("azure-native:network/v20240101:AzureFirewall"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:AzureFirewall"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/bastionHost.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/bastionHost.go index a7c51dfe2..ba3bb4fc6 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/bastionHost.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/bastionHost.go @@ -15,7 +15,7 @@ import ( // Bastion Host resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type BastionHost struct { pulumi.CustomResourceState @@ -169,6 +169,12 @@ func NewBastionHost(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:BastionHost"), }, + { + Type: pulumi.String("azure-native:network/v20240101:BastionHost"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:BastionHost"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/configurationPolicyGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/configurationPolicyGroup.go index 75d7f69bb..1072cab71 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/configurationPolicyGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/configurationPolicyGroup.go @@ -15,7 +15,7 @@ import ( // VpnServerConfigurationPolicyGroup Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-01-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ConfigurationPolicyGroup struct { pulumi.CustomResourceState @@ -87,6 +87,12 @@ func NewConfigurationPolicyGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ConfigurationPolicyGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ConfigurationPolicyGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ConfigurationPolicyGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectionMonitor.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectionMonitor.go index 01e483876..681b9d6c3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectionMonitor.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectionMonitor.go @@ -15,7 +15,7 @@ import ( // Information about the connection monitor. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-09-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-09-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ConnectionMonitor struct { pulumi.CustomResourceState @@ -200,6 +200,12 @@ func NewConnectionMonitor(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ConnectionMonitor"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ConnectionMonitor"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ConnectionMonitor"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectivityConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectivityConfiguration.go index 94245c5ff..15f57aa20 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectivityConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/connectivityConfiguration.go @@ -15,7 +15,7 @@ import ( // The network manager connectivity configuration resource // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ConnectivityConfiguration struct { pulumi.CustomResourceState @@ -110,6 +110,12 @@ func NewConnectivityConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ConnectivityConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ConnectivityConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ConnectivityConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/customIPPrefix.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/customIPPrefix.go index 5e5647058..198d4098a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/customIPPrefix.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/customIPPrefix.go @@ -15,7 +15,7 @@ import ( // Custom IP prefix resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type CustomIPPrefix struct { pulumi.CustomResourceState @@ -133,6 +133,12 @@ func NewCustomIPPrefix(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:CustomIPPrefix"), }, + { + Type: pulumi.String("azure-native:network/v20240101:CustomIPPrefix"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:CustomIPPrefix"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosCustomPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosCustomPolicy.go index df3feef27..989e7ff5b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosCustomPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosCustomPolicy.go @@ -15,7 +15,7 @@ import ( // A DDoS custom policy in a resource group. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2022-01-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2022-01-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type DdosCustomPolicy struct { pulumi.CustomResourceState @@ -142,6 +142,12 @@ func NewDdosCustomPolicy(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:DdosCustomPolicy"), }, + { + Type: pulumi.String("azure-native:network/v20240101:DdosCustomPolicy"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:DdosCustomPolicy"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosProtectionPlan.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosProtectionPlan.go index 697246505..0ad0b02e5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosProtectionPlan.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ddosProtectionPlan.go @@ -15,7 +15,7 @@ import ( // A DDoS protection plan in a resource group. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-02-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-02-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type DdosProtectionPlan struct { pulumi.CustomResourceState @@ -164,6 +164,12 @@ func NewDdosProtectionPlan(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:DdosProtectionPlan"), }, + { + Type: pulumi.String("azure-native:network/v20240101:DdosProtectionPlan"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:DdosProtectionPlan"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultAdminRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultAdminRule.go index abd308dd3..99ae827ac 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultAdminRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultAdminRule.go @@ -123,6 +123,15 @@ func NewDefaultAdminRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:DefaultAdminRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:DefaultAdminRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240101preview:DefaultAdminRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:DefaultAdminRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultUserRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultUserRule.go index c5ea56256..de1e5ea8e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultUserRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/defaultUserRule.go @@ -84,6 +84,9 @@ func NewDefaultUserRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220401preview:DefaultUserRule"), }, + { + Type: pulumi.String("azure-native:network/v20240301:DefaultUserRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsForwardingRuleset.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsForwardingRuleset.go index 560a607d8..0f99f6394 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsForwardingRuleset.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsForwardingRuleset.go @@ -15,7 +15,7 @@ import ( // Describes a DNS forwarding ruleset. // Azure REST API version: 2022-07-01. Prior API version in Azure Native 1.x: 2020-04-01-preview. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. type DnsForwardingRuleset struct { pulumi.CustomResourceState @@ -59,6 +59,9 @@ func NewDnsForwardingRuleset(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220701:DnsForwardingRuleset"), }, + { + Type: pulumi.String("azure-native:network/v20230701preview:DnsForwardingRuleset"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolver.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolver.go index 3a9842c82..9ef43881e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolver.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolver.go @@ -14,6 +14,8 @@ import ( // Describes a DNS resolver. // Azure REST API version: 2022-07-01. Prior API version in Azure Native 1.x: 2020-04-01-preview. +// +// Other available API versions: 2023-07-01-preview. type DnsResolver struct { pulumi.CustomResourceState @@ -59,6 +61,9 @@ func NewDnsResolver(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220701:DnsResolver"), }, + { + Type: pulumi.String("azure-native:network/v20230701preview:DnsResolver"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverDomainList.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverDomainList.go new file mode 100644 index 000000000..e6df5efb7 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverDomainList.go @@ -0,0 +1,202 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Describes a DNS resolver domain list. +// Azure REST API version: 2023-07-01-preview. +type DnsResolverDomainList struct { + pulumi.CustomResourceState + + // The domains in the domain list. + Domains pulumi.StringArrayOutput `pulumi:"domains"` + // ETag of the DNS resolver domain list. + Etag pulumi.StringOutput `pulumi:"etag"` + // The geo-location where the resource lives + Location pulumi.StringOutput `pulumi:"location"` + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // The current provisioning state of the DNS resolver domain list. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // The resourceGuid property of the DNS resolver domain list resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewDnsResolverDomainList registers a new resource with the given unique name, arguments, and options. +func NewDnsResolverDomainList(ctx *pulumi.Context, + name string, args *DnsResolverDomainListArgs, opts ...pulumi.ResourceOption) (*DnsResolverDomainList, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Domains == nil { + return nil, errors.New("invalid value for required argument 'Domains'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20230701preview:DnsResolverDomainList"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource DnsResolverDomainList + err := ctx.RegisterResource("azure-native:network:DnsResolverDomainList", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDnsResolverDomainList gets an existing DnsResolverDomainList resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDnsResolverDomainList(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DnsResolverDomainListState, opts ...pulumi.ResourceOption) (*DnsResolverDomainList, error) { + var resource DnsResolverDomainList + err := ctx.ReadResource("azure-native:network:DnsResolverDomainList", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DnsResolverDomainList resources. +type dnsResolverDomainListState struct { +} + +type DnsResolverDomainListState struct { +} + +func (DnsResolverDomainListState) ElementType() reflect.Type { + return reflect.TypeOf((*dnsResolverDomainListState)(nil)).Elem() +} + +type dnsResolverDomainListArgs struct { + // The name of the DNS resolver domain list. + DnsResolverDomainListName *string `pulumi:"dnsResolverDomainListName"` + // The domains in the domain list. + Domains []string `pulumi:"domains"` + // The geo-location where the resource lives + Location *string `pulumi:"location"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a DnsResolverDomainList resource. +type DnsResolverDomainListArgs struct { + // The name of the DNS resolver domain list. + DnsResolverDomainListName pulumi.StringPtrInput + // The domains in the domain list. + Domains pulumi.StringArrayInput + // The geo-location where the resource lives + Location pulumi.StringPtrInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // Resource tags. + Tags pulumi.StringMapInput +} + +func (DnsResolverDomainListArgs) ElementType() reflect.Type { + return reflect.TypeOf((*dnsResolverDomainListArgs)(nil)).Elem() +} + +type DnsResolverDomainListInput interface { + pulumi.Input + + ToDnsResolverDomainListOutput() DnsResolverDomainListOutput + ToDnsResolverDomainListOutputWithContext(ctx context.Context) DnsResolverDomainListOutput +} + +func (*DnsResolverDomainList) ElementType() reflect.Type { + return reflect.TypeOf((**DnsResolverDomainList)(nil)).Elem() +} + +func (i *DnsResolverDomainList) ToDnsResolverDomainListOutput() DnsResolverDomainListOutput { + return i.ToDnsResolverDomainListOutputWithContext(context.Background()) +} + +func (i *DnsResolverDomainList) ToDnsResolverDomainListOutputWithContext(ctx context.Context) DnsResolverDomainListOutput { + return pulumi.ToOutputWithContext(ctx, i).(DnsResolverDomainListOutput) +} + +type DnsResolverDomainListOutput struct{ *pulumi.OutputState } + +func (DnsResolverDomainListOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DnsResolverDomainList)(nil)).Elem() +} + +func (o DnsResolverDomainListOutput) ToDnsResolverDomainListOutput() DnsResolverDomainListOutput { + return o +} + +func (o DnsResolverDomainListOutput) ToDnsResolverDomainListOutputWithContext(ctx context.Context) DnsResolverDomainListOutput { + return o +} + +// The domains in the domain list. +func (o DnsResolverDomainListOutput) Domains() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringArrayOutput { return v.Domains }).(pulumi.StringArrayOutput) +} + +// ETag of the DNS resolver domain list. +func (o DnsResolverDomainListOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o DnsResolverDomainListOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o DnsResolverDomainListOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The current provisioning state of the DNS resolver domain list. This is a read-only property and any attempt to set this value will be ignored. +func (o DnsResolverDomainListOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The resourceGuid property of the DNS resolver domain list resource. +func (o DnsResolverDomainListOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o DnsResolverDomainListOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *DnsResolverDomainList) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o DnsResolverDomainListOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o DnsResolverDomainListOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverDomainList) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(DnsResolverDomainListOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicy.go new file mode 100644 index 000000000..6c07c7384 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicy.go @@ -0,0 +1,188 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Describes a DNS resolver policy. +// Azure REST API version: 2023-07-01-preview. +type DnsResolverPolicy struct { + pulumi.CustomResourceState + + // ETag of the DNS resolver policy. + Etag pulumi.StringOutput `pulumi:"etag"` + // The geo-location where the resource lives + Location pulumi.StringOutput `pulumi:"location"` + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // The current provisioning state of the DNS resolver policy. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // The resourceGuid property of the DNS resolver policy resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewDnsResolverPolicy registers a new resource with the given unique name, arguments, and options. +func NewDnsResolverPolicy(ctx *pulumi.Context, + name string, args *DnsResolverPolicyArgs, opts ...pulumi.ResourceOption) (*DnsResolverPolicy, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20230701preview:DnsResolverPolicy"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource DnsResolverPolicy + err := ctx.RegisterResource("azure-native:network:DnsResolverPolicy", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDnsResolverPolicy gets an existing DnsResolverPolicy resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDnsResolverPolicy(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DnsResolverPolicyState, opts ...pulumi.ResourceOption) (*DnsResolverPolicy, error) { + var resource DnsResolverPolicy + err := ctx.ReadResource("azure-native:network:DnsResolverPolicy", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DnsResolverPolicy resources. +type dnsResolverPolicyState struct { +} + +type DnsResolverPolicyState struct { +} + +func (DnsResolverPolicyState) ElementType() reflect.Type { + return reflect.TypeOf((*dnsResolverPolicyState)(nil)).Elem() +} + +type dnsResolverPolicyArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName *string `pulumi:"dnsResolverPolicyName"` + // The geo-location where the resource lives + Location *string `pulumi:"location"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a DnsResolverPolicy resource. +type DnsResolverPolicyArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName pulumi.StringPtrInput + // The geo-location where the resource lives + Location pulumi.StringPtrInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // Resource tags. + Tags pulumi.StringMapInput +} + +func (DnsResolverPolicyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*dnsResolverPolicyArgs)(nil)).Elem() +} + +type DnsResolverPolicyInput interface { + pulumi.Input + + ToDnsResolverPolicyOutput() DnsResolverPolicyOutput + ToDnsResolverPolicyOutputWithContext(ctx context.Context) DnsResolverPolicyOutput +} + +func (*DnsResolverPolicy) ElementType() reflect.Type { + return reflect.TypeOf((**DnsResolverPolicy)(nil)).Elem() +} + +func (i *DnsResolverPolicy) ToDnsResolverPolicyOutput() DnsResolverPolicyOutput { + return i.ToDnsResolverPolicyOutputWithContext(context.Background()) +} + +func (i *DnsResolverPolicy) ToDnsResolverPolicyOutputWithContext(ctx context.Context) DnsResolverPolicyOutput { + return pulumi.ToOutputWithContext(ctx, i).(DnsResolverPolicyOutput) +} + +type DnsResolverPolicyOutput struct{ *pulumi.OutputState } + +func (DnsResolverPolicyOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DnsResolverPolicy)(nil)).Elem() +} + +func (o DnsResolverPolicyOutput) ToDnsResolverPolicyOutput() DnsResolverPolicyOutput { + return o +} + +func (o DnsResolverPolicyOutput) ToDnsResolverPolicyOutputWithContext(ctx context.Context) DnsResolverPolicyOutput { + return o +} + +// ETag of the DNS resolver policy. +func (o DnsResolverPolicyOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o DnsResolverPolicyOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o DnsResolverPolicyOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The current provisioning state of the DNS resolver policy. This is a read-only property and any attempt to set this value will be ignored. +func (o DnsResolverPolicyOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The resourceGuid property of the DNS resolver policy resource. +func (o DnsResolverPolicyOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o DnsResolverPolicyOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *DnsResolverPolicy) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o DnsResolverPolicyOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o DnsResolverPolicyOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicy) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(DnsResolverPolicyOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicyVirtualNetworkLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicyVirtualNetworkLink.go new file mode 100644 index 000000000..52463a4c3 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsResolverPolicyVirtualNetworkLink.go @@ -0,0 +1,202 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Describes a DNS resolver policy virtual network link. +// Azure REST API version: 2023-07-01-preview. +type DnsResolverPolicyVirtualNetworkLink struct { + pulumi.CustomResourceState + + // ETag of the DNS resolver policy virtual network link. + Etag pulumi.StringOutput `pulumi:"etag"` + // The geo-location where the resource lives + Location pulumi.StringOutput `pulumi:"location"` + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // The current provisioning state of the DNS resolver policy virtual network link. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` + // The reference to the virtual network. This cannot be changed after creation. + VirtualNetwork SubResourceResponseOutput `pulumi:"virtualNetwork"` +} + +// NewDnsResolverPolicyVirtualNetworkLink registers a new resource with the given unique name, arguments, and options. +func NewDnsResolverPolicyVirtualNetworkLink(ctx *pulumi.Context, + name string, args *DnsResolverPolicyVirtualNetworkLinkArgs, opts ...pulumi.ResourceOption) (*DnsResolverPolicyVirtualNetworkLink, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.DnsResolverPolicyName == nil { + return nil, errors.New("invalid value for required argument 'DnsResolverPolicyName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + if args.VirtualNetwork == nil { + return nil, errors.New("invalid value for required argument 'VirtualNetwork'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20230701preview:DnsResolverPolicyVirtualNetworkLink"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource DnsResolverPolicyVirtualNetworkLink + err := ctx.RegisterResource("azure-native:network:DnsResolverPolicyVirtualNetworkLink", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDnsResolverPolicyVirtualNetworkLink gets an existing DnsResolverPolicyVirtualNetworkLink resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDnsResolverPolicyVirtualNetworkLink(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DnsResolverPolicyVirtualNetworkLinkState, opts ...pulumi.ResourceOption) (*DnsResolverPolicyVirtualNetworkLink, error) { + var resource DnsResolverPolicyVirtualNetworkLink + err := ctx.ReadResource("azure-native:network:DnsResolverPolicyVirtualNetworkLink", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DnsResolverPolicyVirtualNetworkLink resources. +type dnsResolverPolicyVirtualNetworkLinkState struct { +} + +type DnsResolverPolicyVirtualNetworkLinkState struct { +} + +func (DnsResolverPolicyVirtualNetworkLinkState) ElementType() reflect.Type { + return reflect.TypeOf((*dnsResolverPolicyVirtualNetworkLinkState)(nil)).Elem() +} + +type dnsResolverPolicyVirtualNetworkLinkArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName string `pulumi:"dnsResolverPolicyName"` + // The name of the DNS resolver policy virtual network link for the DNS resolver policy. + DnsResolverPolicyVirtualNetworkLinkName *string `pulumi:"dnsResolverPolicyVirtualNetworkLinkName"` + // The geo-location where the resource lives + Location *string `pulumi:"location"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The reference to the virtual network. This cannot be changed after creation. + VirtualNetwork SubResource `pulumi:"virtualNetwork"` +} + +// The set of arguments for constructing a DnsResolverPolicyVirtualNetworkLink resource. +type DnsResolverPolicyVirtualNetworkLinkArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName pulumi.StringInput + // The name of the DNS resolver policy virtual network link for the DNS resolver policy. + DnsResolverPolicyVirtualNetworkLinkName pulumi.StringPtrInput + // The geo-location where the resource lives + Location pulumi.StringPtrInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // Resource tags. + Tags pulumi.StringMapInput + // The reference to the virtual network. This cannot be changed after creation. + VirtualNetwork SubResourceInput +} + +func (DnsResolverPolicyVirtualNetworkLinkArgs) ElementType() reflect.Type { + return reflect.TypeOf((*dnsResolverPolicyVirtualNetworkLinkArgs)(nil)).Elem() +} + +type DnsResolverPolicyVirtualNetworkLinkInput interface { + pulumi.Input + + ToDnsResolverPolicyVirtualNetworkLinkOutput() DnsResolverPolicyVirtualNetworkLinkOutput + ToDnsResolverPolicyVirtualNetworkLinkOutputWithContext(ctx context.Context) DnsResolverPolicyVirtualNetworkLinkOutput +} + +func (*DnsResolverPolicyVirtualNetworkLink) ElementType() reflect.Type { + return reflect.TypeOf((**DnsResolverPolicyVirtualNetworkLink)(nil)).Elem() +} + +func (i *DnsResolverPolicyVirtualNetworkLink) ToDnsResolverPolicyVirtualNetworkLinkOutput() DnsResolverPolicyVirtualNetworkLinkOutput { + return i.ToDnsResolverPolicyVirtualNetworkLinkOutputWithContext(context.Background()) +} + +func (i *DnsResolverPolicyVirtualNetworkLink) ToDnsResolverPolicyVirtualNetworkLinkOutputWithContext(ctx context.Context) DnsResolverPolicyVirtualNetworkLinkOutput { + return pulumi.ToOutputWithContext(ctx, i).(DnsResolverPolicyVirtualNetworkLinkOutput) +} + +type DnsResolverPolicyVirtualNetworkLinkOutput struct{ *pulumi.OutputState } + +func (DnsResolverPolicyVirtualNetworkLinkOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DnsResolverPolicyVirtualNetworkLink)(nil)).Elem() +} + +func (o DnsResolverPolicyVirtualNetworkLinkOutput) ToDnsResolverPolicyVirtualNetworkLinkOutput() DnsResolverPolicyVirtualNetworkLinkOutput { + return o +} + +func (o DnsResolverPolicyVirtualNetworkLinkOutput) ToDnsResolverPolicyVirtualNetworkLinkOutputWithContext(ctx context.Context) DnsResolverPolicyVirtualNetworkLinkOutput { + return o +} + +// ETag of the DNS resolver policy virtual network link. +func (o DnsResolverPolicyVirtualNetworkLinkOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o DnsResolverPolicyVirtualNetworkLinkOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o DnsResolverPolicyVirtualNetworkLinkOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The current provisioning state of the DNS resolver policy virtual network link. This is a read-only property and any attempt to set this value will be ignored. +func (o DnsResolverPolicyVirtualNetworkLinkOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o DnsResolverPolicyVirtualNetworkLinkOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o DnsResolverPolicyVirtualNetworkLinkOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o DnsResolverPolicyVirtualNetworkLinkOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +// The reference to the virtual network. This cannot be changed after creation. +func (o DnsResolverPolicyVirtualNetworkLinkOutput) VirtualNetwork() SubResourceResponseOutput { + return o.ApplyT(func(v *DnsResolverPolicyVirtualNetworkLink) SubResourceResponseOutput { return v.VirtualNetwork }).(SubResourceResponseOutput) +} + +func init() { + pulumi.RegisterOutputType(DnsResolverPolicyVirtualNetworkLinkOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsSecurityRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsSecurityRule.go new file mode 100644 index 000000000..686dc50c6 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dnsSecurityRule.go @@ -0,0 +1,241 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Describes a DNS security rule. +// Azure REST API version: 2023-07-01-preview. +type DnsSecurityRule struct { + pulumi.CustomResourceState + + // The action to take on DNS requests that match the DNS security rule. + Action DnsSecurityRuleActionResponseOutput `pulumi:"action"` + // DNS resolver policy domains lists that the DNS security rule applies to. + DnsResolverDomainLists SubResourceResponseArrayOutput `pulumi:"dnsResolverDomainLists"` + // The state of DNS security rule. + DnsSecurityRuleState pulumi.StringPtrOutput `pulumi:"dnsSecurityRuleState"` + // ETag of the DNS security rule. + Etag pulumi.StringOutput `pulumi:"etag"` + // The geo-location where the resource lives + Location pulumi.StringOutput `pulumi:"location"` + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // The priority of the DNS security rule. + Priority pulumi.IntOutput `pulumi:"priority"` + // The current provisioning state of the DNS security rule. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewDnsSecurityRule registers a new resource with the given unique name, arguments, and options. +func NewDnsSecurityRule(ctx *pulumi.Context, + name string, args *DnsSecurityRuleArgs, opts ...pulumi.ResourceOption) (*DnsSecurityRule, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Action == nil { + return nil, errors.New("invalid value for required argument 'Action'") + } + if args.DnsResolverDomainLists == nil { + return nil, errors.New("invalid value for required argument 'DnsResolverDomainLists'") + } + if args.DnsResolverPolicyName == nil { + return nil, errors.New("invalid value for required argument 'DnsResolverPolicyName'") + } + if args.Priority == nil { + return nil, errors.New("invalid value for required argument 'Priority'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20230701preview:DnsSecurityRule"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource DnsSecurityRule + err := ctx.RegisterResource("azure-native:network:DnsSecurityRule", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDnsSecurityRule gets an existing DnsSecurityRule resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetDnsSecurityRule(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DnsSecurityRuleState, opts ...pulumi.ResourceOption) (*DnsSecurityRule, error) { + var resource DnsSecurityRule + err := ctx.ReadResource("azure-native:network:DnsSecurityRule", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DnsSecurityRule resources. +type dnsSecurityRuleState struct { +} + +type DnsSecurityRuleState struct { +} + +func (DnsSecurityRuleState) ElementType() reflect.Type { + return reflect.TypeOf((*dnsSecurityRuleState)(nil)).Elem() +} + +type dnsSecurityRuleArgs struct { + // The action to take on DNS requests that match the DNS security rule. + Action DnsSecurityRuleAction `pulumi:"action"` + // DNS resolver policy domains lists that the DNS security rule applies to. + DnsResolverDomainLists []SubResource `pulumi:"dnsResolverDomainLists"` + // The name of the DNS resolver policy. + DnsResolverPolicyName string `pulumi:"dnsResolverPolicyName"` + // The name of the DNS security rule. + DnsSecurityRuleName *string `pulumi:"dnsSecurityRuleName"` + // The state of DNS security rule. + DnsSecurityRuleState *string `pulumi:"dnsSecurityRuleState"` + // The geo-location where the resource lives + Location *string `pulumi:"location"` + // The priority of the DNS security rule. + Priority int `pulumi:"priority"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a DnsSecurityRule resource. +type DnsSecurityRuleArgs struct { + // The action to take on DNS requests that match the DNS security rule. + Action DnsSecurityRuleActionInput + // DNS resolver policy domains lists that the DNS security rule applies to. + DnsResolverDomainLists SubResourceArrayInput + // The name of the DNS resolver policy. + DnsResolverPolicyName pulumi.StringInput + // The name of the DNS security rule. + DnsSecurityRuleName pulumi.StringPtrInput + // The state of DNS security rule. + DnsSecurityRuleState pulumi.StringPtrInput + // The geo-location where the resource lives + Location pulumi.StringPtrInput + // The priority of the DNS security rule. + Priority pulumi.IntInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // Resource tags. + Tags pulumi.StringMapInput +} + +func (DnsSecurityRuleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*dnsSecurityRuleArgs)(nil)).Elem() +} + +type DnsSecurityRuleInput interface { + pulumi.Input + + ToDnsSecurityRuleOutput() DnsSecurityRuleOutput + ToDnsSecurityRuleOutputWithContext(ctx context.Context) DnsSecurityRuleOutput +} + +func (*DnsSecurityRule) ElementType() reflect.Type { + return reflect.TypeOf((**DnsSecurityRule)(nil)).Elem() +} + +func (i *DnsSecurityRule) ToDnsSecurityRuleOutput() DnsSecurityRuleOutput { + return i.ToDnsSecurityRuleOutputWithContext(context.Background()) +} + +func (i *DnsSecurityRule) ToDnsSecurityRuleOutputWithContext(ctx context.Context) DnsSecurityRuleOutput { + return pulumi.ToOutputWithContext(ctx, i).(DnsSecurityRuleOutput) +} + +type DnsSecurityRuleOutput struct{ *pulumi.OutputState } + +func (DnsSecurityRuleOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DnsSecurityRule)(nil)).Elem() +} + +func (o DnsSecurityRuleOutput) ToDnsSecurityRuleOutput() DnsSecurityRuleOutput { + return o +} + +func (o DnsSecurityRuleOutput) ToDnsSecurityRuleOutputWithContext(ctx context.Context) DnsSecurityRuleOutput { + return o +} + +// The action to take on DNS requests that match the DNS security rule. +func (o DnsSecurityRuleOutput) Action() DnsSecurityRuleActionResponseOutput { + return o.ApplyT(func(v *DnsSecurityRule) DnsSecurityRuleActionResponseOutput { return v.Action }).(DnsSecurityRuleActionResponseOutput) +} + +// DNS resolver policy domains lists that the DNS security rule applies to. +func (o DnsSecurityRuleOutput) DnsResolverDomainLists() SubResourceResponseArrayOutput { + return o.ApplyT(func(v *DnsSecurityRule) SubResourceResponseArrayOutput { return v.DnsResolverDomainLists }).(SubResourceResponseArrayOutput) +} + +// The state of DNS security rule. +func (o DnsSecurityRuleOutput) DnsSecurityRuleState() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringPtrOutput { return v.DnsSecurityRuleState }).(pulumi.StringPtrOutput) +} + +// ETag of the DNS security rule. +func (o DnsSecurityRuleOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o DnsSecurityRuleOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o DnsSecurityRuleOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The priority of the DNS security rule. +func (o DnsSecurityRuleOutput) Priority() pulumi.IntOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.IntOutput { return v.Priority }).(pulumi.IntOutput) +} + +// The current provisioning state of the DNS security rule. This is a read-only property and any attempt to set this value will be ignored. +func (o DnsSecurityRuleOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o DnsSecurityRuleOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *DnsSecurityRule) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o DnsSecurityRuleOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o DnsSecurityRuleOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *DnsSecurityRule) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(DnsSecurityRuleOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dscpConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dscpConfiguration.go index b7e1644bb..1d071dd1c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dscpConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/dscpConfiguration.go @@ -15,7 +15,7 @@ import ( // Differentiated Services Code Point configuration for any given network interface // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type DscpConfiguration struct { pulumi.CustomResourceState @@ -121,6 +121,12 @@ func NewDscpConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:DscpConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240101:DscpConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:DscpConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuit.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuit.go index 5405482f0..8fc58c53d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuit.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuit.go @@ -15,7 +15,7 @@ import ( // ExpressRouteCircuit resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2018-12-01, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2018-12-01, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteCircuit struct { pulumi.CustomResourceState @@ -229,6 +229,12 @@ func NewExpressRouteCircuit(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteCircuit"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteCircuit"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteCircuit"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitAuthorization.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitAuthorization.go index 6b855af2f..199b3ff18 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitAuthorization.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitAuthorization.go @@ -15,7 +15,7 @@ import ( // Authorization in an ExpressRouteCircuit resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteCircuitAuthorization struct { pulumi.CustomResourceState @@ -200,6 +200,12 @@ func NewExpressRouteCircuitAuthorization(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteCircuitAuthorization"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteCircuitAuthorization"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteCircuitAuthorization"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitConnection.go index 016a9559a..73e377baa 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitConnection.go @@ -15,7 +15,7 @@ import ( // Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteCircuitConnection struct { pulumi.CustomResourceState @@ -172,6 +172,12 @@ func NewExpressRouteCircuitConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteCircuitConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteCircuitConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteCircuitConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitPeering.go index 1fecbad77..fba28152b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCircuitPeering.go @@ -15,7 +15,7 @@ import ( // Peering in an ExpressRouteCircuit resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2017-09-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2017-09-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteCircuitPeering struct { pulumi.CustomResourceState @@ -234,6 +234,12 @@ func NewExpressRouteCircuitPeering(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteCircuitPeering"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteCircuitPeering"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteCircuitPeering"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteConnection.go index 5999534a3..6cb06ea4e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteConnection.go @@ -15,7 +15,7 @@ import ( // ExpressRouteConnection resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteConnection struct { pulumi.CustomResourceState @@ -161,6 +161,12 @@ func NewExpressRouteConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCrossConnectionPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCrossConnectionPeering.go index 4e976df0a..c17171a0f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCrossConnectionPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteCrossConnectionPeering.go @@ -15,7 +15,7 @@ import ( // Peering in an ExpressRoute Cross Connection resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteCrossConnectionPeering struct { pulumi.CustomResourceState @@ -183,6 +183,12 @@ func NewExpressRouteCrossConnectionPeering(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteCrossConnectionPeering"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteCrossConnectionPeering"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteCrossConnectionPeering"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteGateway.go index ec4748464..aae7da7d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRouteGateway.go @@ -15,7 +15,7 @@ import ( // ExpressRoute gateway resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRouteGateway struct { pulumi.CustomResourceState @@ -157,6 +157,12 @@ func NewExpressRouteGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRouteGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRouteGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRouteGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePort.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePort.go index af1035388..c3838ae31 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePort.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePort.go @@ -15,7 +15,7 @@ import ( // ExpressRoutePort resource definition. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRoutePort struct { pulumi.CustomResourceState @@ -170,6 +170,12 @@ func NewExpressRoutePort(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRoutePort"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRoutePort"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRoutePort"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePortAuthorization.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePortAuthorization.go index 9b611fb71..f50ae7d7a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePortAuthorization.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/expressRoutePortAuthorization.go @@ -15,7 +15,7 @@ import ( // ExpressRoutePort Authorization resource definition. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-01-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ExpressRoutePortAuthorization struct { pulumi.CustomResourceState @@ -85,6 +85,12 @@ func NewExpressRoutePortAuthorization(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ExpressRoutePortAuthorization"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ExpressRoutePortAuthorization"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ExpressRoutePortAuthorization"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicy.go index 73003fb68..86148ec93 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicy.go @@ -15,7 +15,7 @@ import ( // FirewallPolicy Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2020-04-01, 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2020-04-01, 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type FirewallPolicy struct { pulumi.CustomResourceState @@ -158,6 +158,12 @@ func NewFirewallPolicy(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:FirewallPolicy"), }, + { + Type: pulumi.String("azure-native:network/v20240101:FirewallPolicy"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:FirewallPolicy"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyDraft.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyDraft.go index 994617ba2..508ea2744 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyDraft.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyDraft.go @@ -14,6 +14,8 @@ import ( // FirewallPolicy Resource. // Azure REST API version: 2023-11-01. +// +// Other available API versions: 2024-01-01, 2024-03-01. type FirewallPolicyDraft struct { pulumi.CustomResourceState @@ -62,6 +64,12 @@ func NewFirewallPolicyDraft(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:FirewallPolicyDraft"), }, + { + Type: pulumi.String("azure-native:network/v20240101:FirewallPolicyDraft"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:FirewallPolicyDraft"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroup.go index 13bbc3f89..89e981482 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroup.go @@ -15,7 +15,7 @@ import ( // Rule Collection Group resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type FirewallPolicyRuleCollectionGroup struct { pulumi.CustomResourceState @@ -107,6 +107,12 @@ func NewFirewallPolicyRuleCollectionGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:FirewallPolicyRuleCollectionGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:FirewallPolicyRuleCollectionGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:FirewallPolicyRuleCollectionGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroupDraft.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroupDraft.go index 892a27f40..f57736ba3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroupDraft.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/firewallPolicyRuleCollectionGroupDraft.go @@ -14,6 +14,8 @@ import ( // Rule Collection Group resource. // Azure REST API version: 2023-11-01. +// +// Other available API versions: 2024-01-01, 2024-03-01. type FirewallPolicyRuleCollectionGroupDraft struct { pulumi.CustomResourceState @@ -49,6 +51,12 @@ func NewFirewallPolicyRuleCollectionGroupDraft(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:FirewallPolicyRuleCollectionGroupDraft"), }, + { + Type: pulumi.String("azure-native:network/v20240101:FirewallPolicyRuleCollectionGroupDraft"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:FirewallPolicyRuleCollectionGroupDraft"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/flowLog.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/flowLog.go index 3b15aa709..2373899c4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/flowLog.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/flowLog.go @@ -15,7 +15,7 @@ import ( // A flow log resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type FlowLog struct { pulumi.CustomResourceState @@ -145,6 +145,12 @@ func NewFlowLog(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:FlowLog"), }, + { + Type: pulumi.String("azure-native:network/v20240101:FlowLog"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:FlowLog"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/forwardingRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/forwardingRule.go index 7fbba4f25..2e899ac51 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/forwardingRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/forwardingRule.go @@ -14,6 +14,8 @@ import ( // Describes a forwarding rule within a DNS forwarding ruleset. // Azure REST API version: 2022-07-01. Prior API version in Azure Native 1.x: 2020-04-01-preview. +// +// Other available API versions: 2023-07-01-preview. type ForwardingRule struct { pulumi.CustomResourceState @@ -63,6 +65,9 @@ func NewForwardingRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220701:ForwardingRule"), }, + { + Type: pulumi.String("azure-native:network/v20230701preview:ForwardingRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/frontDoor.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/frontDoor.go index 9cf4c41d9..2f866f653 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/frontDoor.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/frontDoor.go @@ -143,7 +143,7 @@ type frontDoorArgs struct { // Name of the Resource group within the Azure subscription. ResourceGroupName string `pulumi:"resourceGroupName"` // Routing rules associated with this Front Door. - RoutingRules []RoutingRule `pulumi:"routingRules"` + RoutingRules []RoutingRuleType `pulumi:"routingRules"` // Resource tags. Tags map[string]string `pulumi:"tags"` } @@ -171,7 +171,7 @@ type FrontDoorArgs struct { // Name of the Resource group within the Azure subscription. ResourceGroupName pulumi.StringInput // Routing rules associated with this Front Door. - RoutingRules RoutingRuleArrayInput + RoutingRules RoutingRuleTypeArrayInput // Resource tags. Tags pulumi.StringMapInput } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getActiveSessions.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getActiveSessions.go index 6c34a602e..9582127a2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getActiveSessions.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getActiveSessions.go @@ -14,7 +14,7 @@ import ( // Returns the list of currently active sessions on the Bastion. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetActiveSessions(ctx *pulumi.Context, args *GetActiveSessionsArgs, opts ...pulumi.InvokeOption) (*GetActiveSessionsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetActiveSessionsResult @@ -42,14 +42,20 @@ type GetActiveSessionsResult struct { func GetActiveSessionsOutput(ctx *pulumi.Context, args GetActiveSessionsOutputArgs, opts ...pulumi.InvokeOption) GetActiveSessionsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetActiveSessionsResult, error) { + ApplyT(func(v interface{}) (GetActiveSessionsResultOutput, error) { args := v.(GetActiveSessionsArgs) - r, err := GetActiveSessions(ctx, &args, opts...) - var s GetActiveSessionsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetActiveSessionsResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getActiveSessions", args, &rv, "", opts...) + if err != nil { + return GetActiveSessionsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetActiveSessionsResultOutput) + if secret { + return pulumi.ToSecret(output).(GetActiveSessionsResultOutput), nil + } + return output, nil }).(GetActiveSessionsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRule.go index 182a19096..c6b82932d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRule.go @@ -14,7 +14,7 @@ import ( // Gets a network manager security configuration admin rule. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. func LookupAdminRule(ctx *pulumi.Context, args *LookupAdminRuleArgs, opts ...pulumi.InvokeOption) (*LookupAdminRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupAdminRuleResult @@ -79,14 +79,20 @@ type LookupAdminRuleResult struct { func LookupAdminRuleOutput(ctx *pulumi.Context, args LookupAdminRuleOutputArgs, opts ...pulumi.InvokeOption) LookupAdminRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAdminRuleResult, error) { + ApplyT(func(v interface{}) (LookupAdminRuleResultOutput, error) { args := v.(LookupAdminRuleArgs) - r, err := LookupAdminRule(ctx, &args, opts...) - var s LookupAdminRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAdminRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getAdminRule", args, &rv, "", opts...) + if err != nil { + return LookupAdminRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAdminRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAdminRuleResultOutput), nil + } + return output, nil }).(LookupAdminRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRuleCollection.go index 49d581b61..d259044c8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRuleCollection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAdminRuleCollection.go @@ -14,7 +14,7 @@ import ( // Gets a network manager security admin configuration rule collection. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. func LookupAdminRuleCollection(ctx *pulumi.Context, args *LookupAdminRuleCollectionArgs, opts ...pulumi.InvokeOption) (*LookupAdminRuleCollectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupAdminRuleCollectionResult @@ -60,14 +60,20 @@ type LookupAdminRuleCollectionResult struct { func LookupAdminRuleCollectionOutput(ctx *pulumi.Context, args LookupAdminRuleCollectionOutputArgs, opts ...pulumi.InvokeOption) LookupAdminRuleCollectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAdminRuleCollectionResult, error) { + ApplyT(func(v interface{}) (LookupAdminRuleCollectionResultOutput, error) { args := v.(LookupAdminRuleCollectionArgs) - r, err := LookupAdminRuleCollection(ctx, &args, opts...) - var s LookupAdminRuleCollectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAdminRuleCollectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getAdminRuleCollection", args, &rv, "", opts...) + if err != nil { + return LookupAdminRuleCollectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAdminRuleCollectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAdminRuleCollectionResultOutput), nil + } + return output, nil }).(LookupAdminRuleCollectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGateway.go index 7c7f243ab..0b0c4d8f3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGateway.go @@ -14,7 +14,7 @@ import ( // Gets the specified application gateway. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupApplicationGateway(ctx *pulumi.Context, args *LookupApplicationGatewayArgs, opts ...pulumi.InvokeOption) (*LookupApplicationGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupApplicationGatewayResult @@ -126,14 +126,20 @@ type LookupApplicationGatewayResult struct { func LookupApplicationGatewayOutput(ctx *pulumi.Context, args LookupApplicationGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupApplicationGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupApplicationGatewayResult, error) { + ApplyT(func(v interface{}) (LookupApplicationGatewayResultOutput, error) { args := v.(LookupApplicationGatewayArgs) - r, err := LookupApplicationGateway(ctx, &args, opts...) - var s LookupApplicationGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupApplicationGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getApplicationGateway", args, &rv, "", opts...) + if err != nil { + return LookupApplicationGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupApplicationGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupApplicationGatewayResultOutput), nil + } + return output, nil }).(LookupApplicationGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayBackendHealthOnDemand.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayBackendHealthOnDemand.go index 57c75894a..8e461841d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayBackendHealthOnDemand.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayBackendHealthOnDemand.go @@ -14,7 +14,7 @@ import ( // Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetApplicationGatewayBackendHealthOnDemand(ctx *pulumi.Context, args *GetApplicationGatewayBackendHealthOnDemandArgs, opts ...pulumi.InvokeOption) (*GetApplicationGatewayBackendHealthOnDemandResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetApplicationGatewayBackendHealthOnDemandResult @@ -60,14 +60,20 @@ type GetApplicationGatewayBackendHealthOnDemandResult struct { func GetApplicationGatewayBackendHealthOnDemandOutput(ctx *pulumi.Context, args GetApplicationGatewayBackendHealthOnDemandOutputArgs, opts ...pulumi.InvokeOption) GetApplicationGatewayBackendHealthOnDemandResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetApplicationGatewayBackendHealthOnDemandResult, error) { + ApplyT(func(v interface{}) (GetApplicationGatewayBackendHealthOnDemandResultOutput, error) { args := v.(GetApplicationGatewayBackendHealthOnDemandArgs) - r, err := GetApplicationGatewayBackendHealthOnDemand(ctx, &args, opts...) - var s GetApplicationGatewayBackendHealthOnDemandResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetApplicationGatewayBackendHealthOnDemandResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getApplicationGatewayBackendHealthOnDemand", args, &rv, "", opts...) + if err != nil { + return GetApplicationGatewayBackendHealthOnDemandResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetApplicationGatewayBackendHealthOnDemandResultOutput) + if secret { + return pulumi.ToSecret(output).(GetApplicationGatewayBackendHealthOnDemandResultOutput), nil + } + return output, nil }).(GetApplicationGatewayBackendHealthOnDemandResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayPrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayPrivateEndpointConnection.go index 548dcdf98..9482ae780 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayPrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationGatewayPrivateEndpointConnection.go @@ -14,7 +14,7 @@ import ( // Gets the specified private endpoint connection on application gateway. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupApplicationGatewayPrivateEndpointConnection(ctx *pulumi.Context, args *LookupApplicationGatewayPrivateEndpointConnectionArgs, opts ...pulumi.InvokeOption) (*LookupApplicationGatewayPrivateEndpointConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupApplicationGatewayPrivateEndpointConnectionResult @@ -67,14 +67,20 @@ func (val *LookupApplicationGatewayPrivateEndpointConnectionResult) Defaults() * func LookupApplicationGatewayPrivateEndpointConnectionOutput(ctx *pulumi.Context, args LookupApplicationGatewayPrivateEndpointConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupApplicationGatewayPrivateEndpointConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupApplicationGatewayPrivateEndpointConnectionResult, error) { + ApplyT(func(v interface{}) (LookupApplicationGatewayPrivateEndpointConnectionResultOutput, error) { args := v.(LookupApplicationGatewayPrivateEndpointConnectionArgs) - r, err := LookupApplicationGatewayPrivateEndpointConnection(ctx, &args, opts...) - var s LookupApplicationGatewayPrivateEndpointConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupApplicationGatewayPrivateEndpointConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getApplicationGatewayPrivateEndpointConnection", args, &rv, "", opts...) + if err != nil { + return LookupApplicationGatewayPrivateEndpointConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupApplicationGatewayPrivateEndpointConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupApplicationGatewayPrivateEndpointConnectionResultOutput), nil + } + return output, nil }).(LookupApplicationGatewayPrivateEndpointConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationSecurityGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationSecurityGroup.go index e2fd5457d..2cf071e82 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationSecurityGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getApplicationSecurityGroup.go @@ -14,7 +14,7 @@ import ( // Gets information about the specified application security group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupApplicationSecurityGroup(ctx *pulumi.Context, args *LookupApplicationSecurityGroupArgs, opts ...pulumi.InvokeOption) (*LookupApplicationSecurityGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupApplicationSecurityGroupResult @@ -54,14 +54,20 @@ type LookupApplicationSecurityGroupResult struct { func LookupApplicationSecurityGroupOutput(ctx *pulumi.Context, args LookupApplicationSecurityGroupOutputArgs, opts ...pulumi.InvokeOption) LookupApplicationSecurityGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupApplicationSecurityGroupResult, error) { + ApplyT(func(v interface{}) (LookupApplicationSecurityGroupResultOutput, error) { args := v.(LookupApplicationSecurityGroupArgs) - r, err := LookupApplicationSecurityGroup(ctx, &args, opts...) - var s LookupApplicationSecurityGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupApplicationSecurityGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getApplicationSecurityGroup", args, &rv, "", opts...) + if err != nil { + return LookupApplicationSecurityGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupApplicationSecurityGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupApplicationSecurityGroupResultOutput), nil + } + return output, nil }).(LookupApplicationSecurityGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAzureFirewall.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAzureFirewall.go index 41409359c..b21ad3cfe 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAzureFirewall.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getAzureFirewall.go @@ -14,7 +14,7 @@ import ( // Gets the specified Azure Firewall. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupAzureFirewall(ctx *pulumi.Context, args *LookupAzureFirewallArgs, opts ...pulumi.InvokeOption) (*LookupAzureFirewallResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupAzureFirewallResult @@ -78,14 +78,20 @@ type LookupAzureFirewallResult struct { func LookupAzureFirewallOutput(ctx *pulumi.Context, args LookupAzureFirewallOutputArgs, opts ...pulumi.InvokeOption) LookupAzureFirewallResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAzureFirewallResult, error) { + ApplyT(func(v interface{}) (LookupAzureFirewallResultOutput, error) { args := v.(LookupAzureFirewallArgs) - r, err := LookupAzureFirewall(ctx, &args, opts...) - var s LookupAzureFirewallResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAzureFirewallResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getAzureFirewall", args, &rv, "", opts...) + if err != nil { + return LookupAzureFirewallResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAzureFirewallResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAzureFirewallResultOutput), nil + } + return output, nil }).(LookupAzureFirewallResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionHost.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionHost.go index e85b986c5..25f068467 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionHost.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionHost.go @@ -14,7 +14,7 @@ import ( // Gets the specified Bastion Host. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupBastionHost(ctx *pulumi.Context, args *LookupBastionHostArgs, opts ...pulumi.InvokeOption) (*LookupBastionHostResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupBastionHostResult @@ -105,14 +105,20 @@ func (val *LookupBastionHostResult) Defaults() *LookupBastionHostResult { func LookupBastionHostOutput(ctx *pulumi.Context, args LookupBastionHostOutputArgs, opts ...pulumi.InvokeOption) LookupBastionHostResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupBastionHostResult, error) { + ApplyT(func(v interface{}) (LookupBastionHostResultOutput, error) { args := v.(LookupBastionHostArgs) - r, err := LookupBastionHost(ctx, &args, opts...) - var s LookupBastionHostResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupBastionHostResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getBastionHost", args, &rv, "", opts...) + if err != nil { + return LookupBastionHostResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupBastionHostResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupBastionHostResultOutput), nil + } + return output, nil }).(LookupBastionHostResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionShareableLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionShareableLink.go index 7be0e1b4f..8b814f1ad 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionShareableLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getBastionShareableLink.go @@ -14,7 +14,7 @@ import ( // Return the Bastion Shareable Links for all the VMs specified in the request. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetBastionShareableLink(ctx *pulumi.Context, args *GetBastionShareableLinkArgs, opts ...pulumi.InvokeOption) (*GetBastionShareableLinkResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetBastionShareableLinkResult @@ -44,14 +44,20 @@ type GetBastionShareableLinkResult struct { func GetBastionShareableLinkOutput(ctx *pulumi.Context, args GetBastionShareableLinkOutputArgs, opts ...pulumi.InvokeOption) GetBastionShareableLinkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetBastionShareableLinkResult, error) { + ApplyT(func(v interface{}) (GetBastionShareableLinkResultOutput, error) { args := v.(GetBastionShareableLinkArgs) - r, err := GetBastionShareableLink(ctx, &args, opts...) - var s GetBastionShareableLinkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetBastionShareableLinkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getBastionShareableLink", args, &rv, "", opts...) + if err != nil { + return GetBastionShareableLinkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetBastionShareableLinkResultOutput) + if secret { + return pulumi.ToSecret(output).(GetBastionShareableLinkResultOutput), nil + } + return output, nil }).(GetBastionShareableLinkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConfigurationPolicyGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConfigurationPolicyGroup.go index b814c4cfd..9002da58c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConfigurationPolicyGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConfigurationPolicyGroup.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a ConfigurationPolicyGroup. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupConfigurationPolicyGroup(ctx *pulumi.Context, args *LookupConfigurationPolicyGroupArgs, opts ...pulumi.InvokeOption) (*LookupConfigurationPolicyGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupConfigurationPolicyGroupResult @@ -58,14 +58,20 @@ type LookupConfigurationPolicyGroupResult struct { func LookupConfigurationPolicyGroupOutput(ctx *pulumi.Context, args LookupConfigurationPolicyGroupOutputArgs, opts ...pulumi.InvokeOption) LookupConfigurationPolicyGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupConfigurationPolicyGroupResult, error) { + ApplyT(func(v interface{}) (LookupConfigurationPolicyGroupResultOutput, error) { args := v.(LookupConfigurationPolicyGroupArgs) - r, err := LookupConfigurationPolicyGroup(ctx, &args, opts...) - var s LookupConfigurationPolicyGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupConfigurationPolicyGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getConfigurationPolicyGroup", args, &rv, "", opts...) + if err != nil { + return LookupConfigurationPolicyGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupConfigurationPolicyGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupConfigurationPolicyGroupResultOutput), nil + } + return output, nil }).(LookupConfigurationPolicyGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectionMonitor.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectionMonitor.go index d860c0552..518dfe37a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectionMonitor.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectionMonitor.go @@ -14,7 +14,7 @@ import ( // Gets a connection monitor by name. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-09-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-09-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupConnectionMonitor(ctx *pulumi.Context, args *LookupConnectionMonitorArgs, opts ...pulumi.InvokeOption) (*LookupConnectionMonitorResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupConnectionMonitorResult @@ -95,14 +95,20 @@ func (val *LookupConnectionMonitorResult) Defaults() *LookupConnectionMonitorRes func LookupConnectionMonitorOutput(ctx *pulumi.Context, args LookupConnectionMonitorOutputArgs, opts ...pulumi.InvokeOption) LookupConnectionMonitorResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupConnectionMonitorResult, error) { + ApplyT(func(v interface{}) (LookupConnectionMonitorResultOutput, error) { args := v.(LookupConnectionMonitorArgs) - r, err := LookupConnectionMonitor(ctx, &args, opts...) - var s LookupConnectionMonitorResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupConnectionMonitorResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getConnectionMonitor", args, &rv, "", opts...) + if err != nil { + return LookupConnectionMonitorResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupConnectionMonitorResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupConnectionMonitorResultOutput), nil + } + return output, nil }).(LookupConnectionMonitorResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectivityConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectivityConfiguration.go index 8d541c117..5efcee401 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectivityConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getConnectivityConfiguration.go @@ -14,7 +14,7 @@ import ( // Gets a Network Connectivity Configuration, specified by the resource group, network manager name, and connectivity Configuration name // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupConnectivityConfiguration(ctx *pulumi.Context, args *LookupConnectivityConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupConnectivityConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupConnectivityConfigurationResult @@ -66,14 +66,20 @@ type LookupConnectivityConfigurationResult struct { func LookupConnectivityConfigurationOutput(ctx *pulumi.Context, args LookupConnectivityConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupConnectivityConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupConnectivityConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupConnectivityConfigurationResultOutput, error) { args := v.(LookupConnectivityConfigurationArgs) - r, err := LookupConnectivityConfiguration(ctx, &args, opts...) - var s LookupConnectivityConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupConnectivityConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getConnectivityConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupConnectivityConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupConnectivityConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupConnectivityConfigurationResultOutput), nil + } + return output, nil }).(LookupConnectivityConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getCustomIPPrefix.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getCustomIPPrefix.go index 27933f758..78d643a66 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getCustomIPPrefix.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getCustomIPPrefix.go @@ -14,7 +14,7 @@ import ( // Gets the specified custom IP prefix in a specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupCustomIPPrefix(ctx *pulumi.Context, args *LookupCustomIPPrefixArgs, opts ...pulumi.InvokeOption) (*LookupCustomIPPrefixResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupCustomIPPrefixResult @@ -86,14 +86,20 @@ type LookupCustomIPPrefixResult struct { func LookupCustomIPPrefixOutput(ctx *pulumi.Context, args LookupCustomIPPrefixOutputArgs, opts ...pulumi.InvokeOption) LookupCustomIPPrefixResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupCustomIPPrefixResult, error) { + ApplyT(func(v interface{}) (LookupCustomIPPrefixResultOutput, error) { args := v.(LookupCustomIPPrefixArgs) - r, err := LookupCustomIPPrefix(ctx, &args, opts...) - var s LookupCustomIPPrefixResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupCustomIPPrefixResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getCustomIPPrefix", args, &rv, "", opts...) + if err != nil { + return LookupCustomIPPrefixResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupCustomIPPrefixResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupCustomIPPrefixResultOutput), nil + } + return output, nil }).(LookupCustomIPPrefixResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosCustomPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosCustomPolicy.go index d55a8eff4..76f9ec211 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosCustomPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosCustomPolicy.go @@ -14,7 +14,7 @@ import ( // Gets information about the specified DDoS custom policy. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2022-01-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2022-01-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupDdosCustomPolicy(ctx *pulumi.Context, args *LookupDdosCustomPolicyArgs, opts ...pulumi.InvokeOption) (*LookupDdosCustomPolicyResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDdosCustomPolicyResult @@ -54,14 +54,20 @@ type LookupDdosCustomPolicyResult struct { func LookupDdosCustomPolicyOutput(ctx *pulumi.Context, args LookupDdosCustomPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupDdosCustomPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDdosCustomPolicyResult, error) { + ApplyT(func(v interface{}) (LookupDdosCustomPolicyResultOutput, error) { args := v.(LookupDdosCustomPolicyArgs) - r, err := LookupDdosCustomPolicy(ctx, &args, opts...) - var s LookupDdosCustomPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDdosCustomPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDdosCustomPolicy", args, &rv, "", opts...) + if err != nil { + return LookupDdosCustomPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDdosCustomPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDdosCustomPolicyResultOutput), nil + } + return output, nil }).(LookupDdosCustomPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosProtectionPlan.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosProtectionPlan.go index eef485c2b..10f28bc5a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosProtectionPlan.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDdosProtectionPlan.go @@ -14,7 +14,7 @@ import ( // Gets information about the specified DDoS protection plan. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-02-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-02-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupDdosProtectionPlan(ctx *pulumi.Context, args *LookupDdosProtectionPlanArgs, opts ...pulumi.InvokeOption) (*LookupDdosProtectionPlanResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDdosProtectionPlanResult @@ -58,14 +58,20 @@ type LookupDdosProtectionPlanResult struct { func LookupDdosProtectionPlanOutput(ctx *pulumi.Context, args LookupDdosProtectionPlanOutputArgs, opts ...pulumi.InvokeOption) LookupDdosProtectionPlanResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDdosProtectionPlanResult, error) { + ApplyT(func(v interface{}) (LookupDdosProtectionPlanResultOutput, error) { args := v.(LookupDdosProtectionPlanArgs) - r, err := LookupDdosProtectionPlan(ctx, &args, opts...) - var s LookupDdosProtectionPlanResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDdosProtectionPlanResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDdosProtectionPlan", args, &rv, "", opts...) + if err != nil { + return LookupDdosProtectionPlanResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDdosProtectionPlanResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDdosProtectionPlanResultOutput), nil + } + return output, nil }).(LookupDdosProtectionPlanResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultAdminRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultAdminRule.go index a34558920..9d2919b6d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultAdminRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultAdminRule.go @@ -79,14 +79,20 @@ type LookupDefaultAdminRuleResult struct { func LookupDefaultAdminRuleOutput(ctx *pulumi.Context, args LookupDefaultAdminRuleOutputArgs, opts ...pulumi.InvokeOption) LookupDefaultAdminRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDefaultAdminRuleResult, error) { + ApplyT(func(v interface{}) (LookupDefaultAdminRuleResultOutput, error) { args := v.(LookupDefaultAdminRuleArgs) - r, err := LookupDefaultAdminRule(ctx, &args, opts...) - var s LookupDefaultAdminRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDefaultAdminRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDefaultAdminRule", args, &rv, "", opts...) + if err != nil { + return LookupDefaultAdminRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDefaultAdminRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDefaultAdminRuleResultOutput), nil + } + return output, nil }).(LookupDefaultAdminRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultUserRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultUserRule.go index 465949a9b..4f8bdce13 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultUserRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDefaultUserRule.go @@ -73,14 +73,20 @@ type LookupDefaultUserRuleResult struct { func LookupDefaultUserRuleOutput(ctx *pulumi.Context, args LookupDefaultUserRuleOutputArgs, opts ...pulumi.InvokeOption) LookupDefaultUserRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDefaultUserRuleResult, error) { + ApplyT(func(v interface{}) (LookupDefaultUserRuleResultOutput, error) { args := v.(LookupDefaultUserRuleArgs) - r, err := LookupDefaultUserRule(ctx, &args, opts...) - var s LookupDefaultUserRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDefaultUserRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDefaultUserRule", args, &rv, "", opts...) + if err != nil { + return LookupDefaultUserRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDefaultUserRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDefaultUserRuleResultOutput), nil + } + return output, nil }).(LookupDefaultUserRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsForwardingRuleset.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsForwardingRuleset.go index 561da7eaf..15dbf9a64 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsForwardingRuleset.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsForwardingRuleset.go @@ -14,7 +14,7 @@ import ( // Gets a DNS forwarding ruleset properties. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. func LookupDnsForwardingRuleset(ctx *pulumi.Context, args *LookupDnsForwardingRulesetArgs, opts ...pulumi.InvokeOption) (*LookupDnsForwardingRulesetResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDnsForwardingRulesetResult @@ -58,14 +58,20 @@ type LookupDnsForwardingRulesetResult struct { func LookupDnsForwardingRulesetOutput(ctx *pulumi.Context, args LookupDnsForwardingRulesetOutputArgs, opts ...pulumi.InvokeOption) LookupDnsForwardingRulesetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDnsForwardingRulesetResult, error) { + ApplyT(func(v interface{}) (LookupDnsForwardingRulesetResultOutput, error) { args := v.(LookupDnsForwardingRulesetArgs) - r, err := LookupDnsForwardingRuleset(ctx, &args, opts...) - var s LookupDnsForwardingRulesetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsForwardingRulesetResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsForwardingRuleset", args, &rv, "", opts...) + if err != nil { + return LookupDnsForwardingRulesetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDnsForwardingRulesetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDnsForwardingRulesetResultOutput), nil + } + return output, nil }).(LookupDnsForwardingRulesetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolver.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolver.go index 5e987eddb..7dfe4f6e0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolver.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolver.go @@ -13,6 +13,8 @@ import ( // Gets properties of a DNS resolver. // Azure REST API version: 2022-07-01. +// +// Other available API versions: 2023-07-01-preview. func LookupDnsResolver(ctx *pulumi.Context, args *LookupDnsResolverArgs, opts ...pulumi.InvokeOption) (*LookupDnsResolverResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDnsResolverResult @@ -58,14 +60,20 @@ type LookupDnsResolverResult struct { func LookupDnsResolverOutput(ctx *pulumi.Context, args LookupDnsResolverOutputArgs, opts ...pulumi.InvokeOption) LookupDnsResolverResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDnsResolverResult, error) { + ApplyT(func(v interface{}) (LookupDnsResolverResultOutput, error) { args := v.(LookupDnsResolverArgs) - r, err := LookupDnsResolver(ctx, &args, opts...) - var s LookupDnsResolverResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsResolver", args, &rv, "", opts...) + if err != nil { + return LookupDnsResolverResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDnsResolverResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDnsResolverResultOutput), nil + } + return output, nil }).(LookupDnsResolverResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverDomainList.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverDomainList.go new file mode 100644 index 000000000..4c847348c --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverDomainList.go @@ -0,0 +1,154 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets properties of a DNS resolver domain list. +// Azure REST API version: 2023-07-01-preview. +func LookupDnsResolverDomainList(ctx *pulumi.Context, args *LookupDnsResolverDomainListArgs, opts ...pulumi.InvokeOption) (*LookupDnsResolverDomainListResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverDomainListResult + err := ctx.Invoke("azure-native:network:getDnsResolverDomainList", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupDnsResolverDomainListArgs struct { + // The name of the DNS resolver domain list. + DnsResolverDomainListName string `pulumi:"dnsResolverDomainListName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// Describes a DNS resolver domain list. +type LookupDnsResolverDomainListResult struct { + // The domains in the domain list. + Domains []string `pulumi:"domains"` + // ETag of the DNS resolver domain list. + Etag string `pulumi:"etag"` + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The geo-location where the resource lives + Location string `pulumi:"location"` + // The name of the resource + Name string `pulumi:"name"` + // The current provisioning state of the DNS resolver domain list. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState string `pulumi:"provisioningState"` + // The resourceGuid property of the DNS resolver domain list resource. + ResourceGuid string `pulumi:"resourceGuid"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupDnsResolverDomainListOutput(ctx *pulumi.Context, args LookupDnsResolverDomainListOutputArgs, opts ...pulumi.InvokeOption) LookupDnsResolverDomainListResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupDnsResolverDomainListResultOutput, error) { + args := v.(LookupDnsResolverDomainListArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverDomainListResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsResolverDomainList", args, &rv, "", opts...) + if err != nil { + return LookupDnsResolverDomainListResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupDnsResolverDomainListResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDnsResolverDomainListResultOutput), nil + } + return output, nil + }).(LookupDnsResolverDomainListResultOutput) +} + +type LookupDnsResolverDomainListOutputArgs struct { + // The name of the DNS resolver domain list. + DnsResolverDomainListName pulumi.StringInput `pulumi:"dnsResolverDomainListName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (LookupDnsResolverDomainListOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsResolverDomainListArgs)(nil)).Elem() +} + +// Describes a DNS resolver domain list. +type LookupDnsResolverDomainListResultOutput struct{ *pulumi.OutputState } + +func (LookupDnsResolverDomainListResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsResolverDomainListResult)(nil)).Elem() +} + +func (o LookupDnsResolverDomainListResultOutput) ToLookupDnsResolverDomainListResultOutput() LookupDnsResolverDomainListResultOutput { + return o +} + +func (o LookupDnsResolverDomainListResultOutput) ToLookupDnsResolverDomainListResultOutputWithContext(ctx context.Context) LookupDnsResolverDomainListResultOutput { + return o +} + +// The domains in the domain list. +func (o LookupDnsResolverDomainListResultOutput) Domains() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) []string { return v.Domains }).(pulumi.StringArrayOutput) +} + +// ETag of the DNS resolver domain list. +func (o LookupDnsResolverDomainListResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupDnsResolverDomainListResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o LookupDnsResolverDomainListResultOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupDnsResolverDomainListResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The current provisioning state of the DNS resolver domain list. This is a read-only property and any attempt to set this value will be ignored. +func (o LookupDnsResolverDomainListResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The resourceGuid property of the DNS resolver domain list resource. +func (o LookupDnsResolverDomainListResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupDnsResolverDomainListResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o LookupDnsResolverDomainListResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupDnsResolverDomainListResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverDomainListResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupDnsResolverDomainListResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicy.go new file mode 100644 index 000000000..491e60c38 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicy.go @@ -0,0 +1,147 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets properties of a DNS resolver policy. +// Azure REST API version: 2023-07-01-preview. +func LookupDnsResolverPolicy(ctx *pulumi.Context, args *LookupDnsResolverPolicyArgs, opts ...pulumi.InvokeOption) (*LookupDnsResolverPolicyResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverPolicyResult + err := ctx.Invoke("azure-native:network:getDnsResolverPolicy", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupDnsResolverPolicyArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName string `pulumi:"dnsResolverPolicyName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// Describes a DNS resolver policy. +type LookupDnsResolverPolicyResult struct { + // ETag of the DNS resolver policy. + Etag string `pulumi:"etag"` + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The geo-location where the resource lives + Location string `pulumi:"location"` + // The name of the resource + Name string `pulumi:"name"` + // The current provisioning state of the DNS resolver policy. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState string `pulumi:"provisioningState"` + // The resourceGuid property of the DNS resolver policy resource. + ResourceGuid string `pulumi:"resourceGuid"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupDnsResolverPolicyOutput(ctx *pulumi.Context, args LookupDnsResolverPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupDnsResolverPolicyResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupDnsResolverPolicyResultOutput, error) { + args := v.(LookupDnsResolverPolicyArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsResolverPolicy", args, &rv, "", opts...) + if err != nil { + return LookupDnsResolverPolicyResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupDnsResolverPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDnsResolverPolicyResultOutput), nil + } + return output, nil + }).(LookupDnsResolverPolicyResultOutput) +} + +type LookupDnsResolverPolicyOutputArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName pulumi.StringInput `pulumi:"dnsResolverPolicyName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (LookupDnsResolverPolicyOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsResolverPolicyArgs)(nil)).Elem() +} + +// Describes a DNS resolver policy. +type LookupDnsResolverPolicyResultOutput struct{ *pulumi.OutputState } + +func (LookupDnsResolverPolicyResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsResolverPolicyResult)(nil)).Elem() +} + +func (o LookupDnsResolverPolicyResultOutput) ToLookupDnsResolverPolicyResultOutput() LookupDnsResolverPolicyResultOutput { + return o +} + +func (o LookupDnsResolverPolicyResultOutput) ToLookupDnsResolverPolicyResultOutputWithContext(ctx context.Context) LookupDnsResolverPolicyResultOutput { + return o +} + +// ETag of the DNS resolver policy. +func (o LookupDnsResolverPolicyResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupDnsResolverPolicyResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o LookupDnsResolverPolicyResultOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupDnsResolverPolicyResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The current provisioning state of the DNS resolver policy. This is a read-only property and any attempt to set this value will be ignored. +func (o LookupDnsResolverPolicyResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The resourceGuid property of the DNS resolver policy resource. +func (o LookupDnsResolverPolicyResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupDnsResolverPolicyResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o LookupDnsResolverPolicyResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupDnsResolverPolicyResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupDnsResolverPolicyResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicyVirtualNetworkLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicyVirtualNetworkLink.go new file mode 100644 index 000000000..16f2dbd6c --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResolverPolicyVirtualNetworkLink.go @@ -0,0 +1,151 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets properties of a DNS resolver policy virtual network link. +// Azure REST API version: 2023-07-01-preview. +func LookupDnsResolverPolicyVirtualNetworkLink(ctx *pulumi.Context, args *LookupDnsResolverPolicyVirtualNetworkLinkArgs, opts ...pulumi.InvokeOption) (*LookupDnsResolverPolicyVirtualNetworkLinkResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverPolicyVirtualNetworkLinkResult + err := ctx.Invoke("azure-native:network:getDnsResolverPolicyVirtualNetworkLink", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupDnsResolverPolicyVirtualNetworkLinkArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName string `pulumi:"dnsResolverPolicyName"` + // The name of the DNS resolver policy virtual network link for the DNS resolver policy. + DnsResolverPolicyVirtualNetworkLinkName string `pulumi:"dnsResolverPolicyVirtualNetworkLinkName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// Describes a DNS resolver policy virtual network link. +type LookupDnsResolverPolicyVirtualNetworkLinkResult struct { + // ETag of the DNS resolver policy virtual network link. + Etag string `pulumi:"etag"` + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The geo-location where the resource lives + Location string `pulumi:"location"` + // The name of the resource + Name string `pulumi:"name"` + // The current provisioning state of the DNS resolver policy virtual network link. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState string `pulumi:"provisioningState"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` + // The reference to the virtual network. This cannot be changed after creation. + VirtualNetwork SubResourceResponse `pulumi:"virtualNetwork"` +} + +func LookupDnsResolverPolicyVirtualNetworkLinkOutput(ctx *pulumi.Context, args LookupDnsResolverPolicyVirtualNetworkLinkOutputArgs, opts ...pulumi.InvokeOption) LookupDnsResolverPolicyVirtualNetworkLinkResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupDnsResolverPolicyVirtualNetworkLinkResultOutput, error) { + args := v.(LookupDnsResolverPolicyVirtualNetworkLinkArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsResolverPolicyVirtualNetworkLinkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsResolverPolicyVirtualNetworkLink", args, &rv, "", opts...) + if err != nil { + return LookupDnsResolverPolicyVirtualNetworkLinkResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDnsResolverPolicyVirtualNetworkLinkResultOutput), nil + } + return output, nil + }).(LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) +} + +type LookupDnsResolverPolicyVirtualNetworkLinkOutputArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName pulumi.StringInput `pulumi:"dnsResolverPolicyName"` + // The name of the DNS resolver policy virtual network link for the DNS resolver policy. + DnsResolverPolicyVirtualNetworkLinkName pulumi.StringInput `pulumi:"dnsResolverPolicyVirtualNetworkLinkName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (LookupDnsResolverPolicyVirtualNetworkLinkOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsResolverPolicyVirtualNetworkLinkArgs)(nil)).Elem() +} + +// Describes a DNS resolver policy virtual network link. +type LookupDnsResolverPolicyVirtualNetworkLinkResultOutput struct{ *pulumi.OutputState } + +func (LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsResolverPolicyVirtualNetworkLinkResult)(nil)).Elem() +} + +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) ToLookupDnsResolverPolicyVirtualNetworkLinkResultOutput() LookupDnsResolverPolicyVirtualNetworkLinkResultOutput { + return o +} + +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) ToLookupDnsResolverPolicyVirtualNetworkLinkResultOutputWithContext(ctx context.Context) LookupDnsResolverPolicyVirtualNetworkLinkResultOutput { + return o +} + +// ETag of the DNS resolver policy virtual network link. +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) string { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The current provisioning state of the DNS resolver policy virtual network link. This is a read-only property and any attempt to set this value will be ignored. +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) string { return v.Type }).(pulumi.StringOutput) +} + +// The reference to the virtual network. This cannot be changed after creation. +func (o LookupDnsResolverPolicyVirtualNetworkLinkResultOutput) VirtualNetwork() SubResourceResponseOutput { + return o.ApplyT(func(v LookupDnsResolverPolicyVirtualNetworkLinkResult) SubResourceResponse { return v.VirtualNetwork }).(SubResourceResponseOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupDnsResolverPolicyVirtualNetworkLinkResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResourceReferenceByTarResources.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResourceReferenceByTarResources.go index eb7727c5e..6d043130e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResourceReferenceByTarResources.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsResourceReferenceByTarResources.go @@ -38,14 +38,20 @@ type GetDnsResourceReferenceByTarResourcesResult struct { func GetDnsResourceReferenceByTarResourcesOutput(ctx *pulumi.Context, args GetDnsResourceReferenceByTarResourcesOutputArgs, opts ...pulumi.InvokeOption) GetDnsResourceReferenceByTarResourcesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetDnsResourceReferenceByTarResourcesResult, error) { + ApplyT(func(v interface{}) (GetDnsResourceReferenceByTarResourcesResultOutput, error) { args := v.(GetDnsResourceReferenceByTarResourcesArgs) - r, err := GetDnsResourceReferenceByTarResources(ctx, &args, opts...) - var s GetDnsResourceReferenceByTarResourcesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetDnsResourceReferenceByTarResourcesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsResourceReferenceByTarResources", args, &rv, "", opts...) + if err != nil { + return GetDnsResourceReferenceByTarResourcesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetDnsResourceReferenceByTarResourcesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetDnsResourceReferenceByTarResourcesResultOutput), nil + } + return output, nil }).(GetDnsResourceReferenceByTarResourcesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsSecurityRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsSecurityRule.go new file mode 100644 index 000000000..7eaee3bb2 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDnsSecurityRule.go @@ -0,0 +1,172 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets properties of a DNS security rule for a DNS resolver policy. +// Azure REST API version: 2023-07-01-preview. +func LookupDnsSecurityRule(ctx *pulumi.Context, args *LookupDnsSecurityRuleArgs, opts ...pulumi.InvokeOption) (*LookupDnsSecurityRuleResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsSecurityRuleResult + err := ctx.Invoke("azure-native:network:getDnsSecurityRule", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupDnsSecurityRuleArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName string `pulumi:"dnsResolverPolicyName"` + // The name of the DNS security rule. + DnsSecurityRuleName string `pulumi:"dnsSecurityRuleName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// Describes a DNS security rule. +type LookupDnsSecurityRuleResult struct { + // The action to take on DNS requests that match the DNS security rule. + Action DnsSecurityRuleActionResponse `pulumi:"action"` + // DNS resolver policy domains lists that the DNS security rule applies to. + DnsResolverDomainLists []SubResourceResponse `pulumi:"dnsResolverDomainLists"` + // The state of DNS security rule. + DnsSecurityRuleState *string `pulumi:"dnsSecurityRuleState"` + // ETag of the DNS security rule. + Etag string `pulumi:"etag"` + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The geo-location where the resource lives + Location string `pulumi:"location"` + // The name of the resource + Name string `pulumi:"name"` + // The priority of the DNS security rule. + Priority int `pulumi:"priority"` + // The current provisioning state of the DNS security rule. This is a read-only property and any attempt to set this value will be ignored. + ProvisioningState string `pulumi:"provisioningState"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupDnsSecurityRuleOutput(ctx *pulumi.Context, args LookupDnsSecurityRuleOutputArgs, opts ...pulumi.InvokeOption) LookupDnsSecurityRuleResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupDnsSecurityRuleResultOutput, error) { + args := v.(LookupDnsSecurityRuleArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDnsSecurityRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDnsSecurityRule", args, &rv, "", opts...) + if err != nil { + return LookupDnsSecurityRuleResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupDnsSecurityRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDnsSecurityRuleResultOutput), nil + } + return output, nil + }).(LookupDnsSecurityRuleResultOutput) +} + +type LookupDnsSecurityRuleOutputArgs struct { + // The name of the DNS resolver policy. + DnsResolverPolicyName pulumi.StringInput `pulumi:"dnsResolverPolicyName"` + // The name of the DNS security rule. + DnsSecurityRuleName pulumi.StringInput `pulumi:"dnsSecurityRuleName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (LookupDnsSecurityRuleOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsSecurityRuleArgs)(nil)).Elem() +} + +// Describes a DNS security rule. +type LookupDnsSecurityRuleResultOutput struct{ *pulumi.OutputState } + +func (LookupDnsSecurityRuleResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDnsSecurityRuleResult)(nil)).Elem() +} + +func (o LookupDnsSecurityRuleResultOutput) ToLookupDnsSecurityRuleResultOutput() LookupDnsSecurityRuleResultOutput { + return o +} + +func (o LookupDnsSecurityRuleResultOutput) ToLookupDnsSecurityRuleResultOutputWithContext(ctx context.Context) LookupDnsSecurityRuleResultOutput { + return o +} + +// The action to take on DNS requests that match the DNS security rule. +func (o LookupDnsSecurityRuleResultOutput) Action() DnsSecurityRuleActionResponseOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) DnsSecurityRuleActionResponse { return v.Action }).(DnsSecurityRuleActionResponseOutput) +} + +// DNS resolver policy domains lists that the DNS security rule applies to. +func (o LookupDnsSecurityRuleResultOutput) DnsResolverDomainLists() SubResourceResponseArrayOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) []SubResourceResponse { return v.DnsResolverDomainLists }).(SubResourceResponseArrayOutput) +} + +// The state of DNS security rule. +func (o LookupDnsSecurityRuleResultOutput) DnsSecurityRuleState() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) *string { return v.DnsSecurityRuleState }).(pulumi.StringPtrOutput) +} + +// ETag of the DNS security rule. +func (o LookupDnsSecurityRuleResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupDnsSecurityRuleResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o LookupDnsSecurityRuleResultOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) string { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupDnsSecurityRuleResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The priority of the DNS security rule. +func (o LookupDnsSecurityRuleResultOutput) Priority() pulumi.IntOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) int { return v.Priority }).(pulumi.IntOutput) +} + +// The current provisioning state of the DNS security rule. This is a read-only property and any attempt to set this value will be ignored. +func (o LookupDnsSecurityRuleResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupDnsSecurityRuleResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o LookupDnsSecurityRuleResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupDnsSecurityRuleResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupDnsSecurityRuleResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupDnsSecurityRuleResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDscpConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDscpConfiguration.go index 5f8712523..97fedb77e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDscpConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getDscpConfiguration.go @@ -14,7 +14,7 @@ import ( // Gets a DSCP Configuration. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupDscpConfiguration(ctx *pulumi.Context, args *LookupDscpConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupDscpConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDscpConfigurationResult @@ -72,14 +72,20 @@ type LookupDscpConfigurationResult struct { func LookupDscpConfigurationOutput(ctx *pulumi.Context, args LookupDscpConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupDscpConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDscpConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupDscpConfigurationResultOutput, error) { args := v.(LookupDscpConfigurationArgs) - r, err := LookupDscpConfiguration(ctx, &args, opts...) - var s LookupDscpConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDscpConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getDscpConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupDscpConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDscpConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDscpConfigurationResultOutput), nil + } + return output, nil }).(LookupDscpConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getEndpoint.go index 5713c5acc..c4d69b492 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getEndpoint.go @@ -76,14 +76,20 @@ type LookupEndpointResult struct { func LookupEndpointOutput(ctx *pulumi.Context, args LookupEndpointOutputArgs, opts ...pulumi.InvokeOption) LookupEndpointResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupEndpointResult, error) { + ApplyT(func(v interface{}) (LookupEndpointResultOutput, error) { args := v.(LookupEndpointArgs) - r, err := LookupEndpoint(ctx, &args, opts...) - var s LookupEndpointResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupEndpointResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getEndpoint", args, &rv, "", opts...) + if err != nil { + return LookupEndpointResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupEndpointResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupEndpointResultOutput), nil + } + return output, nil }).(LookupEndpointResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExperiment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExperiment.go index 899e73782..c09c1b776 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExperiment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExperiment.go @@ -62,14 +62,20 @@ type LookupExperimentResult struct { func LookupExperimentOutput(ctx *pulumi.Context, args LookupExperimentOutputArgs, opts ...pulumi.InvokeOption) LookupExperimentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExperimentResult, error) { + ApplyT(func(v interface{}) (LookupExperimentResultOutput, error) { args := v.(LookupExperimentArgs) - r, err := LookupExperiment(ctx, &args, opts...) - var s LookupExperimentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExperimentResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExperiment", args, &rv, "", opts...) + if err != nil { + return LookupExperimentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExperimentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExperimentResultOutput), nil + } + return output, nil }).(LookupExperimentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuit.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuit.go index 47369dfdf..49d74ebcb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuit.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuit.go @@ -14,7 +14,7 @@ import ( // Gets information about the specified express route circuit. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2018-12-01, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2018-12-01, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteCircuit(ctx *pulumi.Context, args *LookupExpressRouteCircuitArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteCircuitResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteCircuitResult @@ -84,14 +84,20 @@ type LookupExpressRouteCircuitResult struct { func LookupExpressRouteCircuitOutput(ctx *pulumi.Context, args LookupExpressRouteCircuitOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteCircuitResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteCircuitResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteCircuitResultOutput, error) { args := v.(LookupExpressRouteCircuitArgs) - r, err := LookupExpressRouteCircuit(ctx, &args, opts...) - var s LookupExpressRouteCircuitResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteCircuitResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteCircuit", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteCircuitResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteCircuitResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteCircuitResultOutput), nil + } + return output, nil }).(LookupExpressRouteCircuitResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitAuthorization.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitAuthorization.go index 0aab89249..bb53452d6 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitAuthorization.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitAuthorization.go @@ -14,7 +14,7 @@ import ( // Gets the specified authorization from the specified express route circuit. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteCircuitAuthorization(ctx *pulumi.Context, args *LookupExpressRouteCircuitAuthorizationArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteCircuitAuthorizationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteCircuitAuthorizationResult @@ -54,14 +54,20 @@ type LookupExpressRouteCircuitAuthorizationResult struct { func LookupExpressRouteCircuitAuthorizationOutput(ctx *pulumi.Context, args LookupExpressRouteCircuitAuthorizationOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteCircuitAuthorizationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteCircuitAuthorizationResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteCircuitAuthorizationResultOutput, error) { args := v.(LookupExpressRouteCircuitAuthorizationArgs) - r, err := LookupExpressRouteCircuitAuthorization(ctx, &args, opts...) - var s LookupExpressRouteCircuitAuthorizationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteCircuitAuthorizationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteCircuitAuthorization", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteCircuitAuthorizationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteCircuitAuthorizationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteCircuitAuthorizationResultOutput), nil + } + return output, nil }).(LookupExpressRouteCircuitAuthorizationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitConnection.go index 576c39f88..f42052db2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitConnection.go @@ -14,7 +14,7 @@ import ( // Gets the specified Express Route Circuit Connection from the specified express route circuit. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteCircuitConnection(ctx *pulumi.Context, args *LookupExpressRouteCircuitConnectionArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteCircuitConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteCircuitConnectionResult @@ -64,14 +64,20 @@ type LookupExpressRouteCircuitConnectionResult struct { func LookupExpressRouteCircuitConnectionOutput(ctx *pulumi.Context, args LookupExpressRouteCircuitConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteCircuitConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteCircuitConnectionResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteCircuitConnectionResultOutput, error) { args := v.(LookupExpressRouteCircuitConnectionArgs) - r, err := LookupExpressRouteCircuitConnection(ctx, &args, opts...) - var s LookupExpressRouteCircuitConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteCircuitConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteCircuitConnection", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteCircuitConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteCircuitConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteCircuitConnectionResultOutput), nil + } + return output, nil }).(LookupExpressRouteCircuitConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitPeering.go index b48aadb72..604c13a27 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCircuitPeering.go @@ -14,7 +14,7 @@ import ( // Gets the specified peering for the express route circuit. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2017-09-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2017-09-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteCircuitPeering(ctx *pulumi.Context, args *LookupExpressRouteCircuitPeeringArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteCircuitPeeringResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteCircuitPeeringResult @@ -88,14 +88,20 @@ type LookupExpressRouteCircuitPeeringResult struct { func LookupExpressRouteCircuitPeeringOutput(ctx *pulumi.Context, args LookupExpressRouteCircuitPeeringOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteCircuitPeeringResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteCircuitPeeringResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteCircuitPeeringResultOutput, error) { args := v.(LookupExpressRouteCircuitPeeringArgs) - r, err := LookupExpressRouteCircuitPeering(ctx, &args, opts...) - var s LookupExpressRouteCircuitPeeringResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteCircuitPeeringResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteCircuitPeering", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteCircuitPeeringResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteCircuitPeeringResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteCircuitPeeringResultOutput), nil + } + return output, nil }).(LookupExpressRouteCircuitPeeringResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteConnection.go index caec3f716..8e99b2649 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteConnection.go @@ -14,7 +14,7 @@ import ( // Gets the specified ExpressRouteConnection. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteConnection(ctx *pulumi.Context, args *LookupExpressRouteConnectionArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteConnectionResult @@ -60,14 +60,20 @@ type LookupExpressRouteConnectionResult struct { func LookupExpressRouteConnectionOutput(ctx *pulumi.Context, args LookupExpressRouteConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteConnectionResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteConnectionResultOutput, error) { args := v.(LookupExpressRouteConnectionArgs) - r, err := LookupExpressRouteConnection(ctx, &args, opts...) - var s LookupExpressRouteConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteConnection", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteConnectionResultOutput), nil + } + return output, nil }).(LookupExpressRouteConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCrossConnectionPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCrossConnectionPeering.go index 73564c056..7229ec936 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCrossConnectionPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteCrossConnectionPeering.go @@ -14,7 +14,7 @@ import ( // Gets the specified peering for the ExpressRouteCrossConnection. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteCrossConnectionPeering(ctx *pulumi.Context, args *LookupExpressRouteCrossConnectionPeeringArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteCrossConnectionPeeringResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteCrossConnectionPeeringResult @@ -76,14 +76,20 @@ type LookupExpressRouteCrossConnectionPeeringResult struct { func LookupExpressRouteCrossConnectionPeeringOutput(ctx *pulumi.Context, args LookupExpressRouteCrossConnectionPeeringOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteCrossConnectionPeeringResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteCrossConnectionPeeringResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteCrossConnectionPeeringResultOutput, error) { args := v.(LookupExpressRouteCrossConnectionPeeringArgs) - r, err := LookupExpressRouteCrossConnectionPeering(ctx, &args, opts...) - var s LookupExpressRouteCrossConnectionPeeringResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteCrossConnectionPeeringResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteCrossConnectionPeering", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteCrossConnectionPeeringResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteCrossConnectionPeeringResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteCrossConnectionPeeringResultOutput), nil + } + return output, nil }).(LookupExpressRouteCrossConnectionPeeringResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteGateway.go index d90955382..6e8597863 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRouteGateway.go @@ -14,7 +14,7 @@ import ( // Fetches the details of a ExpressRoute gateway in a resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-03-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRouteGateway(ctx *pulumi.Context, args *LookupExpressRouteGatewayArgs, opts ...pulumi.InvokeOption) (*LookupExpressRouteGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRouteGatewayResult @@ -60,14 +60,20 @@ type LookupExpressRouteGatewayResult struct { func LookupExpressRouteGatewayOutput(ctx *pulumi.Context, args LookupExpressRouteGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRouteGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRouteGatewayResult, error) { + ApplyT(func(v interface{}) (LookupExpressRouteGatewayResultOutput, error) { args := v.(LookupExpressRouteGatewayArgs) - r, err := LookupExpressRouteGateway(ctx, &args, opts...) - var s LookupExpressRouteGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRouteGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRouteGateway", args, &rv, "", opts...) + if err != nil { + return LookupExpressRouteGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRouteGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRouteGatewayResultOutput), nil + } + return output, nil }).(LookupExpressRouteGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePort.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePort.go index fc679c239..191f93769 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePort.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePort.go @@ -14,7 +14,7 @@ import ( // Retrieves the requested ExpressRoutePort resource. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRoutePort(ctx *pulumi.Context, args *LookupExpressRoutePortArgs, opts ...pulumi.InvokeOption) (*LookupExpressRoutePortResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRoutePortResult @@ -76,14 +76,20 @@ type LookupExpressRoutePortResult struct { func LookupExpressRoutePortOutput(ctx *pulumi.Context, args LookupExpressRoutePortOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRoutePortResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRoutePortResult, error) { + ApplyT(func(v interface{}) (LookupExpressRoutePortResultOutput, error) { args := v.(LookupExpressRoutePortArgs) - r, err := LookupExpressRoutePort(ctx, &args, opts...) - var s LookupExpressRoutePortResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRoutePortResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRoutePort", args, &rv, "", opts...) + if err != nil { + return LookupExpressRoutePortResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRoutePortResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRoutePortResultOutput), nil + } + return output, nil }).(LookupExpressRoutePortResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePortAuthorization.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePortAuthorization.go index a8304ef3e..244f66256 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePortAuthorization.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getExpressRoutePortAuthorization.go @@ -14,7 +14,7 @@ import ( // Gets the specified authorization from the specified express route port. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupExpressRoutePortAuthorization(ctx *pulumi.Context, args *LookupExpressRoutePortAuthorizationArgs, opts ...pulumi.InvokeOption) (*LookupExpressRoutePortAuthorizationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupExpressRoutePortAuthorizationResult @@ -56,14 +56,20 @@ type LookupExpressRoutePortAuthorizationResult struct { func LookupExpressRoutePortAuthorizationOutput(ctx *pulumi.Context, args LookupExpressRoutePortAuthorizationOutputArgs, opts ...pulumi.InvokeOption) LookupExpressRoutePortAuthorizationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupExpressRoutePortAuthorizationResult, error) { + ApplyT(func(v interface{}) (LookupExpressRoutePortAuthorizationResultOutput, error) { args := v.(LookupExpressRoutePortAuthorizationArgs) - r, err := LookupExpressRoutePortAuthorization(ctx, &args, opts...) - var s LookupExpressRoutePortAuthorizationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupExpressRoutePortAuthorizationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getExpressRoutePortAuthorization", args, &rv, "", opts...) + if err != nil { + return LookupExpressRoutePortAuthorizationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupExpressRoutePortAuthorizationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupExpressRoutePortAuthorizationResultOutput), nil + } + return output, nil }).(LookupExpressRoutePortAuthorizationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicy.go index 56f1a6f3e..8bcc0e998 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicy.go @@ -14,7 +14,7 @@ import ( // Gets the specified Firewall Policy. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2020-04-01, 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2020-04-01, 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupFirewallPolicy(ctx *pulumi.Context, args *LookupFirewallPolicyArgs, opts ...pulumi.InvokeOption) (*LookupFirewallPolicyResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupFirewallPolicyResult @@ -84,14 +84,20 @@ type LookupFirewallPolicyResult struct { func LookupFirewallPolicyOutput(ctx *pulumi.Context, args LookupFirewallPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallPolicyResult, error) { + ApplyT(func(v interface{}) (LookupFirewallPolicyResultOutput, error) { args := v.(LookupFirewallPolicyArgs) - r, err := LookupFirewallPolicy(ctx, &args, opts...) - var s LookupFirewallPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFirewallPolicy", args, &rv, "", opts...) + if err != nil { + return LookupFirewallPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallPolicyResultOutput), nil + } + return output, nil }).(LookupFirewallPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyDraft.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyDraft.go index 23f9720dd..ba9b106e3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyDraft.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyDraft.go @@ -13,6 +13,8 @@ import ( // Get a draft Firewall Policy. // Azure REST API version: 2023-11-01. +// +// Other available API versions: 2024-01-01, 2024-03-01. func LookupFirewallPolicyDraft(ctx *pulumi.Context, args *LookupFirewallPolicyDraftArgs, opts ...pulumi.InvokeOption) (*LookupFirewallPolicyDraftResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupFirewallPolicyDraftResult @@ -64,14 +66,20 @@ type LookupFirewallPolicyDraftResult struct { func LookupFirewallPolicyDraftOutput(ctx *pulumi.Context, args LookupFirewallPolicyDraftOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallPolicyDraftResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallPolicyDraftResult, error) { + ApplyT(func(v interface{}) (LookupFirewallPolicyDraftResultOutput, error) { args := v.(LookupFirewallPolicyDraftArgs) - r, err := LookupFirewallPolicyDraft(ctx, &args, opts...) - var s LookupFirewallPolicyDraftResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallPolicyDraftResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFirewallPolicyDraft", args, &rv, "", opts...) + if err != nil { + return LookupFirewallPolicyDraftResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallPolicyDraftResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallPolicyDraftResultOutput), nil + } + return output, nil }).(LookupFirewallPolicyDraftResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroup.go index b5745f4e4..98d9984e6 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroup.go @@ -14,7 +14,7 @@ import ( // Gets the specified FirewallPolicyRuleCollectionGroup. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupFirewallPolicyRuleCollectionGroup(ctx *pulumi.Context, args *LookupFirewallPolicyRuleCollectionGroupArgs, opts ...pulumi.InvokeOption) (*LookupFirewallPolicyRuleCollectionGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupFirewallPolicyRuleCollectionGroupResult @@ -54,14 +54,20 @@ type LookupFirewallPolicyRuleCollectionGroupResult struct { func LookupFirewallPolicyRuleCollectionGroupOutput(ctx *pulumi.Context, args LookupFirewallPolicyRuleCollectionGroupOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallPolicyRuleCollectionGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallPolicyRuleCollectionGroupResult, error) { + ApplyT(func(v interface{}) (LookupFirewallPolicyRuleCollectionGroupResultOutput, error) { args := v.(LookupFirewallPolicyRuleCollectionGroupArgs) - r, err := LookupFirewallPolicyRuleCollectionGroup(ctx, &args, opts...) - var s LookupFirewallPolicyRuleCollectionGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallPolicyRuleCollectionGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFirewallPolicyRuleCollectionGroup", args, &rv, "", opts...) + if err != nil { + return LookupFirewallPolicyRuleCollectionGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallPolicyRuleCollectionGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallPolicyRuleCollectionGroupResultOutput), nil + } + return output, nil }).(LookupFirewallPolicyRuleCollectionGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroupDraft.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroupDraft.go index 9f7bc308a..6382fb564 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroupDraft.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleCollectionGroupDraft.go @@ -13,6 +13,8 @@ import ( // Get Rule Collection Group Draft. // Azure REST API version: 2023-11-01. +// +// Other available API versions: 2024-01-01, 2024-03-01. func LookupFirewallPolicyRuleCollectionGroupDraft(ctx *pulumi.Context, args *LookupFirewallPolicyRuleCollectionGroupDraftArgs, opts ...pulumi.InvokeOption) (*LookupFirewallPolicyRuleCollectionGroupDraftResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupFirewallPolicyRuleCollectionGroupDraftResult @@ -50,14 +52,20 @@ type LookupFirewallPolicyRuleCollectionGroupDraftResult struct { func LookupFirewallPolicyRuleCollectionGroupDraftOutput(ctx *pulumi.Context, args LookupFirewallPolicyRuleCollectionGroupDraftOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallPolicyRuleCollectionGroupDraftResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallPolicyRuleCollectionGroupDraftResult, error) { + ApplyT(func(v interface{}) (LookupFirewallPolicyRuleCollectionGroupDraftResultOutput, error) { args := v.(LookupFirewallPolicyRuleCollectionGroupDraftArgs) - r, err := LookupFirewallPolicyRuleCollectionGroupDraft(ctx, &args, opts...) - var s LookupFirewallPolicyRuleCollectionGroupDraftResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallPolicyRuleCollectionGroupDraftResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFirewallPolicyRuleCollectionGroupDraft", args, &rv, "", opts...) + if err != nil { + return LookupFirewallPolicyRuleCollectionGroupDraftResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallPolicyRuleCollectionGroupDraftResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallPolicyRuleCollectionGroupDraftResultOutput), nil + } + return output, nil }).(LookupFirewallPolicyRuleCollectionGroupDraftResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleGroup.go index 2755bf25a..fc03be854 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFirewallPolicyRuleGroup.go @@ -52,14 +52,20 @@ type LookupFirewallPolicyRuleGroupResult struct { func LookupFirewallPolicyRuleGroupOutput(ctx *pulumi.Context, args LookupFirewallPolicyRuleGroupOutputArgs, opts ...pulumi.InvokeOption) LookupFirewallPolicyRuleGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFirewallPolicyRuleGroupResult, error) { + ApplyT(func(v interface{}) (LookupFirewallPolicyRuleGroupResultOutput, error) { args := v.(LookupFirewallPolicyRuleGroupArgs) - r, err := LookupFirewallPolicyRuleGroup(ctx, &args, opts...) - var s LookupFirewallPolicyRuleGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFirewallPolicyRuleGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFirewallPolicyRuleGroup", args, &rv, "", opts...) + if err != nil { + return LookupFirewallPolicyRuleGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFirewallPolicyRuleGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFirewallPolicyRuleGroupResultOutput), nil + } + return output, nil }).(LookupFirewallPolicyRuleGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFlowLog.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFlowLog.go index ee89960f1..34e025093 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFlowLog.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFlowLog.go @@ -14,7 +14,7 @@ import ( // Gets a flow log resource by name. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupFlowLog(ctx *pulumi.Context, args *LookupFlowLogArgs, opts ...pulumi.InvokeOption) (*LookupFlowLogResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupFlowLogResult @@ -81,14 +81,20 @@ func (val *LookupFlowLogResult) Defaults() *LookupFlowLogResult { func LookupFlowLogOutput(ctx *pulumi.Context, args LookupFlowLogOutputArgs, opts ...pulumi.InvokeOption) LookupFlowLogResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFlowLogResult, error) { + ApplyT(func(v interface{}) (LookupFlowLogResultOutput, error) { args := v.(LookupFlowLogArgs) - r, err := LookupFlowLog(ctx, &args, opts...) - var s LookupFlowLogResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFlowLogResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFlowLog", args, &rv, "", opts...) + if err != nil { + return LookupFlowLogResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFlowLogResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFlowLogResultOutput), nil + } + return output, nil }).(LookupFlowLogResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getForwardingRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getForwardingRule.go index c9fd31619..9c32d5ebd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getForwardingRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getForwardingRule.go @@ -13,6 +13,8 @@ import ( // Gets properties of a forwarding rule in a DNS forwarding ruleset. // Azure REST API version: 2022-07-01. +// +// Other available API versions: 2023-07-01-preview. func LookupForwardingRule(ctx *pulumi.Context, args *LookupForwardingRuleArgs, opts ...pulumi.InvokeOption) (*LookupForwardingRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupForwardingRuleResult @@ -58,14 +60,20 @@ type LookupForwardingRuleResult struct { func LookupForwardingRuleOutput(ctx *pulumi.Context, args LookupForwardingRuleOutputArgs, opts ...pulumi.InvokeOption) LookupForwardingRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupForwardingRuleResult, error) { + ApplyT(func(v interface{}) (LookupForwardingRuleResultOutput, error) { args := v.(LookupForwardingRuleArgs) - r, err := LookupForwardingRule(ctx, &args, opts...) - var s LookupForwardingRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupForwardingRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getForwardingRule", args, &rv, "", opts...) + if err != nil { + return LookupForwardingRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupForwardingRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupForwardingRuleResultOutput), nil + } + return output, nil }).(LookupForwardingRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFrontDoor.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFrontDoor.go index f067f5129..3517034a4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFrontDoor.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getFrontDoor.go @@ -85,14 +85,20 @@ func (val *LookupFrontDoorResult) Defaults() *LookupFrontDoorResult { func LookupFrontDoorOutput(ctx *pulumi.Context, args LookupFrontDoorOutputArgs, opts ...pulumi.InvokeOption) LookupFrontDoorResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFrontDoorResult, error) { + ApplyT(func(v interface{}) (LookupFrontDoorResultOutput, error) { args := v.(LookupFrontDoorArgs) - r, err := LookupFrontDoor(ctx, &args, opts...) - var s LookupFrontDoorResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFrontDoorResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getFrontDoor", args, &rv, "", opts...) + if err != nil { + return LookupFrontDoorResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFrontDoorResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFrontDoorResultOutput), nil + } + return output, nil }).(LookupFrontDoorResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubRouteTable.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubRouteTable.go index e9cdac2f0..999e330c7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubRouteTable.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubRouteTable.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a RouteTable. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupHubRouteTable(ctx *pulumi.Context, args *LookupHubRouteTableArgs, opts ...pulumi.InvokeOption) (*LookupHubRouteTableResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupHubRouteTableResult @@ -58,14 +58,20 @@ type LookupHubRouteTableResult struct { func LookupHubRouteTableOutput(ctx *pulumi.Context, args LookupHubRouteTableOutputArgs, opts ...pulumi.InvokeOption) LookupHubRouteTableResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupHubRouteTableResult, error) { + ApplyT(func(v interface{}) (LookupHubRouteTableResultOutput, error) { args := v.(LookupHubRouteTableArgs) - r, err := LookupHubRouteTable(ctx, &args, opts...) - var s LookupHubRouteTableResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupHubRouteTableResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getHubRouteTable", args, &rv, "", opts...) + if err != nil { + return LookupHubRouteTableResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupHubRouteTableResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupHubRouteTableResultOutput), nil + } + return output, nil }).(LookupHubRouteTableResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubVirtualNetworkConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubVirtualNetworkConnection.go index 924d10b17..960a18a0b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubVirtualNetworkConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getHubVirtualNetworkConnection.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a HubVirtualNetworkConnection. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupHubVirtualNetworkConnection(ctx *pulumi.Context, args *LookupHubVirtualNetworkConnectionArgs, opts ...pulumi.InvokeOption) (*LookupHubVirtualNetworkConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupHubVirtualNetworkConnectionResult @@ -58,14 +58,20 @@ type LookupHubVirtualNetworkConnectionResult struct { func LookupHubVirtualNetworkConnectionOutput(ctx *pulumi.Context, args LookupHubVirtualNetworkConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupHubVirtualNetworkConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupHubVirtualNetworkConnectionResult, error) { + ApplyT(func(v interface{}) (LookupHubVirtualNetworkConnectionResultOutput, error) { args := v.(LookupHubVirtualNetworkConnectionArgs) - r, err := LookupHubVirtualNetworkConnection(ctx, &args, opts...) - var s LookupHubVirtualNetworkConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupHubVirtualNetworkConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getHubVirtualNetworkConnection", args, &rv, "", opts...) + if err != nil { + return LookupHubVirtualNetworkConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupHubVirtualNetworkConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupHubVirtualNetworkConnectionResultOutput), nil + } + return output, nil }).(LookupHubVirtualNetworkConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundEndpoint.go index c1752736e..eafa78f82 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundEndpoint.go @@ -14,7 +14,7 @@ import ( // Gets properties of an inbound endpoint for a DNS resolver. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. func LookupInboundEndpoint(ctx *pulumi.Context, args *LookupInboundEndpointArgs, opts ...pulumi.InvokeOption) (*LookupInboundEndpointResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupInboundEndpointResult @@ -60,14 +60,20 @@ type LookupInboundEndpointResult struct { func LookupInboundEndpointOutput(ctx *pulumi.Context, args LookupInboundEndpointOutputArgs, opts ...pulumi.InvokeOption) LookupInboundEndpointResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupInboundEndpointResult, error) { + ApplyT(func(v interface{}) (LookupInboundEndpointResultOutput, error) { args := v.(LookupInboundEndpointArgs) - r, err := LookupInboundEndpoint(ctx, &args, opts...) - var s LookupInboundEndpointResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupInboundEndpointResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getInboundEndpoint", args, &rv, "", opts...) + if err != nil { + return LookupInboundEndpointResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupInboundEndpointResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupInboundEndpointResultOutput), nil + } + return output, nil }).(LookupInboundEndpointResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundNatRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundNatRule.go index f2aeab285..d8a888b42 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundNatRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInboundNatRule.go @@ -14,7 +14,7 @@ import ( // Gets the specified load balancer inbound NAT rule. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupInboundNatRule(ctx *pulumi.Context, args *LookupInboundNatRuleArgs, opts ...pulumi.InvokeOption) (*LookupInboundNatRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupInboundNatRuleResult @@ -85,14 +85,20 @@ func (val *LookupInboundNatRuleResult) Defaults() *LookupInboundNatRuleResult { func LookupInboundNatRuleOutput(ctx *pulumi.Context, args LookupInboundNatRuleOutputArgs, opts ...pulumi.InvokeOption) LookupInboundNatRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupInboundNatRuleResult, error) { + ApplyT(func(v interface{}) (LookupInboundNatRuleResultOutput, error) { args := v.(LookupInboundNatRuleArgs) - r, err := LookupInboundNatRule(ctx, &args, opts...) - var s LookupInboundNatRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupInboundNatRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getInboundNatRule", args, &rv, "", opts...) + if err != nil { + return LookupInboundNatRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupInboundNatRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupInboundNatRuleResultOutput), nil + } + return output, nil }).(LookupInboundNatRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInterfaceEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInterfaceEndpoint.go index 5cd652366..942ae77af 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInterfaceEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getInterfaceEndpoint.go @@ -73,14 +73,20 @@ func (val *LookupInterfaceEndpointResult) Defaults() *LookupInterfaceEndpointRes func LookupInterfaceEndpointOutput(ctx *pulumi.Context, args LookupInterfaceEndpointOutputArgs, opts ...pulumi.InvokeOption) LookupInterfaceEndpointResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupInterfaceEndpointResult, error) { + ApplyT(func(v interface{}) (LookupInterfaceEndpointResultOutput, error) { args := v.(LookupInterfaceEndpointArgs) - r, err := LookupInterfaceEndpoint(ctx, &args, opts...) - var s LookupInterfaceEndpointResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupInterfaceEndpointResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getInterfaceEndpoint", args, &rv, "", opts...) + if err != nil { + return LookupInterfaceEndpointResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupInterfaceEndpointResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupInterfaceEndpointResultOutput), nil + } + return output, nil }).(LookupInterfaceEndpointResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpAllocation.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpAllocation.go index 7d9360e78..e2fb8c88c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpAllocation.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpAllocation.go @@ -14,7 +14,7 @@ import ( // Gets the specified IpAllocation by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupIpAllocation(ctx *pulumi.Context, args *LookupIpAllocationArgs, opts ...pulumi.InvokeOption) (*LookupIpAllocationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupIpAllocationResult @@ -79,14 +79,20 @@ func (val *LookupIpAllocationResult) Defaults() *LookupIpAllocationResult { func LookupIpAllocationOutput(ctx *pulumi.Context, args LookupIpAllocationOutputArgs, opts ...pulumi.InvokeOption) LookupIpAllocationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupIpAllocationResult, error) { + ApplyT(func(v interface{}) (LookupIpAllocationResultOutput, error) { args := v.(LookupIpAllocationArgs) - r, err := LookupIpAllocation(ctx, &args, opts...) - var s LookupIpAllocationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupIpAllocationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getIpAllocation", args, &rv, "", opts...) + if err != nil { + return LookupIpAllocationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupIpAllocationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupIpAllocationResultOutput), nil + } + return output, nil }).(LookupIpAllocationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpGroup.go index dfa150911..817e70161 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpGroup.go @@ -14,7 +14,7 @@ import ( // Gets the specified ipGroups. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupIpGroup(ctx *pulumi.Context, args *LookupIpGroupArgs, opts ...pulumi.InvokeOption) (*LookupIpGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupIpGroupResult @@ -60,14 +60,20 @@ type LookupIpGroupResult struct { func LookupIpGroupOutput(ctx *pulumi.Context, args LookupIpGroupOutputArgs, opts ...pulumi.InvokeOption) LookupIpGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupIpGroupResult, error) { + ApplyT(func(v interface{}) (LookupIpGroupResultOutput, error) { args := v.(LookupIpGroupArgs) - r, err := LookupIpGroup(ctx, &args, opts...) - var s LookupIpGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupIpGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getIpGroup", args, &rv, "", opts...) + if err != nil { + return LookupIpGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupIpGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupIpGroupResultOutput), nil + } + return output, nil }).(LookupIpGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPool.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPool.go new file mode 100644 index 000000000..85d0ae156 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPool.go @@ -0,0 +1,137 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Instance of Pool resource. +// Azure REST API version: 2024-01-01-preview. +func LookupIpamPool(ctx *pulumi.Context, args *LookupIpamPoolArgs, opts ...pulumi.InvokeOption) (*LookupIpamPoolResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupIpamPoolResult + err := ctx.Invoke("azure-native:network:getIpamPool", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupIpamPoolArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Pool resource name. + PoolName string `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// Instance of Pool resource. +type LookupIpamPoolResult struct { + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The geo-location where the resource lives + Location string `pulumi:"location"` + // The name of the resource + Name string `pulumi:"name"` + // Properties of IpamPool resource properties which are specific to the Pool resource. + Properties IpamPoolPropertiesResponse `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupIpamPoolOutput(ctx *pulumi.Context, args LookupIpamPoolOutputArgs, opts ...pulumi.InvokeOption) LookupIpamPoolResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupIpamPoolResultOutput, error) { + args := v.(LookupIpamPoolArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupIpamPoolResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getIpamPool", args, &rv, "", opts...) + if err != nil { + return LookupIpamPoolResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupIpamPoolResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupIpamPoolResultOutput), nil + } + return output, nil + }).(LookupIpamPoolResultOutput) +} + +type LookupIpamPoolOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // Pool resource name. + PoolName pulumi.StringInput `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (LookupIpamPoolOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupIpamPoolArgs)(nil)).Elem() +} + +// Instance of Pool resource. +type LookupIpamPoolResultOutput struct{ *pulumi.OutputState } + +func (LookupIpamPoolResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupIpamPoolResult)(nil)).Elem() +} + +func (o LookupIpamPoolResultOutput) ToLookupIpamPoolResultOutput() LookupIpamPoolResultOutput { + return o +} + +func (o LookupIpamPoolResultOutput) ToLookupIpamPoolResultOutputWithContext(ctx context.Context) LookupIpamPoolResultOutput { + return o +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupIpamPoolResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupIpamPoolResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o LookupIpamPoolResultOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v LookupIpamPoolResult) string { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupIpamPoolResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupIpamPoolResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Properties of IpamPool resource properties which are specific to the Pool resource. +func (o LookupIpamPoolResultOutput) Properties() IpamPoolPropertiesResponseOutput { + return o.ApplyT(func(v LookupIpamPoolResult) IpamPoolPropertiesResponse { return v.Properties }).(IpamPoolPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupIpamPoolResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupIpamPoolResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o LookupIpamPoolResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupIpamPoolResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupIpamPoolResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupIpamPoolResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupIpamPoolResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPoolUsage.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPoolUsage.go new file mode 100644 index 000000000..3a1b40eab --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getIpamPoolUsage.go @@ -0,0 +1,151 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// IpamPool usage information. +// Azure REST API version: 2024-01-01-preview. +func GetIpamPoolUsage(ctx *pulumi.Context, args *GetIpamPoolUsageArgs, opts ...pulumi.InvokeOption) (*GetIpamPoolUsageResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetIpamPoolUsageResult + err := ctx.Invoke("azure-native:network:getIpamPoolUsage", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type GetIpamPoolUsageArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Pool resource name. + PoolName string `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// IpamPool usage information. +type GetIpamPoolUsageResult struct { + // List of IP address prefixes of the resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + // List of assigned IP address prefixes. + AllocatedAddressPrefixes []string `pulumi:"allocatedAddressPrefixes"` + // List of available IP address prefixes. + AvailableAddressPrefixes []string `pulumi:"availableAddressPrefixes"` + // List of IpamPool that are children of this IpamPool. + ChildPools []ResourceBasicsResponse `pulumi:"childPools"` + // Total number of assigned IP addresses in the IpamPool. + NumberOfAllocatedIPAddresses string `pulumi:"numberOfAllocatedIPAddresses"` + // Total number of available IP addresses in the IpamPool. + NumberOfAvailableIPAddresses string `pulumi:"numberOfAvailableIPAddresses"` + // Total number of reserved IP addresses in the IpamPool. + NumberOfReservedIPAddresses string `pulumi:"numberOfReservedIPAddresses"` + // List of reserved IP address prefixes. These IP addresses could be reclaimed if not assigned in the given time. + ReservedAddressPrefixes []string `pulumi:"reservedAddressPrefixes"` + // Total number of IP addresses managed in the IpamPool. + TotalNumberOfIPAddresses string `pulumi:"totalNumberOfIPAddresses"` +} + +func GetIpamPoolUsageOutput(ctx *pulumi.Context, args GetIpamPoolUsageOutputArgs, opts ...pulumi.InvokeOption) GetIpamPoolUsageResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (GetIpamPoolUsageResultOutput, error) { + args := v.(GetIpamPoolUsageArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetIpamPoolUsageResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getIpamPoolUsage", args, &rv, "", opts...) + if err != nil { + return GetIpamPoolUsageResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(GetIpamPoolUsageResultOutput) + if secret { + return pulumi.ToSecret(output).(GetIpamPoolUsageResultOutput), nil + } + return output, nil + }).(GetIpamPoolUsageResultOutput) +} + +type GetIpamPoolUsageOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // Pool resource name. + PoolName pulumi.StringInput `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (GetIpamPoolUsageOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*GetIpamPoolUsageArgs)(nil)).Elem() +} + +// IpamPool usage information. +type GetIpamPoolUsageResultOutput struct{ *pulumi.OutputState } + +func (GetIpamPoolUsageResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*GetIpamPoolUsageResult)(nil)).Elem() +} + +func (o GetIpamPoolUsageResultOutput) ToGetIpamPoolUsageResultOutput() GetIpamPoolUsageResultOutput { + return o +} + +func (o GetIpamPoolUsageResultOutput) ToGetIpamPoolUsageResultOutputWithContext(ctx context.Context) GetIpamPoolUsageResultOutput { + return o +} + +// List of IP address prefixes of the resource. +func (o GetIpamPoolUsageResultOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +// List of assigned IP address prefixes. +func (o GetIpamPoolUsageResultOutput) AllocatedAddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) []string { return v.AllocatedAddressPrefixes }).(pulumi.StringArrayOutput) +} + +// List of available IP address prefixes. +func (o GetIpamPoolUsageResultOutput) AvailableAddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) []string { return v.AvailableAddressPrefixes }).(pulumi.StringArrayOutput) +} + +// List of IpamPool that are children of this IpamPool. +func (o GetIpamPoolUsageResultOutput) ChildPools() ResourceBasicsResponseArrayOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) []ResourceBasicsResponse { return v.ChildPools }).(ResourceBasicsResponseArrayOutput) +} + +// Total number of assigned IP addresses in the IpamPool. +func (o GetIpamPoolUsageResultOutput) NumberOfAllocatedIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) string { return v.NumberOfAllocatedIPAddresses }).(pulumi.StringOutput) +} + +// Total number of available IP addresses in the IpamPool. +func (o GetIpamPoolUsageResultOutput) NumberOfAvailableIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) string { return v.NumberOfAvailableIPAddresses }).(pulumi.StringOutput) +} + +// Total number of reserved IP addresses in the IpamPool. +func (o GetIpamPoolUsageResultOutput) NumberOfReservedIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) string { return v.NumberOfReservedIPAddresses }).(pulumi.StringOutput) +} + +// List of reserved IP address prefixes. These IP addresses could be reclaimed if not assigned in the given time. +func (o GetIpamPoolUsageResultOutput) ReservedAddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) []string { return v.ReservedAddressPrefixes }).(pulumi.StringArrayOutput) +} + +// Total number of IP addresses managed in the IpamPool. +func (o GetIpamPoolUsageResultOutput) TotalNumberOfIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v GetIpamPoolUsageResult) string { return v.TotalNumberOfIPAddresses }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(GetIpamPoolUsageResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancer.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancer.go index b6c87c088..63bd9d57c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancer.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancer.go @@ -14,7 +14,7 @@ import ( // Gets the specified load balancer. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2018-06-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2018-06-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupLoadBalancer(ctx *pulumi.Context, args *LookupLoadBalancerArgs, opts ...pulumi.InvokeOption) (*LookupLoadBalancerResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupLoadBalancerResult @@ -74,14 +74,20 @@ type LookupLoadBalancerResult struct { func LookupLoadBalancerOutput(ctx *pulumi.Context, args LookupLoadBalancerOutputArgs, opts ...pulumi.InvokeOption) LookupLoadBalancerResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLoadBalancerResult, error) { + ApplyT(func(v interface{}) (LookupLoadBalancerResultOutput, error) { args := v.(LookupLoadBalancerArgs) - r, err := LookupLoadBalancer(ctx, &args, opts...) - var s LookupLoadBalancerResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupLoadBalancerResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getLoadBalancer", args, &rv, "", opts...) + if err != nil { + return LookupLoadBalancerResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupLoadBalancerResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupLoadBalancerResultOutput), nil + } + return output, nil }).(LookupLoadBalancerResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancerBackendAddressPool.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancerBackendAddressPool.go index 730275e5a..b27ffd018 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancerBackendAddressPool.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLoadBalancerBackendAddressPool.go @@ -14,7 +14,7 @@ import ( // Gets load balancer backend address pool. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupLoadBalancerBackendAddressPool(ctx *pulumi.Context, args *LookupLoadBalancerBackendAddressPoolArgs, opts ...pulumi.InvokeOption) (*LookupLoadBalancerBackendAddressPoolResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupLoadBalancerBackendAddressPoolResult @@ -70,14 +70,20 @@ type LookupLoadBalancerBackendAddressPoolResult struct { func LookupLoadBalancerBackendAddressPoolOutput(ctx *pulumi.Context, args LookupLoadBalancerBackendAddressPoolOutputArgs, opts ...pulumi.InvokeOption) LookupLoadBalancerBackendAddressPoolResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLoadBalancerBackendAddressPoolResult, error) { + ApplyT(func(v interface{}) (LookupLoadBalancerBackendAddressPoolResultOutput, error) { args := v.(LookupLoadBalancerBackendAddressPoolArgs) - r, err := LookupLoadBalancerBackendAddressPool(ctx, &args, opts...) - var s LookupLoadBalancerBackendAddressPoolResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupLoadBalancerBackendAddressPoolResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getLoadBalancerBackendAddressPool", args, &rv, "", opts...) + if err != nil { + return LookupLoadBalancerBackendAddressPoolResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupLoadBalancerBackendAddressPoolResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupLoadBalancerBackendAddressPoolResultOutput), nil + } + return output, nil }).(LookupLoadBalancerBackendAddressPoolResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLocalNetworkGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLocalNetworkGateway.go index 0d832d221..c2cedfa03 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLocalNetworkGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getLocalNetworkGateway.go @@ -14,7 +14,7 @@ import ( // Gets the specified local network gateway in a resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupLocalNetworkGateway(ctx *pulumi.Context, args *LookupLocalNetworkGatewayArgs, opts ...pulumi.InvokeOption) (*LookupLocalNetworkGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupLocalNetworkGatewayResult @@ -62,14 +62,20 @@ type LookupLocalNetworkGatewayResult struct { func LookupLocalNetworkGatewayOutput(ctx *pulumi.Context, args LookupLocalNetworkGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupLocalNetworkGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLocalNetworkGatewayResult, error) { + ApplyT(func(v interface{}) (LookupLocalNetworkGatewayResultOutput, error) { args := v.(LookupLocalNetworkGatewayArgs) - r, err := LookupLocalNetworkGateway(ctx, &args, opts...) - var s LookupLocalNetworkGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupLocalNetworkGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getLocalNetworkGateway", args, &rv, "", opts...) + if err != nil { + return LookupLocalNetworkGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupLocalNetworkGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupLocalNetworkGatewayResultOutput), nil + } + return output, nil }).(LookupLocalNetworkGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getManagementGroupNetworkManagerConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getManagementGroupNetworkManagerConnection.go index bdc186728..cd028b74b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getManagementGroupNetworkManagerConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getManagementGroupNetworkManagerConnection.go @@ -14,7 +14,7 @@ import ( // Get a specified connection created by this management group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupManagementGroupNetworkManagerConnection(ctx *pulumi.Context, args *LookupManagementGroupNetworkManagerConnectionArgs, opts ...pulumi.InvokeOption) (*LookupManagementGroupNetworkManagerConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupManagementGroupNetworkManagerConnectionResult @@ -52,14 +52,20 @@ type LookupManagementGroupNetworkManagerConnectionResult struct { func LookupManagementGroupNetworkManagerConnectionOutput(ctx *pulumi.Context, args LookupManagementGroupNetworkManagerConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupManagementGroupNetworkManagerConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagementGroupNetworkManagerConnectionResult, error) { + ApplyT(func(v interface{}) (LookupManagementGroupNetworkManagerConnectionResultOutput, error) { args := v.(LookupManagementGroupNetworkManagerConnectionArgs) - r, err := LookupManagementGroupNetworkManagerConnection(ctx, &args, opts...) - var s LookupManagementGroupNetworkManagerConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagementGroupNetworkManagerConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getManagementGroupNetworkManagerConnection", args, &rv, "", opts...) + if err != nil { + return LookupManagementGroupNetworkManagerConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupManagementGroupNetworkManagerConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagementGroupNetworkManagerConnectionResultOutput), nil + } + return output, nil }).(LookupManagementGroupNetworkManagerConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatGateway.go index 6cf9b2452..2c0e98429 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatGateway.go @@ -14,7 +14,7 @@ import ( // Gets the specified nat gateway in a specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNatGateway(ctx *pulumi.Context, args *LookupNatGatewayArgs, opts ...pulumi.InvokeOption) (*LookupNatGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNatGatewayResult @@ -68,14 +68,20 @@ type LookupNatGatewayResult struct { func LookupNatGatewayOutput(ctx *pulumi.Context, args LookupNatGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupNatGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNatGatewayResult, error) { + ApplyT(func(v interface{}) (LookupNatGatewayResultOutput, error) { args := v.(LookupNatGatewayArgs) - r, err := LookupNatGateway(ctx, &args, opts...) - var s LookupNatGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNatGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNatGateway", args, &rv, "", opts...) + if err != nil { + return LookupNatGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNatGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNatGatewayResultOutput), nil + } + return output, nil }).(LookupNatGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatRule.go index ca98d032b..366ef1b31 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNatRule.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a nat ruleGet. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNatRule(ctx *pulumi.Context, args *LookupNatRuleArgs, opts ...pulumi.InvokeOption) (*LookupNatRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNatRuleResult @@ -62,14 +62,20 @@ type LookupNatRuleResult struct { func LookupNatRuleOutput(ctx *pulumi.Context, args LookupNatRuleOutputArgs, opts ...pulumi.InvokeOption) LookupNatRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNatRuleResult, error) { + ApplyT(func(v interface{}) (LookupNatRuleResultOutput, error) { args := v.(LookupNatRuleArgs) - r, err := LookupNatRule(ctx, &args, opts...) - var s LookupNatRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNatRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNatRule", args, &rv, "", opts...) + if err != nil { + return LookupNatRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNatRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNatRuleResultOutput), nil + } + return output, nil }).(LookupNatRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkExperimentProfile.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkExperimentProfile.go index cb7bc4339..d09199bda 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkExperimentProfile.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkExperimentProfile.go @@ -52,14 +52,20 @@ type LookupNetworkExperimentProfileResult struct { func LookupNetworkExperimentProfileOutput(ctx *pulumi.Context, args LookupNetworkExperimentProfileOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkExperimentProfileResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkExperimentProfileResult, error) { + ApplyT(func(v interface{}) (LookupNetworkExperimentProfileResultOutput, error) { args := v.(LookupNetworkExperimentProfileArgs) - r, err := LookupNetworkExperimentProfile(ctx, &args, opts...) - var s LookupNetworkExperimentProfileResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkExperimentProfileResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkExperimentProfile", args, &rv, "", opts...) + if err != nil { + return LookupNetworkExperimentProfileResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkExperimentProfileResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkExperimentProfileResultOutput), nil + } + return output, nil }).(LookupNetworkExperimentProfileResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkGroup.go index 894dce6d5..da73c7d3c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkGroup.go @@ -14,7 +14,7 @@ import ( // Gets the specified network group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkGroup(ctx *pulumi.Context, args *LookupNetworkGroupArgs, opts ...pulumi.InvokeOption) (*LookupNetworkGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkGroupResult @@ -56,14 +56,20 @@ type LookupNetworkGroupResult struct { func LookupNetworkGroupOutput(ctx *pulumi.Context, args LookupNetworkGroupOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkGroupResult, error) { + ApplyT(func(v interface{}) (LookupNetworkGroupResultOutput, error) { args := v.(LookupNetworkGroupArgs) - r, err := LookupNetworkGroup(ctx, &args, opts...) - var s LookupNetworkGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkGroup", args, &rv, "", opts...) + if err != nil { + return LookupNetworkGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkGroupResultOutput), nil + } + return output, nil }).(LookupNetworkGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterface.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterface.go index 80e681a3c..fbce9cc8c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterface.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterface.go @@ -14,7 +14,7 @@ import ( // Gets information about the specified network interface. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2018-07-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2018-07-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkInterface(ctx *pulumi.Context, args *LookupNetworkInterfaceArgs, opts ...pulumi.InvokeOption) (*LookupNetworkInterfaceResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkInterfaceResult @@ -109,14 +109,20 @@ func (val *LookupNetworkInterfaceResult) Defaults() *LookupNetworkInterfaceResul func LookupNetworkInterfaceOutput(ctx *pulumi.Context, args LookupNetworkInterfaceOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkInterfaceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkInterfaceResult, error) { + ApplyT(func(v interface{}) (LookupNetworkInterfaceResultOutput, error) { args := v.(LookupNetworkInterfaceArgs) - r, err := LookupNetworkInterface(ctx, &args, opts...) - var s LookupNetworkInterfaceResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkInterfaceResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkInterface", args, &rv, "", opts...) + if err != nil { + return LookupNetworkInterfaceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkInterfaceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkInterfaceResultOutput), nil + } + return output, nil }).(LookupNetworkInterfaceResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterfaceTapConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterfaceTapConfiguration.go index bd9a30d4c..55d82b4ed 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterfaceTapConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkInterfaceTapConfiguration.go @@ -14,7 +14,7 @@ import ( // Get the specified tap configuration on a network interface. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkInterfaceTapConfiguration(ctx *pulumi.Context, args *LookupNetworkInterfaceTapConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupNetworkInterfaceTapConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkInterfaceTapConfigurationResult @@ -63,14 +63,20 @@ func (val *LookupNetworkInterfaceTapConfigurationResult) Defaults() *LookupNetwo func LookupNetworkInterfaceTapConfigurationOutput(ctx *pulumi.Context, args LookupNetworkInterfaceTapConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkInterfaceTapConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkInterfaceTapConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupNetworkInterfaceTapConfigurationResultOutput, error) { args := v.(LookupNetworkInterfaceTapConfigurationArgs) - r, err := LookupNetworkInterfaceTapConfiguration(ctx, &args, opts...) - var s LookupNetworkInterfaceTapConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkInterfaceTapConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkInterfaceTapConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupNetworkInterfaceTapConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkInterfaceTapConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkInterfaceTapConfigurationResultOutput), nil + } + return output, nil }).(LookupNetworkInterfaceTapConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManager.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManager.go index 029ff32b1..ab554b799 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManager.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManager.go @@ -14,7 +14,7 @@ import ( // Gets the specified Network Manager. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. func LookupNetworkManager(ctx *pulumi.Context, args *LookupNetworkManagerArgs, opts ...pulumi.InvokeOption) (*LookupNetworkManagerResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkManagerResult @@ -62,14 +62,20 @@ type LookupNetworkManagerResult struct { func LookupNetworkManagerOutput(ctx *pulumi.Context, args LookupNetworkManagerOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkManagerResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkManagerResult, error) { + ApplyT(func(v interface{}) (LookupNetworkManagerResultOutput, error) { args := v.(LookupNetworkManagerArgs) - r, err := LookupNetworkManager(ctx, &args, opts...) - var s LookupNetworkManagerResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkManagerResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkManager", args, &rv, "", opts...) + if err != nil { + return LookupNetworkManagerResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkManagerResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkManagerResultOutput), nil + } + return output, nil }).(LookupNetworkManagerResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManagerRoutingConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManagerRoutingConfiguration.go new file mode 100644 index 000000000..a080756b2 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkManagerRoutingConfiguration.go @@ -0,0 +1,144 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Retrieves a network manager routing configuration. +// Azure REST API version: 2024-03-01. +func LookupNetworkManagerRoutingConfiguration(ctx *pulumi.Context, args *LookupNetworkManagerRoutingConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupNetworkManagerRoutingConfigurationResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkManagerRoutingConfigurationResult + err := ctx.Invoke("azure-native:network:getNetworkManagerRoutingConfiguration", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupNetworkManagerRoutingConfigurationArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName string `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// Defines the routing configuration +type LookupNetworkManagerRoutingConfigurationResult struct { + // A description of the routing configuration. + Description *string `pulumi:"description"` + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // Resource ID. + Id string `pulumi:"id"` + // Resource name. + Name string `pulumi:"name"` + // The provisioning state of the resource. + ProvisioningState string `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid string `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource type. + Type string `pulumi:"type"` +} + +func LookupNetworkManagerRoutingConfigurationOutput(ctx *pulumi.Context, args LookupNetworkManagerRoutingConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkManagerRoutingConfigurationResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupNetworkManagerRoutingConfigurationResultOutput, error) { + args := v.(LookupNetworkManagerRoutingConfigurationArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkManagerRoutingConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkManagerRoutingConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupNetworkManagerRoutingConfigurationResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupNetworkManagerRoutingConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkManagerRoutingConfigurationResultOutput), nil + } + return output, nil + }).(LookupNetworkManagerRoutingConfigurationResultOutput) +} + +type LookupNetworkManagerRoutingConfigurationOutputArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName pulumi.StringInput `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (LookupNetworkManagerRoutingConfigurationOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupNetworkManagerRoutingConfigurationArgs)(nil)).Elem() +} + +// Defines the routing configuration +type LookupNetworkManagerRoutingConfigurationResultOutput struct{ *pulumi.OutputState } + +func (LookupNetworkManagerRoutingConfigurationResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupNetworkManagerRoutingConfigurationResult)(nil)).Elem() +} + +func (o LookupNetworkManagerRoutingConfigurationResultOutput) ToLookupNetworkManagerRoutingConfigurationResultOutput() LookupNetworkManagerRoutingConfigurationResultOutput { + return o +} + +func (o LookupNetworkManagerRoutingConfigurationResultOutput) ToLookupNetworkManagerRoutingConfigurationResultOutputWithContext(ctx context.Context) LookupNetworkManagerRoutingConfigurationResultOutput { + return o +} + +// A description of the routing configuration. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Resource ID. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Resource name. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The provisioning state of the resource. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o LookupNetworkManagerRoutingConfigurationResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupNetworkManagerRoutingConfigurationResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupNetworkManagerRoutingConfigurationResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkProfile.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkProfile.go index 01933c930..897d6105d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkProfile.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkProfile.go @@ -14,7 +14,7 @@ import ( // Gets the specified network profile in a specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkProfile(ctx *pulumi.Context, args *LookupNetworkProfileArgs, opts ...pulumi.InvokeOption) (*LookupNetworkProfileResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkProfileResult @@ -60,14 +60,20 @@ type LookupNetworkProfileResult struct { func LookupNetworkProfileOutput(ctx *pulumi.Context, args LookupNetworkProfileOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkProfileResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkProfileResult, error) { + ApplyT(func(v interface{}) (LookupNetworkProfileResultOutput, error) { args := v.(LookupNetworkProfileArgs) - r, err := LookupNetworkProfile(ctx, &args, opts...) - var s LookupNetworkProfileResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkProfileResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkProfile", args, &rv, "", opts...) + if err != nil { + return LookupNetworkProfileResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkProfileResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkProfileResultOutput), nil + } + return output, nil }).(LookupNetworkProfileResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityGroup.go index 95e34da70..12701f5b2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityGroup.go @@ -14,7 +14,7 @@ import ( // Gets the specified network security group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkSecurityGroup(ctx *pulumi.Context, args *LookupNetworkSecurityGroupArgs, opts ...pulumi.InvokeOption) (*LookupNetworkSecurityGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkSecurityGroupResult @@ -68,14 +68,20 @@ type LookupNetworkSecurityGroupResult struct { func LookupNetworkSecurityGroupOutput(ctx *pulumi.Context, args LookupNetworkSecurityGroupOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkSecurityGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkSecurityGroupResult, error) { + ApplyT(func(v interface{}) (LookupNetworkSecurityGroupResultOutput, error) { args := v.(LookupNetworkSecurityGroupArgs) - r, err := LookupNetworkSecurityGroup(ctx, &args, opts...) - var s LookupNetworkSecurityGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkSecurityGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkSecurityGroup", args, &rv, "", opts...) + if err != nil { + return LookupNetworkSecurityGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkSecurityGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkSecurityGroupResultOutput), nil + } + return output, nil }).(LookupNetworkSecurityGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityPerimeter.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityPerimeter.go index 1b26ab02e..449de0500 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityPerimeter.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkSecurityPerimeter.go @@ -56,14 +56,20 @@ type LookupNetworkSecurityPerimeterResult struct { func LookupNetworkSecurityPerimeterOutput(ctx *pulumi.Context, args LookupNetworkSecurityPerimeterOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkSecurityPerimeterResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkSecurityPerimeterResult, error) { + ApplyT(func(v interface{}) (LookupNetworkSecurityPerimeterResultOutput, error) { args := v.(LookupNetworkSecurityPerimeterArgs) - r, err := LookupNetworkSecurityPerimeter(ctx, &args, opts...) - var s LookupNetworkSecurityPerimeterResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkSecurityPerimeterResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkSecurityPerimeter", args, &rv, "", opts...) + if err != nil { + return LookupNetworkSecurityPerimeterResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkSecurityPerimeterResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkSecurityPerimeterResultOutput), nil + } + return output, nil }).(LookupNetworkSecurityPerimeterResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkVirtualAppliance.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkVirtualAppliance.go index c2353a918..c9c00c988 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkVirtualAppliance.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkVirtualAppliance.go @@ -14,7 +14,7 @@ import ( // Gets the specified Network Virtual Appliance. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkVirtualAppliance(ctx *pulumi.Context, args *LookupNetworkVirtualApplianceArgs, opts ...pulumi.InvokeOption) (*LookupNetworkVirtualApplianceResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkVirtualApplianceResult @@ -86,14 +86,20 @@ type LookupNetworkVirtualApplianceResult struct { func LookupNetworkVirtualApplianceOutput(ctx *pulumi.Context, args LookupNetworkVirtualApplianceOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkVirtualApplianceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkVirtualApplianceResult, error) { + ApplyT(func(v interface{}) (LookupNetworkVirtualApplianceResultOutput, error) { args := v.(LookupNetworkVirtualApplianceArgs) - r, err := LookupNetworkVirtualAppliance(ctx, &args, opts...) - var s LookupNetworkVirtualApplianceResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkVirtualApplianceResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkVirtualAppliance", args, &rv, "", opts...) + if err != nil { + return LookupNetworkVirtualApplianceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkVirtualApplianceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkVirtualApplianceResultOutput), nil + } + return output, nil }).(LookupNetworkVirtualApplianceResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkWatcher.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkWatcher.go index 3d888f6c2..5da3cdfc4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkWatcher.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNetworkWatcher.go @@ -14,7 +14,7 @@ import ( // Gets the specified network watcher by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-01-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-01-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupNetworkWatcher(ctx *pulumi.Context, args *LookupNetworkWatcherArgs, opts ...pulumi.InvokeOption) (*LookupNetworkWatcherResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupNetworkWatcherResult @@ -52,14 +52,20 @@ type LookupNetworkWatcherResult struct { func LookupNetworkWatcherOutput(ctx *pulumi.Context, args LookupNetworkWatcherOutputArgs, opts ...pulumi.InvokeOption) LookupNetworkWatcherResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNetworkWatcherResult, error) { + ApplyT(func(v interface{}) (LookupNetworkWatcherResultOutput, error) { args := v.(LookupNetworkWatcherArgs) - r, err := LookupNetworkWatcher(ctx, &args, opts...) - var s LookupNetworkWatcherResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNetworkWatcherResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNetworkWatcher", args, &rv, "", opts...) + if err != nil { + return LookupNetworkWatcherResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNetworkWatcherResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNetworkWatcherResultOutput), nil + } + return output, nil }).(LookupNetworkWatcherResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAccessRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAccessRule.go index ebc35bbc0..ccb0cb906 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAccessRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAccessRule.go @@ -68,14 +68,20 @@ type LookupNspAccessRuleResult struct { func LookupNspAccessRuleOutput(ctx *pulumi.Context, args LookupNspAccessRuleOutputArgs, opts ...pulumi.InvokeOption) LookupNspAccessRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNspAccessRuleResult, error) { + ApplyT(func(v interface{}) (LookupNspAccessRuleResultOutput, error) { args := v.(LookupNspAccessRuleArgs) - r, err := LookupNspAccessRule(ctx, &args, opts...) - var s LookupNspAccessRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNspAccessRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNspAccessRule", args, &rv, "", opts...) + if err != nil { + return LookupNspAccessRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNspAccessRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNspAccessRuleResultOutput), nil + } + return output, nil }).(LookupNspAccessRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAssociation.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAssociation.go index c49caa967..a3f676339 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAssociation.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspAssociation.go @@ -60,14 +60,20 @@ type LookupNspAssociationResult struct { func LookupNspAssociationOutput(ctx *pulumi.Context, args LookupNspAssociationOutputArgs, opts ...pulumi.InvokeOption) LookupNspAssociationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNspAssociationResult, error) { + ApplyT(func(v interface{}) (LookupNspAssociationResultOutput, error) { args := v.(LookupNspAssociationArgs) - r, err := LookupNspAssociation(ctx, &args, opts...) - var s LookupNspAssociationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNspAssociationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNspAssociation", args, &rv, "", opts...) + if err != nil { + return LookupNspAssociationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNspAssociationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNspAssociationResultOutput), nil + } + return output, nil }).(LookupNspAssociationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspLink.go index d4be5a392..9cf294b12 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspLink.go @@ -68,14 +68,20 @@ type LookupNspLinkResult struct { func LookupNspLinkOutput(ctx *pulumi.Context, args LookupNspLinkOutputArgs, opts ...pulumi.InvokeOption) LookupNspLinkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNspLinkResult, error) { + ApplyT(func(v interface{}) (LookupNspLinkResultOutput, error) { args := v.(LookupNspLinkArgs) - r, err := LookupNspLink(ctx, &args, opts...) - var s LookupNspLinkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNspLinkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNspLink", args, &rv, "", opts...) + if err != nil { + return LookupNspLinkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNspLinkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNspLinkResultOutput), nil + } + return output, nil }).(LookupNspLinkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspProfile.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspProfile.go index b7777648a..9ccd6aef1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspProfile.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getNspProfile.go @@ -54,14 +54,20 @@ type LookupNspProfileResult struct { func LookupNspProfileOutput(ctx *pulumi.Context, args LookupNspProfileOutputArgs, opts ...pulumi.InvokeOption) LookupNspProfileResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupNspProfileResult, error) { + ApplyT(func(v interface{}) (LookupNspProfileResultOutput, error) { args := v.(LookupNspProfileArgs) - r, err := LookupNspProfile(ctx, &args, opts...) - var s LookupNspProfileResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupNspProfileResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getNspProfile", args, &rv, "", opts...) + if err != nil { + return LookupNspProfileResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupNspProfileResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupNspProfileResultOutput), nil + } + return output, nil }).(LookupNspProfileResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getOutboundEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getOutboundEndpoint.go index 53800b2cd..3acd65229 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getOutboundEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getOutboundEndpoint.go @@ -14,7 +14,7 @@ import ( // Gets properties of an outbound endpoint for a DNS resolver. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. func LookupOutboundEndpoint(ctx *pulumi.Context, args *LookupOutboundEndpointArgs, opts ...pulumi.InvokeOption) (*LookupOutboundEndpointResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupOutboundEndpointResult @@ -60,14 +60,20 @@ type LookupOutboundEndpointResult struct { func LookupOutboundEndpointOutput(ctx *pulumi.Context, args LookupOutboundEndpointOutputArgs, opts ...pulumi.InvokeOption) LookupOutboundEndpointResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupOutboundEndpointResult, error) { + ApplyT(func(v interface{}) (LookupOutboundEndpointResultOutput, error) { args := v.(LookupOutboundEndpointArgs) - r, err := LookupOutboundEndpoint(ctx, &args, opts...) - var s LookupOutboundEndpointResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupOutboundEndpointResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getOutboundEndpoint", args, &rv, "", opts...) + if err != nil { + return LookupOutboundEndpointResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupOutboundEndpointResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupOutboundEndpointResultOutput), nil + } + return output, nil }).(LookupOutboundEndpointResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGateway.go index 584d1e74e..8f4ea1643 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGateway.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a virtual wan p2s vpn gateway. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupP2sVpnGateway(ctx *pulumi.Context, args *LookupP2sVpnGatewayArgs, opts ...pulumi.InvokeOption) (*LookupP2sVpnGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupP2sVpnGatewayResult @@ -66,14 +66,20 @@ type LookupP2sVpnGatewayResult struct { func LookupP2sVpnGatewayOutput(ctx *pulumi.Context, args LookupP2sVpnGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupP2sVpnGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupP2sVpnGatewayResult, error) { + ApplyT(func(v interface{}) (LookupP2sVpnGatewayResultOutput, error) { args := v.(LookupP2sVpnGatewayArgs) - r, err := LookupP2sVpnGateway(ctx, &args, opts...) - var s LookupP2sVpnGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupP2sVpnGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getP2sVpnGateway", args, &rv, "", opts...) + if err != nil { + return LookupP2sVpnGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupP2sVpnGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupP2sVpnGatewayResultOutput), nil + } + return output, nil }).(LookupP2sVpnGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealth.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealth.go index c075b35ff..d4145c250 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealth.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealth.go @@ -14,7 +14,7 @@ import ( // Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetP2sVpnGatewayP2sVpnConnectionHealth(ctx *pulumi.Context, args *GetP2sVpnGatewayP2sVpnConnectionHealthArgs, opts ...pulumi.InvokeOption) (*GetP2sVpnGatewayP2sVpnConnectionHealthResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetP2sVpnGatewayP2sVpnConnectionHealthResult @@ -66,14 +66,20 @@ type GetP2sVpnGatewayP2sVpnConnectionHealthResult struct { func GetP2sVpnGatewayP2sVpnConnectionHealthOutput(ctx *pulumi.Context, args GetP2sVpnGatewayP2sVpnConnectionHealthOutputArgs, opts ...pulumi.InvokeOption) GetP2sVpnGatewayP2sVpnConnectionHealthResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetP2sVpnGatewayP2sVpnConnectionHealthResult, error) { + ApplyT(func(v interface{}) (GetP2sVpnGatewayP2sVpnConnectionHealthResultOutput, error) { args := v.(GetP2sVpnGatewayP2sVpnConnectionHealthArgs) - r, err := GetP2sVpnGatewayP2sVpnConnectionHealth(ctx, &args, opts...) - var s GetP2sVpnGatewayP2sVpnConnectionHealthResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetP2sVpnGatewayP2sVpnConnectionHealthResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getP2sVpnGatewayP2sVpnConnectionHealth", args, &rv, "", opts...) + if err != nil { + return GetP2sVpnGatewayP2sVpnConnectionHealthResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetP2sVpnGatewayP2sVpnConnectionHealthResultOutput) + if secret { + return pulumi.ToSecret(output).(GetP2sVpnGatewayP2sVpnConnectionHealthResultOutput), nil + } + return output, nil }).(GetP2sVpnGatewayP2sVpnConnectionHealthResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealthDetailed.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealthDetailed.go index 19861c817..eadd21f47 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealthDetailed.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnGatewayP2sVpnConnectionHealthDetailed.go @@ -14,7 +14,7 @@ import ( // Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetP2sVpnGatewayP2sVpnConnectionHealthDetailed(ctx *pulumi.Context, args *GetP2sVpnGatewayP2sVpnConnectionHealthDetailedArgs, opts ...pulumi.InvokeOption) (*GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResult @@ -44,14 +44,20 @@ type GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResult struct { func GetP2sVpnGatewayP2sVpnConnectionHealthDetailedOutput(ctx *pulumi.Context, args GetP2sVpnGatewayP2sVpnConnectionHealthDetailedOutputArgs, opts ...pulumi.InvokeOption) GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResult, error) { + ApplyT(func(v interface{}) (GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResultOutput, error) { args := v.(GetP2sVpnGatewayP2sVpnConnectionHealthDetailedArgs) - r, err := GetP2sVpnGatewayP2sVpnConnectionHealthDetailed(ctx, &args, opts...) - var s GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getP2sVpnGatewayP2sVpnConnectionHealthDetailed", args, &rv, "", opts...) + if err != nil { + return GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResultOutput) + if secret { + return pulumi.ToSecret(output).(GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResultOutput), nil + } + return output, nil }).(GetP2sVpnGatewayP2sVpnConnectionHealthDetailedResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnServerConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnServerConfiguration.go index fd7a20b44..0c5f2c979 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnServerConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getP2sVpnServerConfiguration.go @@ -64,14 +64,20 @@ type LookupP2sVpnServerConfigurationResult struct { func LookupP2sVpnServerConfigurationOutput(ctx *pulumi.Context, args LookupP2sVpnServerConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupP2sVpnServerConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupP2sVpnServerConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupP2sVpnServerConfigurationResultOutput, error) { args := v.(LookupP2sVpnServerConfigurationArgs) - r, err := LookupP2sVpnServerConfiguration(ctx, &args, opts...) - var s LookupP2sVpnServerConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupP2sVpnServerConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getP2sVpnServerConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupP2sVpnServerConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupP2sVpnServerConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupP2sVpnServerConfigurationResultOutput), nil + } + return output, nil }).(LookupP2sVpnServerConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPacketCapture.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPacketCapture.go index 4329f849a..f3a21e981 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPacketCapture.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPacketCapture.go @@ -14,7 +14,7 @@ import ( // Gets a packet capture session by name. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-01-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-01-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPacketCapture(ctx *pulumi.Context, args *LookupPacketCaptureArgs, opts ...pulumi.InvokeOption) (*LookupPacketCaptureResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPacketCaptureResult @@ -85,14 +85,20 @@ func (val *LookupPacketCaptureResult) Defaults() *LookupPacketCaptureResult { func LookupPacketCaptureOutput(ctx *pulumi.Context, args LookupPacketCaptureOutputArgs, opts ...pulumi.InvokeOption) LookupPacketCaptureResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPacketCaptureResult, error) { + ApplyT(func(v interface{}) (LookupPacketCaptureResultOutput, error) { args := v.(LookupPacketCaptureArgs) - r, err := LookupPacketCapture(ctx, &args, opts...) - var s LookupPacketCaptureResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPacketCaptureResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPacketCapture", args, &rv, "", opts...) + if err != nil { + return LookupPacketCaptureResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPacketCaptureResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPacketCaptureResultOutput), nil + } + return output, nil }).(LookupPacketCaptureResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPolicy.go index 3299c5619..24a284552 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPolicy.go @@ -67,14 +67,20 @@ type LookupPolicyResult struct { func LookupPolicyOutput(ctx *pulumi.Context, args LookupPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPolicyResult, error) { + ApplyT(func(v interface{}) (LookupPolicyResultOutput, error) { args := v.(LookupPolicyArgs) - r, err := LookupPolicy(ctx, &args, opts...) - var s LookupPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPolicy", args, &rv, "", opts...) + if err != nil { + return LookupPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPolicyResultOutput), nil + } + return output, nil }).(LookupPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateDnsZoneGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateDnsZoneGroup.go index e84afa925..48e646065 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateDnsZoneGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateDnsZoneGroup.go @@ -14,7 +14,7 @@ import ( // Gets the private dns zone group resource by specified private dns zone group name. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPrivateDnsZoneGroup(ctx *pulumi.Context, args *LookupPrivateDnsZoneGroupArgs, opts ...pulumi.InvokeOption) (*LookupPrivateDnsZoneGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateDnsZoneGroupResult @@ -50,14 +50,20 @@ type LookupPrivateDnsZoneGroupResult struct { func LookupPrivateDnsZoneGroupOutput(ctx *pulumi.Context, args LookupPrivateDnsZoneGroupOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateDnsZoneGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateDnsZoneGroupResult, error) { + ApplyT(func(v interface{}) (LookupPrivateDnsZoneGroupResultOutput, error) { args := v.(LookupPrivateDnsZoneGroupArgs) - r, err := LookupPrivateDnsZoneGroup(ctx, &args, opts...) - var s LookupPrivateDnsZoneGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateDnsZoneGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateDnsZoneGroup", args, &rv, "", opts...) + if err != nil { + return LookupPrivateDnsZoneGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateDnsZoneGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateDnsZoneGroupResultOutput), nil + } + return output, nil }).(LookupPrivateDnsZoneGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateEndpoint.go index 36bfbd996..9071fee8e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateEndpoint.go @@ -14,7 +14,7 @@ import ( // Gets the specified private endpoint by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPrivateEndpoint(ctx *pulumi.Context, args *LookupPrivateEndpointArgs, opts ...pulumi.InvokeOption) (*LookupPrivateEndpointResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateEndpointResult @@ -83,14 +83,20 @@ func (val *LookupPrivateEndpointResult) Defaults() *LookupPrivateEndpointResult func LookupPrivateEndpointOutput(ctx *pulumi.Context, args LookupPrivateEndpointOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateEndpointResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateEndpointResult, error) { + ApplyT(func(v interface{}) (LookupPrivateEndpointResultOutput, error) { args := v.(LookupPrivateEndpointArgs) - r, err := LookupPrivateEndpoint(ctx, &args, opts...) - var s LookupPrivateEndpointResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateEndpointResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateEndpoint", args, &rv, "", opts...) + if err != nil { + return LookupPrivateEndpointResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateEndpointResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateEndpointResultOutput), nil + } + return output, nil }).(LookupPrivateEndpointResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkService.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkService.go index c0531db72..a9ace8f44 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkService.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkService.go @@ -14,7 +14,7 @@ import ( // Gets the specified private link service by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPrivateLinkService(ctx *pulumi.Context, args *LookupPrivateLinkServiceArgs, opts ...pulumi.InvokeOption) (*LookupPrivateLinkServiceResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateLinkServiceResult @@ -74,14 +74,20 @@ type LookupPrivateLinkServiceResult struct { func LookupPrivateLinkServiceOutput(ctx *pulumi.Context, args LookupPrivateLinkServiceOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateLinkServiceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateLinkServiceResult, error) { + ApplyT(func(v interface{}) (LookupPrivateLinkServiceResultOutput, error) { args := v.(LookupPrivateLinkServiceArgs) - r, err := LookupPrivateLinkService(ctx, &args, opts...) - var s LookupPrivateLinkServiceResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateLinkServiceResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateLinkService", args, &rv, "", opts...) + if err != nil { + return LookupPrivateLinkServiceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateLinkServiceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateLinkServiceResultOutput), nil + } + return output, nil }).(LookupPrivateLinkServiceResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkServicePrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkServicePrivateEndpointConnection.go index f0067e8e3..52bff1a7e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkServicePrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateLinkServicePrivateEndpointConnection.go @@ -14,7 +14,7 @@ import ( // Get the specific private end point connection by specific private link service in the resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPrivateLinkServicePrivateEndpointConnection(ctx *pulumi.Context, args *LookupPrivateLinkServicePrivateEndpointConnectionArgs, opts ...pulumi.InvokeOption) (*LookupPrivateLinkServicePrivateEndpointConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateLinkServicePrivateEndpointConnectionResult @@ -71,14 +71,20 @@ func (val *LookupPrivateLinkServicePrivateEndpointConnectionResult) Defaults() * func LookupPrivateLinkServicePrivateEndpointConnectionOutput(ctx *pulumi.Context, args LookupPrivateLinkServicePrivateEndpointConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateLinkServicePrivateEndpointConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateLinkServicePrivateEndpointConnectionResult, error) { + ApplyT(func(v interface{}) (LookupPrivateLinkServicePrivateEndpointConnectionResultOutput, error) { args := v.(LookupPrivateLinkServicePrivateEndpointConnectionArgs) - r, err := LookupPrivateLinkServicePrivateEndpointConnection(ctx, &args, opts...) - var s LookupPrivateLinkServicePrivateEndpointConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateLinkServicePrivateEndpointConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateLinkServicePrivateEndpointConnection", args, &rv, "", opts...) + if err != nil { + return LookupPrivateLinkServicePrivateEndpointConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateLinkServicePrivateEndpointConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateLinkServicePrivateEndpointConnectionResultOutput), nil + } + return output, nil }).(LookupPrivateLinkServicePrivateEndpointConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateRecordSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateRecordSet.go index 66e352a19..0049f3e03 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateRecordSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateRecordSet.go @@ -13,6 +13,8 @@ import ( // Gets a record set. // Azure REST API version: 2020-06-01. +// +// Other available API versions: 2024-06-01. func LookupPrivateRecordSet(ctx *pulumi.Context, args *LookupPrivateRecordSetArgs, opts ...pulumi.InvokeOption) (*LookupPrivateRecordSetResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateRecordSetResult @@ -72,14 +74,20 @@ type LookupPrivateRecordSetResult struct { func LookupPrivateRecordSetOutput(ctx *pulumi.Context, args LookupPrivateRecordSetOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateRecordSetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateRecordSetResult, error) { + ApplyT(func(v interface{}) (LookupPrivateRecordSetResultOutput, error) { args := v.(LookupPrivateRecordSetArgs) - r, err := LookupPrivateRecordSet(ctx, &args, opts...) - var s LookupPrivateRecordSetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateRecordSetResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateRecordSet", args, &rv, "", opts...) + if err != nil { + return LookupPrivateRecordSetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateRecordSetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateRecordSetResultOutput), nil + } + return output, nil }).(LookupPrivateRecordSetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateResolverVirtualNetworkLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateResolverVirtualNetworkLink.go index 4c1b753ea..23d4a258b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateResolverVirtualNetworkLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateResolverVirtualNetworkLink.go @@ -14,7 +14,7 @@ import ( // Gets properties of a virtual network link to a DNS forwarding ruleset. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. func LookupPrivateResolverVirtualNetworkLink(ctx *pulumi.Context, args *LookupPrivateResolverVirtualNetworkLinkArgs, opts ...pulumi.InvokeOption) (*LookupPrivateResolverVirtualNetworkLinkResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateResolverVirtualNetworkLinkResult @@ -56,14 +56,20 @@ type LookupPrivateResolverVirtualNetworkLinkResult struct { func LookupPrivateResolverVirtualNetworkLinkOutput(ctx *pulumi.Context, args LookupPrivateResolverVirtualNetworkLinkOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateResolverVirtualNetworkLinkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateResolverVirtualNetworkLinkResult, error) { + ApplyT(func(v interface{}) (LookupPrivateResolverVirtualNetworkLinkResultOutput, error) { args := v.(LookupPrivateResolverVirtualNetworkLinkArgs) - r, err := LookupPrivateResolverVirtualNetworkLink(ctx, &args, opts...) - var s LookupPrivateResolverVirtualNetworkLinkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateResolverVirtualNetworkLinkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateResolverVirtualNetworkLink", args, &rv, "", opts...) + if err != nil { + return LookupPrivateResolverVirtualNetworkLinkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateResolverVirtualNetworkLinkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateResolverVirtualNetworkLinkResultOutput), nil + } + return output, nil }).(LookupPrivateResolverVirtualNetworkLinkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateZone.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateZone.go index acf8b4882..fa37cd0d7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateZone.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPrivateZone.go @@ -13,6 +13,8 @@ import ( // Gets a Private DNS zone. Retrieves the zone properties, but not the virtual networks links or the record sets within the zone. // Azure REST API version: 2020-06-01. +// +// Other available API versions: 2024-06-01. func LookupPrivateZone(ctx *pulumi.Context, args *LookupPrivateZoneArgs, opts ...pulumi.InvokeOption) (*LookupPrivateZoneResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPrivateZoneResult @@ -64,14 +66,20 @@ type LookupPrivateZoneResult struct { func LookupPrivateZoneOutput(ctx *pulumi.Context, args LookupPrivateZoneOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateZoneResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateZoneResult, error) { + ApplyT(func(v interface{}) (LookupPrivateZoneResultOutput, error) { args := v.(LookupPrivateZoneArgs) - r, err := LookupPrivateZone(ctx, &args, opts...) - var s LookupPrivateZoneResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateZoneResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPrivateZone", args, &rv, "", opts...) + if err != nil { + return LookupPrivateZoneResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateZoneResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateZoneResultOutput), nil + } + return output, nil }).(LookupPrivateZoneResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getProfile.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getProfile.go index 42d8ab0ac..288578419 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getProfile.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getProfile.go @@ -64,14 +64,20 @@ type LookupProfileResult struct { func LookupProfileOutput(ctx *pulumi.Context, args LookupProfileOutputArgs, opts ...pulumi.InvokeOption) LookupProfileResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupProfileResult, error) { + ApplyT(func(v interface{}) (LookupProfileResultOutput, error) { args := v.(LookupProfileArgs) - r, err := LookupProfile(ctx, &args, opts...) - var s LookupProfileResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupProfileResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getProfile", args, &rv, "", opts...) + if err != nil { + return LookupProfileResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupProfileResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupProfileResultOutput), nil + } + return output, nil }).(LookupProfileResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPAddress.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPAddress.go index 3370697a9..e7b352001 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPAddress.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPAddress.go @@ -14,7 +14,7 @@ import ( // Gets the specified public IP address in a specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPublicIPAddress(ctx *pulumi.Context, args *LookupPublicIPAddressArgs, opts ...pulumi.InvokeOption) (*LookupPublicIPAddressResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPublicIPAddressResult @@ -105,14 +105,20 @@ func (val *LookupPublicIPAddressResult) Defaults() *LookupPublicIPAddressResult func LookupPublicIPAddressOutput(ctx *pulumi.Context, args LookupPublicIPAddressOutputArgs, opts ...pulumi.InvokeOption) LookupPublicIPAddressResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPublicIPAddressResult, error) { + ApplyT(func(v interface{}) (LookupPublicIPAddressResultOutput, error) { args := v.(LookupPublicIPAddressArgs) - r, err := LookupPublicIPAddress(ctx, &args, opts...) - var s LookupPublicIPAddressResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPublicIPAddressResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPublicIPAddress", args, &rv, "", opts...) + if err != nil { + return LookupPublicIPAddressResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPublicIPAddressResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPublicIPAddressResultOutput), nil + } + return output, nil }).(LookupPublicIPAddressResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPPrefix.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPPrefix.go index 0af00ff42..e2bede633 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPPrefix.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getPublicIPPrefix.go @@ -14,7 +14,7 @@ import ( // Gets the specified public IP prefix in a specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupPublicIPPrefix(ctx *pulumi.Context, args *LookupPublicIPPrefixArgs, opts ...pulumi.InvokeOption) (*LookupPublicIPPrefixResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupPublicIPPrefixResult @@ -78,14 +78,20 @@ type LookupPublicIPPrefixResult struct { func LookupPublicIPPrefixOutput(ctx *pulumi.Context, args LookupPublicIPPrefixOutputArgs, opts ...pulumi.InvokeOption) LookupPublicIPPrefixResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPublicIPPrefixResult, error) { + ApplyT(func(v interface{}) (LookupPublicIPPrefixResultOutput, error) { args := v.(LookupPublicIPPrefixArgs) - r, err := LookupPublicIPPrefix(ctx, &args, opts...) - var s LookupPublicIPPrefixResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPublicIPPrefixResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getPublicIPPrefix", args, &rv, "", opts...) + if err != nil { + return LookupPublicIPPrefixResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPublicIPPrefixResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPublicIPPrefixResultOutput), nil + } + return output, nil }).(LookupPublicIPPrefixResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisIntent.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisIntent.go new file mode 100644 index 000000000..4e1953fd0 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisIntent.go @@ -0,0 +1,129 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Configuration information or intent on which to do the analysis on. +// Azure REST API version: 2024-01-01-preview. +func LookupReachabilityAnalysisIntent(ctx *pulumi.Context, args *LookupReachabilityAnalysisIntentArgs, opts ...pulumi.InvokeOption) (*LookupReachabilityAnalysisIntentResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupReachabilityAnalysisIntentResult + err := ctx.Invoke("azure-native:network:getReachabilityAnalysisIntent", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupReachabilityAnalysisIntentArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Reachability Analysis Intent name. + ReachabilityAnalysisIntentName string `pulumi:"reachabilityAnalysisIntentName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName string `pulumi:"workspaceName"` +} + +// Configuration information or intent on which to do the analysis on. +type LookupReachabilityAnalysisIntentResult struct { + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The name of the resource + Name string `pulumi:"name"` + // Represents the Reachability Analysis Intent properties. + Properties ReachabilityAnalysisIntentPropertiesResponse `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupReachabilityAnalysisIntentOutput(ctx *pulumi.Context, args LookupReachabilityAnalysisIntentOutputArgs, opts ...pulumi.InvokeOption) LookupReachabilityAnalysisIntentResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupReachabilityAnalysisIntentResultOutput, error) { + args := v.(LookupReachabilityAnalysisIntentArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupReachabilityAnalysisIntentResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getReachabilityAnalysisIntent", args, &rv, "", opts...) + if err != nil { + return LookupReachabilityAnalysisIntentResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupReachabilityAnalysisIntentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupReachabilityAnalysisIntentResultOutput), nil + } + return output, nil + }).(LookupReachabilityAnalysisIntentResultOutput) +} + +type LookupReachabilityAnalysisIntentOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // Reachability Analysis Intent name. + ReachabilityAnalysisIntentName pulumi.StringInput `pulumi:"reachabilityAnalysisIntentName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName pulumi.StringInput `pulumi:"workspaceName"` +} + +func (LookupReachabilityAnalysisIntentOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupReachabilityAnalysisIntentArgs)(nil)).Elem() +} + +// Configuration information or intent on which to do the analysis on. +type LookupReachabilityAnalysisIntentResultOutput struct{ *pulumi.OutputState } + +func (LookupReachabilityAnalysisIntentResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupReachabilityAnalysisIntentResult)(nil)).Elem() +} + +func (o LookupReachabilityAnalysisIntentResultOutput) ToLookupReachabilityAnalysisIntentResultOutput() LookupReachabilityAnalysisIntentResultOutput { + return o +} + +func (o LookupReachabilityAnalysisIntentResultOutput) ToLookupReachabilityAnalysisIntentResultOutputWithContext(ctx context.Context) LookupReachabilityAnalysisIntentResultOutput { + return o +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupReachabilityAnalysisIntentResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisIntentResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupReachabilityAnalysisIntentResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisIntentResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Represents the Reachability Analysis Intent properties. +func (o LookupReachabilityAnalysisIntentResultOutput) Properties() ReachabilityAnalysisIntentPropertiesResponseOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisIntentResult) ReachabilityAnalysisIntentPropertiesResponse { + return v.Properties + }).(ReachabilityAnalysisIntentPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupReachabilityAnalysisIntentResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisIntentResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupReachabilityAnalysisIntentResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisIntentResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupReachabilityAnalysisIntentResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisRun.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisRun.go new file mode 100644 index 000000000..b460c3f42 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getReachabilityAnalysisRun.go @@ -0,0 +1,129 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Configuration information for analysis run. +// Azure REST API version: 2024-01-01-preview. +func LookupReachabilityAnalysisRun(ctx *pulumi.Context, args *LookupReachabilityAnalysisRunArgs, opts ...pulumi.InvokeOption) (*LookupReachabilityAnalysisRunResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupReachabilityAnalysisRunResult + err := ctx.Invoke("azure-native:network:getReachabilityAnalysisRun", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupReachabilityAnalysisRunArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Reachability Analysis Run name. + ReachabilityAnalysisRunName string `pulumi:"reachabilityAnalysisRunName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName string `pulumi:"workspaceName"` +} + +// Configuration information for analysis run. +type LookupReachabilityAnalysisRunResult struct { + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The name of the resource + Name string `pulumi:"name"` + // Represents the Reachability Analysis Run properties. + Properties ReachabilityAnalysisRunPropertiesResponse `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupReachabilityAnalysisRunOutput(ctx *pulumi.Context, args LookupReachabilityAnalysisRunOutputArgs, opts ...pulumi.InvokeOption) LookupReachabilityAnalysisRunResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupReachabilityAnalysisRunResultOutput, error) { + args := v.(LookupReachabilityAnalysisRunArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupReachabilityAnalysisRunResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getReachabilityAnalysisRun", args, &rv, "", opts...) + if err != nil { + return LookupReachabilityAnalysisRunResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupReachabilityAnalysisRunResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupReachabilityAnalysisRunResultOutput), nil + } + return output, nil + }).(LookupReachabilityAnalysisRunResultOutput) +} + +type LookupReachabilityAnalysisRunOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // Reachability Analysis Run name. + ReachabilityAnalysisRunName pulumi.StringInput `pulumi:"reachabilityAnalysisRunName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName pulumi.StringInput `pulumi:"workspaceName"` +} + +func (LookupReachabilityAnalysisRunOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupReachabilityAnalysisRunArgs)(nil)).Elem() +} + +// Configuration information for analysis run. +type LookupReachabilityAnalysisRunResultOutput struct{ *pulumi.OutputState } + +func (LookupReachabilityAnalysisRunResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupReachabilityAnalysisRunResult)(nil)).Elem() +} + +func (o LookupReachabilityAnalysisRunResultOutput) ToLookupReachabilityAnalysisRunResultOutput() LookupReachabilityAnalysisRunResultOutput { + return o +} + +func (o LookupReachabilityAnalysisRunResultOutput) ToLookupReachabilityAnalysisRunResultOutputWithContext(ctx context.Context) LookupReachabilityAnalysisRunResultOutput { + return o +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupReachabilityAnalysisRunResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisRunResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupReachabilityAnalysisRunResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisRunResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Represents the Reachability Analysis Run properties. +func (o LookupReachabilityAnalysisRunResultOutput) Properties() ReachabilityAnalysisRunPropertiesResponseOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisRunResult) ReachabilityAnalysisRunPropertiesResponse { + return v.Properties + }).(ReachabilityAnalysisRunPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupReachabilityAnalysisRunResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisRunResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupReachabilityAnalysisRunResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupReachabilityAnalysisRunResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupReachabilityAnalysisRunResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRecordSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRecordSet.go index f7ff7d95f..aa381b386 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRecordSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRecordSet.go @@ -80,14 +80,20 @@ type LookupRecordSetResult struct { func LookupRecordSetOutput(ctx *pulumi.Context, args LookupRecordSetOutputArgs, opts ...pulumi.InvokeOption) LookupRecordSetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRecordSetResult, error) { + ApplyT(func(v interface{}) (LookupRecordSetResultOutput, error) { args := v.(LookupRecordSetArgs) - r, err := LookupRecordSet(ctx, &args, opts...) - var s LookupRecordSetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRecordSetResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRecordSet", args, &rv, "", opts...) + if err != nil { + return LookupRecordSetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRecordSetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRecordSetResultOutput), nil + } + return output, nil }).(LookupRecordSetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoute.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoute.go index 6ad9d65ec..a4e2338b2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoute.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoute.go @@ -14,7 +14,7 @@ import ( // Gets the specified route from a route table. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupRoute(ctx *pulumi.Context, args *LookupRouteArgs, opts ...pulumi.InvokeOption) (*LookupRouteResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRouteResult @@ -41,7 +41,7 @@ type LookupRouteResult struct { // A unique read-only string that changes whenever the resource is updated. Etag string `pulumi:"etag"` // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride *bool `pulumi:"hasBgpOverride"` + HasBgpOverride bool `pulumi:"hasBgpOverride"` // Resource ID. Id *string `pulumi:"id"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. @@ -58,14 +58,20 @@ type LookupRouteResult struct { func LookupRouteOutput(ctx *pulumi.Context, args LookupRouteOutputArgs, opts ...pulumi.InvokeOption) LookupRouteResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRouteResult, error) { + ApplyT(func(v interface{}) (LookupRouteResultOutput, error) { args := v.(LookupRouteArgs) - r, err := LookupRoute(ctx, &args, opts...) - var s LookupRouteResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRouteResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRoute", args, &rv, "", opts...) + if err != nil { + return LookupRouteResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRouteResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRouteResultOutput), nil + } + return output, nil }).(LookupRouteResultOutput) } @@ -108,8 +114,8 @@ func (o LookupRouteResultOutput) Etag() pulumi.StringOutput { } // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. -func (o LookupRouteResultOutput) HasBgpOverride() pulumi.BoolPtrOutput { - return o.ApplyT(func(v LookupRouteResult) *bool { return v.HasBgpOverride }).(pulumi.BoolPtrOutput) +func (o LookupRouteResultOutput) HasBgpOverride() pulumi.BoolOutput { + return o.ApplyT(func(v LookupRouteResult) bool { return v.HasBgpOverride }).(pulumi.BoolOutput) } // Resource ID. diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilter.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilter.go index a57a5883c..d60fda433 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilter.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilter.go @@ -14,7 +14,7 @@ import ( // Gets the specified route filter. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupRouteFilter(ctx *pulumi.Context, args *LookupRouteFilterArgs, opts ...pulumi.InvokeOption) (*LookupRouteFilterResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRouteFilterResult @@ -60,14 +60,20 @@ type LookupRouteFilterResult struct { func LookupRouteFilterOutput(ctx *pulumi.Context, args LookupRouteFilterOutputArgs, opts ...pulumi.InvokeOption) LookupRouteFilterResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRouteFilterResult, error) { + ApplyT(func(v interface{}) (LookupRouteFilterResultOutput, error) { args := v.(LookupRouteFilterArgs) - r, err := LookupRouteFilter(ctx, &args, opts...) - var s LookupRouteFilterResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRouteFilterResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRouteFilter", args, &rv, "", opts...) + if err != nil { + return LookupRouteFilterResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRouteFilterResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRouteFilterResultOutput), nil + } + return output, nil }).(LookupRouteFilterResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilterRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilterRule.go index 37d41eb79..31acf53aa 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilterRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteFilterRule.go @@ -14,7 +14,7 @@ import ( // Gets the specified rule from a route filter. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2017-03-01, 2017-10-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2017-03-01, 2017-10-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupRouteFilterRule(ctx *pulumi.Context, args *LookupRouteFilterRuleArgs, opts ...pulumi.InvokeOption) (*LookupRouteFilterRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRouteFilterRuleResult @@ -56,14 +56,20 @@ type LookupRouteFilterRuleResult struct { func LookupRouteFilterRuleOutput(ctx *pulumi.Context, args LookupRouteFilterRuleOutputArgs, opts ...pulumi.InvokeOption) LookupRouteFilterRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRouteFilterRuleResult, error) { + ApplyT(func(v interface{}) (LookupRouteFilterRuleResultOutput, error) { args := v.(LookupRouteFilterRuleArgs) - r, err := LookupRouteFilterRule(ctx, &args, opts...) - var s LookupRouteFilterRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRouteFilterRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRouteFilterRule", args, &rv, "", opts...) + if err != nil { + return LookupRouteFilterRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRouteFilterRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRouteFilterRuleResultOutput), nil + } + return output, nil }).(LookupRouteFilterRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteMap.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteMap.go index b2aabb884..c29d73abd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteMap.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteMap.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a RouteMap. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupRouteMap(ctx *pulumi.Context, args *LookupRouteMapArgs, opts ...pulumi.InvokeOption) (*LookupRouteMapResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRouteMapResult @@ -56,14 +56,20 @@ type LookupRouteMapResult struct { func LookupRouteMapOutput(ctx *pulumi.Context, args LookupRouteMapOutputArgs, opts ...pulumi.InvokeOption) LookupRouteMapResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRouteMapResult, error) { + ApplyT(func(v interface{}) (LookupRouteMapResultOutput, error) { args := v.(LookupRouteMapArgs) - r, err := LookupRouteMap(ctx, &args, opts...) - var s LookupRouteMapResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRouteMapResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRouteMap", args, &rv, "", opts...) + if err != nil { + return LookupRouteMapResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRouteMapResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRouteMapResultOutput), nil + } + return output, nil }).(LookupRouteMapResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteTable.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteTable.go index d72b3337c..bae60ecab 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteTable.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRouteTable.go @@ -14,7 +14,7 @@ import ( // Gets the specified route table. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupRouteTable(ctx *pulumi.Context, args *LookupRouteTableArgs, opts ...pulumi.InvokeOption) (*LookupRouteTableResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRouteTableResult @@ -62,14 +62,20 @@ type LookupRouteTableResult struct { func LookupRouteTableOutput(ctx *pulumi.Context, args LookupRouteTableOutputArgs, opts ...pulumi.InvokeOption) LookupRouteTableResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRouteTableResult, error) { + ApplyT(func(v interface{}) (LookupRouteTableResultOutput, error) { args := v.(LookupRouteTableArgs) - r, err := LookupRouteTable(ctx, &args, opts...) - var s LookupRouteTableResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRouteTableResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRouteTable", args, &rv, "", opts...) + if err != nil { + return LookupRouteTableResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRouteTableResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRouteTableResultOutput), nil + } + return output, nil }).(LookupRouteTableResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingIntent.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingIntent.go index 796c4758e..6b1c7aa37 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingIntent.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingIntent.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a RoutingIntent. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupRoutingIntent(ctx *pulumi.Context, args *LookupRoutingIntentArgs, opts ...pulumi.InvokeOption) (*LookupRoutingIntentResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupRoutingIntentResult @@ -52,14 +52,20 @@ type LookupRoutingIntentResult struct { func LookupRoutingIntentOutput(ctx *pulumi.Context, args LookupRoutingIntentOutputArgs, opts ...pulumi.InvokeOption) LookupRoutingIntentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRoutingIntentResult, error) { + ApplyT(func(v interface{}) (LookupRoutingIntentResultOutput, error) { args := v.(LookupRoutingIntentArgs) - r, err := LookupRoutingIntent(ctx, &args, opts...) - var s LookupRoutingIntentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoutingIntentResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRoutingIntent", args, &rv, "", opts...) + if err != nil { + return LookupRoutingIntentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRoutingIntentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRoutingIntentResultOutput), nil + } + return output, nil }).(LookupRoutingIntentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRule.go new file mode 100644 index 000000000..3249a860b --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRule.go @@ -0,0 +1,166 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets a network manager routing configuration routing rule. +// Azure REST API version: 2024-03-01. +func LookupRoutingRule(ctx *pulumi.Context, args *LookupRoutingRuleArgs, opts ...pulumi.InvokeOption) (*LookupRoutingRuleResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoutingRuleResult + err := ctx.Invoke("azure-native:network:getRoutingRule", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupRoutingRuleArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName string `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager routing Configuration rule collection. + RuleCollectionName string `pulumi:"ruleCollectionName"` + // The name of the rule. + RuleName string `pulumi:"ruleName"` +} + +// Network routing rule. +type LookupRoutingRuleResult struct { + // A description for this rule. + Description *string `pulumi:"description"` + // Indicates the destination for this particular rule. + Destination RoutingRuleRouteDestinationResponse `pulumi:"destination"` + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // Resource ID. + Id string `pulumi:"id"` + // Resource name. + Name string `pulumi:"name"` + // Indicates the next hop for this particular rule. + NextHop RoutingRuleNextHopResponse `pulumi:"nextHop"` + // The provisioning state of the resource. + ProvisioningState string `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid string `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource type. + Type string `pulumi:"type"` +} + +func LookupRoutingRuleOutput(ctx *pulumi.Context, args LookupRoutingRuleOutputArgs, opts ...pulumi.InvokeOption) LookupRoutingRuleResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupRoutingRuleResultOutput, error) { + args := v.(LookupRoutingRuleArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoutingRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRoutingRule", args, &rv, "", opts...) + if err != nil { + return LookupRoutingRuleResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupRoutingRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRoutingRuleResultOutput), nil + } + return output, nil + }).(LookupRoutingRuleResultOutput) +} + +type LookupRoutingRuleOutputArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName pulumi.StringInput `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // The name of the network manager routing Configuration rule collection. + RuleCollectionName pulumi.StringInput `pulumi:"ruleCollectionName"` + // The name of the rule. + RuleName pulumi.StringInput `pulumi:"ruleName"` +} + +func (LookupRoutingRuleOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRoutingRuleArgs)(nil)).Elem() +} + +// Network routing rule. +type LookupRoutingRuleResultOutput struct{ *pulumi.OutputState } + +func (LookupRoutingRuleResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRoutingRuleResult)(nil)).Elem() +} + +func (o LookupRoutingRuleResultOutput) ToLookupRoutingRuleResultOutput() LookupRoutingRuleResultOutput { + return o +} + +func (o LookupRoutingRuleResultOutput) ToLookupRoutingRuleResultOutputWithContext(ctx context.Context) LookupRoutingRuleResultOutput { + return o +} + +// A description for this rule. +func (o LookupRoutingRuleResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Indicates the destination for this particular rule. +func (o LookupRoutingRuleResultOutput) Destination() RoutingRuleRouteDestinationResponseOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) RoutingRuleRouteDestinationResponse { return v.Destination }).(RoutingRuleRouteDestinationResponseOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o LookupRoutingRuleResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Resource ID. +func (o LookupRoutingRuleResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Resource name. +func (o LookupRoutingRuleResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Indicates the next hop for this particular rule. +func (o LookupRoutingRuleResultOutput) NextHop() RoutingRuleNextHopResponseOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) RoutingRuleNextHopResponse { return v.NextHop }).(RoutingRuleNextHopResponseOutput) +} + +// The provisioning state of the resource. +func (o LookupRoutingRuleResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o LookupRoutingRuleResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o LookupRoutingRuleResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o LookupRoutingRuleResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupRoutingRuleResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRuleCollection.go new file mode 100644 index 000000000..0affca60f --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRoutingRuleCollection.go @@ -0,0 +1,162 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets a network manager routing configuration rule collection. +// Azure REST API version: 2024-03-01. +func LookupRoutingRuleCollection(ctx *pulumi.Context, args *LookupRoutingRuleCollectionArgs, opts ...pulumi.InvokeOption) (*LookupRoutingRuleCollectionResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoutingRuleCollectionResult + err := ctx.Invoke("azure-native:network:getRoutingRuleCollection", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupRoutingRuleCollectionArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName string `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager routing Configuration rule collection. + RuleCollectionName string `pulumi:"ruleCollectionName"` +} + +// Defines the routing rule collection. +type LookupRoutingRuleCollectionResult struct { + // Groups for configuration + AppliesTo []NetworkManagerRoutingGroupItemResponse `pulumi:"appliesTo"` + // A description of the routing rule collection. + Description *string `pulumi:"description"` + // Determines whether BGP route propagation is enabled. Defaults to true. + DisableBgpRoutePropagation *string `pulumi:"disableBgpRoutePropagation"` + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // Resource ID. + Id string `pulumi:"id"` + // Resource name. + Name string `pulumi:"name"` + // The provisioning state of the resource. + ProvisioningState string `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid string `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource type. + Type string `pulumi:"type"` +} + +func LookupRoutingRuleCollectionOutput(ctx *pulumi.Context, args LookupRoutingRuleCollectionOutputArgs, opts ...pulumi.InvokeOption) LookupRoutingRuleCollectionResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupRoutingRuleCollectionResultOutput, error) { + args := v.(LookupRoutingRuleCollectionArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRoutingRuleCollectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRoutingRuleCollection", args, &rv, "", opts...) + if err != nil { + return LookupRoutingRuleCollectionResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupRoutingRuleCollectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRoutingRuleCollectionResultOutput), nil + } + return output, nil + }).(LookupRoutingRuleCollectionResultOutput) +} + +type LookupRoutingRuleCollectionOutputArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName pulumi.StringInput `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // The name of the network manager routing Configuration rule collection. + RuleCollectionName pulumi.StringInput `pulumi:"ruleCollectionName"` +} + +func (LookupRoutingRuleCollectionOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRoutingRuleCollectionArgs)(nil)).Elem() +} + +// Defines the routing rule collection. +type LookupRoutingRuleCollectionResultOutput struct{ *pulumi.OutputState } + +func (LookupRoutingRuleCollectionResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupRoutingRuleCollectionResult)(nil)).Elem() +} + +func (o LookupRoutingRuleCollectionResultOutput) ToLookupRoutingRuleCollectionResultOutput() LookupRoutingRuleCollectionResultOutput { + return o +} + +func (o LookupRoutingRuleCollectionResultOutput) ToLookupRoutingRuleCollectionResultOutputWithContext(ctx context.Context) LookupRoutingRuleCollectionResultOutput { + return o +} + +// Groups for configuration +func (o LookupRoutingRuleCollectionResultOutput) AppliesTo() NetworkManagerRoutingGroupItemResponseArrayOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) []NetworkManagerRoutingGroupItemResponse { return v.AppliesTo }).(NetworkManagerRoutingGroupItemResponseArrayOutput) +} + +// A description of the routing rule collection. +func (o LookupRoutingRuleCollectionResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Determines whether BGP route propagation is enabled. Defaults to true. +func (o LookupRoutingRuleCollectionResultOutput) DisableBgpRoutePropagation() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) *string { return v.DisableBgpRoutePropagation }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o LookupRoutingRuleCollectionResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Resource ID. +func (o LookupRoutingRuleCollectionResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Resource name. +func (o LookupRoutingRuleCollectionResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The provisioning state of the resource. +func (o LookupRoutingRuleCollectionResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o LookupRoutingRuleCollectionResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o LookupRoutingRuleCollectionResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o LookupRoutingRuleCollectionResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupRoutingRuleCollectionResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupRoutingRuleCollectionResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRulesEngine.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRulesEngine.go index 1264ddcee..52a6f2fd1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRulesEngine.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getRulesEngine.go @@ -48,14 +48,20 @@ type LookupRulesEngineResult struct { func LookupRulesEngineOutput(ctx *pulumi.Context, args LookupRulesEngineOutputArgs, opts ...pulumi.InvokeOption) LookupRulesEngineResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupRulesEngineResult, error) { + ApplyT(func(v interface{}) (LookupRulesEngineResultOutput, error) { args := v.(LookupRulesEngineArgs) - r, err := LookupRulesEngine(ctx, &args, opts...) - var s LookupRulesEngineResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupRulesEngineResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getRulesEngine", args, &rv, "", opts...) + if err != nil { + return LookupRulesEngineResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupRulesEngineResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupRulesEngineResultOutput), nil + } + return output, nil }).(LookupRulesEngineResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getScopeConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getScopeConnection.go index 40366140e..411dc7491 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getScopeConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getScopeConnection.go @@ -14,7 +14,7 @@ import ( // Get specified scope connection created by this Network Manager. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupScopeConnection(ctx *pulumi.Context, args *LookupScopeConnectionArgs, opts ...pulumi.InvokeOption) (*LookupScopeConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupScopeConnectionResult @@ -56,14 +56,20 @@ type LookupScopeConnectionResult struct { func LookupScopeConnectionOutput(ctx *pulumi.Context, args LookupScopeConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupScopeConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupScopeConnectionResult, error) { + ApplyT(func(v interface{}) (LookupScopeConnectionResultOutput, error) { args := v.(LookupScopeConnectionArgs) - r, err := LookupScopeConnection(ctx, &args, opts...) - var s LookupScopeConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupScopeConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getScopeConnection", args, &rv, "", opts...) + if err != nil { + return LookupScopeConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupScopeConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupScopeConnectionResultOutput), nil + } + return output, nil }).(LookupScopeConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityAdminConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityAdminConfiguration.go index 81fd4136e..e7edb561b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityAdminConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityAdminConfiguration.go @@ -14,7 +14,7 @@ import ( // Retrieves a network manager security admin configuration. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. func LookupSecurityAdminConfiguration(ctx *pulumi.Context, args *LookupSecurityAdminConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupSecurityAdminConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSecurityAdminConfigurationResult @@ -58,14 +58,20 @@ type LookupSecurityAdminConfigurationResult struct { func LookupSecurityAdminConfigurationOutput(ctx *pulumi.Context, args LookupSecurityAdminConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityAdminConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSecurityAdminConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupSecurityAdminConfigurationResultOutput, error) { args := v.(LookupSecurityAdminConfigurationArgs) - r, err := LookupSecurityAdminConfiguration(ctx, &args, opts...) - var s LookupSecurityAdminConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityAdminConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSecurityAdminConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupSecurityAdminConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSecurityAdminConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSecurityAdminConfigurationResultOutput), nil + } + return output, nil }).(LookupSecurityAdminConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityPartnerProvider.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityPartnerProvider.go index 872721783..6f757bd8c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityPartnerProvider.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityPartnerProvider.go @@ -14,7 +14,7 @@ import ( // Gets the specified Security Partner Provider. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupSecurityPartnerProvider(ctx *pulumi.Context, args *LookupSecurityPartnerProviderArgs, opts ...pulumi.InvokeOption) (*LookupSecurityPartnerProviderResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSecurityPartnerProviderResult @@ -58,14 +58,20 @@ type LookupSecurityPartnerProviderResult struct { func LookupSecurityPartnerProviderOutput(ctx *pulumi.Context, args LookupSecurityPartnerProviderOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityPartnerProviderResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSecurityPartnerProviderResult, error) { + ApplyT(func(v interface{}) (LookupSecurityPartnerProviderResultOutput, error) { args := v.(LookupSecurityPartnerProviderArgs) - r, err := LookupSecurityPartnerProvider(ctx, &args, opts...) - var s LookupSecurityPartnerProviderResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityPartnerProviderResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSecurityPartnerProvider", args, &rv, "", opts...) + if err != nil { + return LookupSecurityPartnerProviderResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSecurityPartnerProviderResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSecurityPartnerProviderResultOutput), nil + } + return output, nil }).(LookupSecurityPartnerProviderResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityRule.go index b20848960..de5353b84 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityRule.go @@ -14,7 +14,7 @@ import ( // Get the specified network security rule. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2017-03-01, 2019-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2017-03-01, 2019-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupSecurityRule(ctx *pulumi.Context, args *LookupSecurityRuleArgs, opts ...pulumi.InvokeOption) (*LookupSecurityRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSecurityRuleResult @@ -80,14 +80,20 @@ type LookupSecurityRuleResult struct { func LookupSecurityRuleOutput(ctx *pulumi.Context, args LookupSecurityRuleOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSecurityRuleResult, error) { + ApplyT(func(v interface{}) (LookupSecurityRuleResultOutput, error) { args := v.(LookupSecurityRuleArgs) - r, err := LookupSecurityRule(ctx, &args, opts...) - var s LookupSecurityRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSecurityRule", args, &rv, "", opts...) + if err != nil { + return LookupSecurityRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSecurityRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSecurityRuleResultOutput), nil + } + return output, nil }).(LookupSecurityRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserConfiguration.go index 3e85da41c..6d3d32b6f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserConfiguration.go @@ -14,7 +14,7 @@ import ( // Retrieves a network manager security user configuration. // Azure REST API version: 2022-04-01-preview. // -// Other available API versions: 2021-05-01-preview. +// Other available API versions: 2021-05-01-preview, 2024-03-01. func LookupSecurityUserConfiguration(ctx *pulumi.Context, args *LookupSecurityUserConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupSecurityUserConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSecurityUserConfigurationResult @@ -56,14 +56,20 @@ type LookupSecurityUserConfigurationResult struct { func LookupSecurityUserConfigurationOutput(ctx *pulumi.Context, args LookupSecurityUserConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityUserConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSecurityUserConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupSecurityUserConfigurationResultOutput, error) { args := v.(LookupSecurityUserConfigurationArgs) - r, err := LookupSecurityUserConfiguration(ctx, &args, opts...) - var s LookupSecurityUserConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityUserConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSecurityUserConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupSecurityUserConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSecurityUserConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSecurityUserConfigurationResultOutput), nil + } + return output, nil }).(LookupSecurityUserConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRule.go new file mode 100644 index 000000000..e7f3b4d59 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRule.go @@ -0,0 +1,194 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets a security user rule. +// Azure REST API version: 2024-03-01. +func LookupSecurityUserRule(ctx *pulumi.Context, args *LookupSecurityUserRuleArgs, opts ...pulumi.InvokeOption) (*LookupSecurityUserRuleResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityUserRuleResult + err := ctx.Invoke("azure-native:network:getSecurityUserRule", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupSecurityUserRuleArgs struct { + // The name of the network manager Security Configuration. + ConfigurationName string `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager security Configuration rule collection. + RuleCollectionName string `pulumi:"ruleCollectionName"` + // The name of the rule. + RuleName string `pulumi:"ruleName"` +} + +// Network security user rule. +type LookupSecurityUserRuleResult struct { + // A description for this rule. + Description *string `pulumi:"description"` + // The destination port ranges. + DestinationPortRanges []string `pulumi:"destinationPortRanges"` + // The destination address prefixes. CIDR or destination IP ranges. + Destinations []AddressPrefixItemResponse `pulumi:"destinations"` + // Indicates if the traffic matched against the rule in inbound or outbound. + Direction string `pulumi:"direction"` + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // Resource ID. + Id string `pulumi:"id"` + // Resource name. + Name string `pulumi:"name"` + // Network protocol this rule applies to. + Protocol string `pulumi:"protocol"` + // The provisioning state of the security configuration user rule resource. + ProvisioningState string `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid string `pulumi:"resourceGuid"` + // The source port ranges. + SourcePortRanges []string `pulumi:"sourcePortRanges"` + // The CIDR or source IP ranges. + Sources []AddressPrefixItemResponse `pulumi:"sources"` + // The system metadata related to this resource. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource type. + Type string `pulumi:"type"` +} + +func LookupSecurityUserRuleOutput(ctx *pulumi.Context, args LookupSecurityUserRuleOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityUserRuleResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupSecurityUserRuleResultOutput, error) { + args := v.(LookupSecurityUserRuleArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityUserRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSecurityUserRule", args, &rv, "", opts...) + if err != nil { + return LookupSecurityUserRuleResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupSecurityUserRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSecurityUserRuleResultOutput), nil + } + return output, nil + }).(LookupSecurityUserRuleResultOutput) +} + +type LookupSecurityUserRuleOutputArgs struct { + // The name of the network manager Security Configuration. + ConfigurationName pulumi.StringInput `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // The name of the network manager security Configuration rule collection. + RuleCollectionName pulumi.StringInput `pulumi:"ruleCollectionName"` + // The name of the rule. + RuleName pulumi.StringInput `pulumi:"ruleName"` +} + +func (LookupSecurityUserRuleOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupSecurityUserRuleArgs)(nil)).Elem() +} + +// Network security user rule. +type LookupSecurityUserRuleResultOutput struct{ *pulumi.OutputState } + +func (LookupSecurityUserRuleResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupSecurityUserRuleResult)(nil)).Elem() +} + +func (o LookupSecurityUserRuleResultOutput) ToLookupSecurityUserRuleResultOutput() LookupSecurityUserRuleResultOutput { + return o +} + +func (o LookupSecurityUserRuleResultOutput) ToLookupSecurityUserRuleResultOutputWithContext(ctx context.Context) LookupSecurityUserRuleResultOutput { + return o +} + +// A description for this rule. +func (o LookupSecurityUserRuleResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// The destination port ranges. +func (o LookupSecurityUserRuleResultOutput) DestinationPortRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) []string { return v.DestinationPortRanges }).(pulumi.StringArrayOutput) +} + +// The destination address prefixes. CIDR or destination IP ranges. +func (o LookupSecurityUserRuleResultOutput) Destinations() AddressPrefixItemResponseArrayOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) []AddressPrefixItemResponse { return v.Destinations }).(AddressPrefixItemResponseArrayOutput) +} + +// Indicates if the traffic matched against the rule in inbound or outbound. +func (o LookupSecurityUserRuleResultOutput) Direction() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.Direction }).(pulumi.StringOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o LookupSecurityUserRuleResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Resource ID. +func (o LookupSecurityUserRuleResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Resource name. +func (o LookupSecurityUserRuleResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Network protocol this rule applies to. +func (o LookupSecurityUserRuleResultOutput) Protocol() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.Protocol }).(pulumi.StringOutput) +} + +// The provisioning state of the security configuration user rule resource. +func (o LookupSecurityUserRuleResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o LookupSecurityUserRuleResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The source port ranges. +func (o LookupSecurityUserRuleResultOutput) SourcePortRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) []string { return v.SourcePortRanges }).(pulumi.StringArrayOutput) +} + +// The CIDR or source IP ranges. +func (o LookupSecurityUserRuleResultOutput) Sources() AddressPrefixItemResponseArrayOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) []AddressPrefixItemResponse { return v.Sources }).(AddressPrefixItemResponseArrayOutput) +} + +// The system metadata related to this resource. +func (o LookupSecurityUserRuleResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o LookupSecurityUserRuleResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupSecurityUserRuleResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRuleCollection.go new file mode 100644 index 000000000..3c5b1acf3 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSecurityUserRuleCollection.go @@ -0,0 +1,157 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets a network manager security user configuration rule collection. +// Azure REST API version: 2024-03-01. +func LookupSecurityUserRuleCollection(ctx *pulumi.Context, args *LookupSecurityUserRuleCollectionArgs, opts ...pulumi.InvokeOption) (*LookupSecurityUserRuleCollectionResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityUserRuleCollectionResult + err := ctx.Invoke("azure-native:network:getSecurityUserRuleCollection", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupSecurityUserRuleCollectionArgs struct { + // The name of the network manager Security Configuration. + ConfigurationName string `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager security Configuration rule collection. + RuleCollectionName string `pulumi:"ruleCollectionName"` +} + +// Defines the security user rule collection. +type LookupSecurityUserRuleCollectionResult struct { + // Groups for configuration + AppliesToGroups []SecurityUserGroupItemResponse `pulumi:"appliesToGroups"` + // A description of the security user rule collection. + Description *string `pulumi:"description"` + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // Resource ID. + Id string `pulumi:"id"` + // Resource name. + Name string `pulumi:"name"` + // The provisioning state of the resource. + ProvisioningState string `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid string `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource type. + Type string `pulumi:"type"` +} + +func LookupSecurityUserRuleCollectionOutput(ctx *pulumi.Context, args LookupSecurityUserRuleCollectionOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityUserRuleCollectionResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupSecurityUserRuleCollectionResultOutput, error) { + args := v.(LookupSecurityUserRuleCollectionArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSecurityUserRuleCollectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSecurityUserRuleCollection", args, &rv, "", opts...) + if err != nil { + return LookupSecurityUserRuleCollectionResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupSecurityUserRuleCollectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSecurityUserRuleCollectionResultOutput), nil + } + return output, nil + }).(LookupSecurityUserRuleCollectionResultOutput) +} + +type LookupSecurityUserRuleCollectionOutputArgs struct { + // The name of the network manager Security Configuration. + ConfigurationName pulumi.StringInput `pulumi:"configurationName"` + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // The name of the network manager security Configuration rule collection. + RuleCollectionName pulumi.StringInput `pulumi:"ruleCollectionName"` +} + +func (LookupSecurityUserRuleCollectionOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupSecurityUserRuleCollectionArgs)(nil)).Elem() +} + +// Defines the security user rule collection. +type LookupSecurityUserRuleCollectionResultOutput struct{ *pulumi.OutputState } + +func (LookupSecurityUserRuleCollectionResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupSecurityUserRuleCollectionResult)(nil)).Elem() +} + +func (o LookupSecurityUserRuleCollectionResultOutput) ToLookupSecurityUserRuleCollectionResultOutput() LookupSecurityUserRuleCollectionResultOutput { + return o +} + +func (o LookupSecurityUserRuleCollectionResultOutput) ToLookupSecurityUserRuleCollectionResultOutputWithContext(ctx context.Context) LookupSecurityUserRuleCollectionResultOutput { + return o +} + +// Groups for configuration +func (o LookupSecurityUserRuleCollectionResultOutput) AppliesToGroups() SecurityUserGroupItemResponseArrayOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) []SecurityUserGroupItemResponse { + return v.AppliesToGroups + }).(SecurityUserGroupItemResponseArrayOutput) +} + +// A description of the security user rule collection. +func (o LookupSecurityUserRuleCollectionResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o LookupSecurityUserRuleCollectionResultOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) string { return v.Etag }).(pulumi.StringOutput) +} + +// Resource ID. +func (o LookupSecurityUserRuleCollectionResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) string { return v.Id }).(pulumi.StringOutput) +} + +// Resource name. +func (o LookupSecurityUserRuleCollectionResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) string { return v.Name }).(pulumi.StringOutput) +} + +// The provisioning state of the resource. +func (o LookupSecurityUserRuleCollectionResultOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o LookupSecurityUserRuleCollectionResultOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) string { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o LookupSecurityUserRuleCollectionResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o LookupSecurityUserRuleCollectionResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupSecurityUserRuleCollectionResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupSecurityUserRuleCollectionResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicy.go index 1664ef065..4e78e5b95 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicy.go @@ -14,7 +14,7 @@ import ( // Gets the specified service Endpoint Policies in a specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupServiceEndpointPolicy(ctx *pulumi.Context, args *LookupServiceEndpointPolicyArgs, opts ...pulumi.InvokeOption) (*LookupServiceEndpointPolicyResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupServiceEndpointPolicyResult @@ -66,14 +66,20 @@ type LookupServiceEndpointPolicyResult struct { func LookupServiceEndpointPolicyOutput(ctx *pulumi.Context, args LookupServiceEndpointPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupServiceEndpointPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupServiceEndpointPolicyResult, error) { + ApplyT(func(v interface{}) (LookupServiceEndpointPolicyResultOutput, error) { args := v.(LookupServiceEndpointPolicyArgs) - r, err := LookupServiceEndpointPolicy(ctx, &args, opts...) - var s LookupServiceEndpointPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupServiceEndpointPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getServiceEndpointPolicy", args, &rv, "", opts...) + if err != nil { + return LookupServiceEndpointPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupServiceEndpointPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupServiceEndpointPolicyResultOutput), nil + } + return output, nil }).(LookupServiceEndpointPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicyDefinition.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicyDefinition.go index ca5160e5f..8e24d3a0e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicyDefinition.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getServiceEndpointPolicyDefinition.go @@ -14,7 +14,7 @@ import ( // Get the specified service endpoint policy definitions from service endpoint policy. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupServiceEndpointPolicyDefinition(ctx *pulumi.Context, args *LookupServiceEndpointPolicyDefinitionArgs, opts ...pulumi.InvokeOption) (*LookupServiceEndpointPolicyDefinitionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupServiceEndpointPolicyDefinitionResult @@ -56,14 +56,20 @@ type LookupServiceEndpointPolicyDefinitionResult struct { func LookupServiceEndpointPolicyDefinitionOutput(ctx *pulumi.Context, args LookupServiceEndpointPolicyDefinitionOutputArgs, opts ...pulumi.InvokeOption) LookupServiceEndpointPolicyDefinitionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupServiceEndpointPolicyDefinitionResult, error) { + ApplyT(func(v interface{}) (LookupServiceEndpointPolicyDefinitionResultOutput, error) { args := v.(LookupServiceEndpointPolicyDefinitionArgs) - r, err := LookupServiceEndpointPolicyDefinition(ctx, &args, opts...) - var s LookupServiceEndpointPolicyDefinitionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupServiceEndpointPolicyDefinitionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getServiceEndpointPolicyDefinition", args, &rv, "", opts...) + if err != nil { + return LookupServiceEndpointPolicyDefinitionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupServiceEndpointPolicyDefinitionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupServiceEndpointPolicyDefinitionResultOutput), nil + } + return output, nil }).(LookupServiceEndpointPolicyDefinitionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticCidr.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticCidr.go new file mode 100644 index 000000000..7835a6199 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticCidr.go @@ -0,0 +1,127 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Instance of StaticCidr resource. +// Azure REST API version: 2024-01-01-preview. +func LookupStaticCidr(ctx *pulumi.Context, args *LookupStaticCidrArgs, opts ...pulumi.InvokeOption) (*LookupStaticCidrResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupStaticCidrResult + err := ctx.Invoke("azure-native:network:getStaticCidr", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupStaticCidrArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Pool resource name. + PoolName string `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // StaticCidr resource name to retrieve. + StaticCidrName string `pulumi:"staticCidrName"` +} + +// Instance of StaticCidr resource. +type LookupStaticCidrResult struct { + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The name of the resource + Name string `pulumi:"name"` + // Properties of static CIDR resource. + Properties StaticCidrPropertiesResponse `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupStaticCidrOutput(ctx *pulumi.Context, args LookupStaticCidrOutputArgs, opts ...pulumi.InvokeOption) LookupStaticCidrResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupStaticCidrResultOutput, error) { + args := v.(LookupStaticCidrArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupStaticCidrResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getStaticCidr", args, &rv, "", opts...) + if err != nil { + return LookupStaticCidrResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupStaticCidrResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupStaticCidrResultOutput), nil + } + return output, nil + }).(LookupStaticCidrResultOutput) +} + +type LookupStaticCidrOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // Pool resource name. + PoolName pulumi.StringInput `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // StaticCidr resource name to retrieve. + StaticCidrName pulumi.StringInput `pulumi:"staticCidrName"` +} + +func (LookupStaticCidrOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupStaticCidrArgs)(nil)).Elem() +} + +// Instance of StaticCidr resource. +type LookupStaticCidrResultOutput struct{ *pulumi.OutputState } + +func (LookupStaticCidrResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupStaticCidrResult)(nil)).Elem() +} + +func (o LookupStaticCidrResultOutput) ToLookupStaticCidrResultOutput() LookupStaticCidrResultOutput { + return o +} + +func (o LookupStaticCidrResultOutput) ToLookupStaticCidrResultOutputWithContext(ctx context.Context) LookupStaticCidrResultOutput { + return o +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupStaticCidrResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupStaticCidrResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupStaticCidrResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupStaticCidrResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Properties of static CIDR resource. +func (o LookupStaticCidrResultOutput) Properties() StaticCidrPropertiesResponseOutput { + return o.ApplyT(func(v LookupStaticCidrResult) StaticCidrPropertiesResponse { return v.Properties }).(StaticCidrPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupStaticCidrResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupStaticCidrResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupStaticCidrResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupStaticCidrResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupStaticCidrResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticMember.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticMember.go index 1fd1b8260..143e93c6e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticMember.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getStaticMember.go @@ -14,7 +14,7 @@ import ( // Gets the specified static member. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupStaticMember(ctx *pulumi.Context, args *LookupStaticMemberArgs, opts ...pulumi.InvokeOption) (*LookupStaticMemberResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupStaticMemberResult @@ -58,14 +58,20 @@ type LookupStaticMemberResult struct { func LookupStaticMemberOutput(ctx *pulumi.Context, args LookupStaticMemberOutputArgs, opts ...pulumi.InvokeOption) LookupStaticMemberResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupStaticMemberResult, error) { + ApplyT(func(v interface{}) (LookupStaticMemberResultOutput, error) { args := v.(LookupStaticMemberArgs) - r, err := LookupStaticMember(ctx, &args, opts...) - var s LookupStaticMemberResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupStaticMemberResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getStaticMember", args, &rv, "", opts...) + if err != nil { + return LookupStaticMemberResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupStaticMemberResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupStaticMemberResultOutput), nil + } + return output, nil }).(LookupStaticMemberResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubnet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubnet.go index c45925822..a86d26866 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubnet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubnet.go @@ -14,7 +14,7 @@ import ( // Gets the specified subnet by virtual network and resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-02-01, 2019-06-01, 2019-08-01, 2020-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-02-01, 2019-06-01, 2019-08-01, 2020-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupSubnet(ctx *pulumi.Context, args *LookupSubnetArgs, opts ...pulumi.InvokeOption) (*LookupSubnetResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSubnetResult @@ -105,14 +105,20 @@ func (val *LookupSubnetResult) Defaults() *LookupSubnetResult { func LookupSubnetOutput(ctx *pulumi.Context, args LookupSubnetOutputArgs, opts ...pulumi.InvokeOption) LookupSubnetResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSubnetResult, error) { + ApplyT(func(v interface{}) (LookupSubnetResultOutput, error) { args := v.(LookupSubnetArgs) - r, err := LookupSubnet(ctx, &args, opts...) - var s LookupSubnetResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSubnetResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSubnet", args, &rv, "", opts...) + if err != nil { + return LookupSubnetResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSubnetResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSubnetResultOutput), nil + } + return output, nil }).(LookupSubnetResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubscriptionNetworkManagerConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubscriptionNetworkManagerConnection.go index a31a8a223..41a7d0e6b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubscriptionNetworkManagerConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getSubscriptionNetworkManagerConnection.go @@ -14,7 +14,7 @@ import ( // Get a specified connection created by this subscription. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupSubscriptionNetworkManagerConnection(ctx *pulumi.Context, args *LookupSubscriptionNetworkManagerConnectionArgs, opts ...pulumi.InvokeOption) (*LookupSubscriptionNetworkManagerConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupSubscriptionNetworkManagerConnectionResult @@ -50,14 +50,20 @@ type LookupSubscriptionNetworkManagerConnectionResult struct { func LookupSubscriptionNetworkManagerConnectionOutput(ctx *pulumi.Context, args LookupSubscriptionNetworkManagerConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupSubscriptionNetworkManagerConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupSubscriptionNetworkManagerConnectionResult, error) { + ApplyT(func(v interface{}) (LookupSubscriptionNetworkManagerConnectionResultOutput, error) { args := v.(LookupSubscriptionNetworkManagerConnectionArgs) - r, err := LookupSubscriptionNetworkManagerConnection(ctx, &args, opts...) - var s LookupSubscriptionNetworkManagerConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupSubscriptionNetworkManagerConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getSubscriptionNetworkManagerConnection", args, &rv, "", opts...) + if err != nil { + return LookupSubscriptionNetworkManagerConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupSubscriptionNetworkManagerConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupSubscriptionNetworkManagerConnectionResultOutput), nil + } + return output, nil }).(LookupSubscriptionNetworkManagerConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getTrafficManagerUserMetricsKey.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getTrafficManagerUserMetricsKey.go index 8e9f5efe2..b4040a613 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getTrafficManagerUserMetricsKey.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getTrafficManagerUserMetricsKey.go @@ -42,14 +42,20 @@ type LookupTrafficManagerUserMetricsKeyResult struct { func LookupTrafficManagerUserMetricsKeyOutput(ctx *pulumi.Context, args LookupTrafficManagerUserMetricsKeyOutputArgs, opts ...pulumi.InvokeOption) LookupTrafficManagerUserMetricsKeyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTrafficManagerUserMetricsKeyResult, error) { + ApplyT(func(v interface{}) (LookupTrafficManagerUserMetricsKeyResultOutput, error) { args := v.(LookupTrafficManagerUserMetricsKeyArgs) - r, err := LookupTrafficManagerUserMetricsKey(ctx, &args, opts...) - var s LookupTrafficManagerUserMetricsKeyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTrafficManagerUserMetricsKeyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getTrafficManagerUserMetricsKey", args, &rv, "", opts...) + if err != nil { + return LookupTrafficManagerUserMetricsKeyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTrafficManagerUserMetricsKeyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTrafficManagerUserMetricsKeyResultOutput), nil + } + return output, nil }).(LookupTrafficManagerUserMetricsKeyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRule.go index c0f057bbc..3995f5793 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRule.go @@ -73,14 +73,20 @@ type LookupUserRuleResult struct { func LookupUserRuleOutput(ctx *pulumi.Context, args LookupUserRuleOutputArgs, opts ...pulumi.InvokeOption) LookupUserRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupUserRuleResult, error) { + ApplyT(func(v interface{}) (LookupUserRuleResultOutput, error) { args := v.(LookupUserRuleArgs) - r, err := LookupUserRule(ctx, &args, opts...) - var s LookupUserRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupUserRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getUserRule", args, &rv, "", opts...) + if err != nil { + return LookupUserRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupUserRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupUserRuleResultOutput), nil + } + return output, nil }).(LookupUserRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRuleCollection.go index 8f32a887d..035e6111e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRuleCollection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getUserRuleCollection.go @@ -58,14 +58,20 @@ type LookupUserRuleCollectionResult struct { func LookupUserRuleCollectionOutput(ctx *pulumi.Context, args LookupUserRuleCollectionOutputArgs, opts ...pulumi.InvokeOption) LookupUserRuleCollectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupUserRuleCollectionResult, error) { + ApplyT(func(v interface{}) (LookupUserRuleCollectionResultOutput, error) { args := v.(LookupUserRuleCollectionArgs) - r, err := LookupUserRuleCollection(ctx, &args, opts...) - var s LookupUserRuleCollectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupUserRuleCollectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getUserRuleCollection", args, &rv, "", opts...) + if err != nil { + return LookupUserRuleCollectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupUserRuleCollectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupUserRuleCollectionResultOutput), nil + } + return output, nil }).(LookupUserRuleCollectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVerifierWorkspace.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVerifierWorkspace.go new file mode 100644 index 000000000..a6a7c09de --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVerifierWorkspace.go @@ -0,0 +1,137 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Instance of Verifier Workspace. +// Azure REST API version: 2024-01-01-preview. +func LookupVerifierWorkspace(ctx *pulumi.Context, args *LookupVerifierWorkspaceArgs, opts ...pulumi.InvokeOption) (*LookupVerifierWorkspaceResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVerifierWorkspaceResult + err := ctx.Invoke("azure-native:network:getVerifierWorkspace", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupVerifierWorkspaceArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName string `pulumi:"workspaceName"` +} + +// Instance of Verifier Workspace. +type LookupVerifierWorkspaceResult struct { + // Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id string `pulumi:"id"` + // The geo-location where the resource lives + Location string `pulumi:"location"` + // The name of the resource + Name string `pulumi:"name"` + // Properties of Verifier Workspace resource. + Properties VerifierWorkspacePropertiesResponse `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponse `pulumi:"systemData"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type string `pulumi:"type"` +} + +func LookupVerifierWorkspaceOutput(ctx *pulumi.Context, args LookupVerifierWorkspaceOutputArgs, opts ...pulumi.InvokeOption) LookupVerifierWorkspaceResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupVerifierWorkspaceResultOutput, error) { + args := v.(LookupVerifierWorkspaceArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVerifierWorkspaceResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVerifierWorkspace", args, &rv, "", opts...) + if err != nil { + return LookupVerifierWorkspaceResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(LookupVerifierWorkspaceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVerifierWorkspaceResultOutput), nil + } + return output, nil + }).(LookupVerifierWorkspaceResultOutput) +} + +type LookupVerifierWorkspaceOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName pulumi.StringInput `pulumi:"workspaceName"` +} + +func (LookupVerifierWorkspaceOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupVerifierWorkspaceArgs)(nil)).Elem() +} + +// Instance of Verifier Workspace. +type LookupVerifierWorkspaceResultOutput struct{ *pulumi.OutputState } + +func (LookupVerifierWorkspaceResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupVerifierWorkspaceResult)(nil)).Elem() +} + +func (o LookupVerifierWorkspaceResultOutput) ToLookupVerifierWorkspaceResultOutput() LookupVerifierWorkspaceResultOutput { + return o +} + +func (o LookupVerifierWorkspaceResultOutput) ToLookupVerifierWorkspaceResultOutputWithContext(ctx context.Context) LookupVerifierWorkspaceResultOutput { + return o +} + +// Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" +func (o LookupVerifierWorkspaceResultOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) string { return v.Id }).(pulumi.StringOutput) +} + +// The geo-location where the resource lives +func (o LookupVerifierWorkspaceResultOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) string { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o LookupVerifierWorkspaceResultOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) string { return v.Name }).(pulumi.StringOutput) +} + +// Properties of Verifier Workspace resource. +func (o LookupVerifierWorkspaceResultOutput) Properties() VerifierWorkspacePropertiesResponseOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) VerifierWorkspacePropertiesResponse { return v.Properties }).(VerifierWorkspacePropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o LookupVerifierWorkspaceResultOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) SystemDataResponse { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o LookupVerifierWorkspaceResultOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o LookupVerifierWorkspaceResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v LookupVerifierWorkspaceResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupVerifierWorkspaceResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualApplianceSite.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualApplianceSite.go index 4f8b7b1c3..238ecd0de 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualApplianceSite.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualApplianceSite.go @@ -14,7 +14,7 @@ import ( // Gets the specified Virtual Appliance Site. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualApplianceSite(ctx *pulumi.Context, args *LookupVirtualApplianceSiteArgs, opts ...pulumi.InvokeOption) (*LookupVirtualApplianceSiteResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualApplianceSiteResult @@ -54,14 +54,20 @@ type LookupVirtualApplianceSiteResult struct { func LookupVirtualApplianceSiteOutput(ctx *pulumi.Context, args LookupVirtualApplianceSiteOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualApplianceSiteResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualApplianceSiteResult, error) { + ApplyT(func(v interface{}) (LookupVirtualApplianceSiteResultOutput, error) { args := v.(LookupVirtualApplianceSiteArgs) - r, err := LookupVirtualApplianceSite(ctx, &args, opts...) - var s LookupVirtualApplianceSiteResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualApplianceSiteResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualApplianceSite", args, &rv, "", opts...) + if err != nil { + return LookupVirtualApplianceSiteResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualApplianceSiteResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualApplianceSiteResultOutput), nil + } + return output, nil }).(LookupVirtualApplianceSiteResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHub.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHub.go index 01e38114b..db1b027cc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHub.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHub.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a VirtualHub. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-07-01, 2020-04-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2020-04-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualHub(ctx *pulumi.Context, args *LookupVirtualHubArgs, opts ...pulumi.InvokeOption) (*LookupVirtualHubResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualHubResult @@ -96,14 +96,20 @@ type LookupVirtualHubResult struct { func LookupVirtualHubOutput(ctx *pulumi.Context, args LookupVirtualHubOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualHubResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualHubResult, error) { + ApplyT(func(v interface{}) (LookupVirtualHubResultOutput, error) { args := v.(LookupVirtualHubArgs) - r, err := LookupVirtualHub(ctx, &args, opts...) - var s LookupVirtualHubResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualHubResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualHub", args, &rv, "", opts...) + if err != nil { + return LookupVirtualHubResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualHubResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualHubResultOutput), nil + } + return output, nil }).(LookupVirtualHubResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubBgpConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubBgpConnection.go index 74449da97..3f71b1463 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubBgpConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubBgpConnection.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a Virtual Hub Bgp Connection. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualHubBgpConnection(ctx *pulumi.Context, args *LookupVirtualHubBgpConnectionArgs, opts ...pulumi.InvokeOption) (*LookupVirtualHubBgpConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualHubBgpConnectionResult @@ -58,14 +58,20 @@ type LookupVirtualHubBgpConnectionResult struct { func LookupVirtualHubBgpConnectionOutput(ctx *pulumi.Context, args LookupVirtualHubBgpConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualHubBgpConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualHubBgpConnectionResult, error) { + ApplyT(func(v interface{}) (LookupVirtualHubBgpConnectionResultOutput, error) { args := v.(LookupVirtualHubBgpConnectionArgs) - r, err := LookupVirtualHubBgpConnection(ctx, &args, opts...) - var s LookupVirtualHubBgpConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualHubBgpConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualHubBgpConnection", args, &rv, "", opts...) + if err != nil { + return LookupVirtualHubBgpConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualHubBgpConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualHubBgpConnectionResultOutput), nil + } + return output, nil }).(LookupVirtualHubBgpConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubIpConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubIpConfiguration.go index 15bbfe6c3..33a22f50f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubIpConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubIpConfiguration.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a Virtual Hub Ip configuration. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualHubIpConfiguration(ctx *pulumi.Context, args *LookupVirtualHubIpConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupVirtualHubIpConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualHubIpConfigurationResult @@ -71,14 +71,20 @@ func (val *LookupVirtualHubIpConfigurationResult) Defaults() *LookupVirtualHubIp func LookupVirtualHubIpConfigurationOutput(ctx *pulumi.Context, args LookupVirtualHubIpConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualHubIpConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualHubIpConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupVirtualHubIpConfigurationResultOutput, error) { args := v.(LookupVirtualHubIpConfigurationArgs) - r, err := LookupVirtualHubIpConfiguration(ctx, &args, opts...) - var s LookupVirtualHubIpConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualHubIpConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualHubIpConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupVirtualHubIpConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualHubIpConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualHubIpConfigurationResultOutput), nil + } + return output, nil }).(LookupVirtualHubIpConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubRouteTableV2.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubRouteTableV2.go index 09ed05127..4af619bcf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubRouteTableV2.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualHubRouteTableV2.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a VirtualHubRouteTableV2. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualHubRouteTableV2(ctx *pulumi.Context, args *LookupVirtualHubRouteTableV2Args, opts ...pulumi.InvokeOption) (*LookupVirtualHubRouteTableV2Result, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualHubRouteTableV2Result @@ -52,14 +52,20 @@ type LookupVirtualHubRouteTableV2Result struct { func LookupVirtualHubRouteTableV2Output(ctx *pulumi.Context, args LookupVirtualHubRouteTableV2OutputArgs, opts ...pulumi.InvokeOption) LookupVirtualHubRouteTableV2ResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualHubRouteTableV2Result, error) { + ApplyT(func(v interface{}) (LookupVirtualHubRouteTableV2ResultOutput, error) { args := v.(LookupVirtualHubRouteTableV2Args) - r, err := LookupVirtualHubRouteTableV2(ctx, &args, opts...) - var s LookupVirtualHubRouteTableV2Result - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualHubRouteTableV2Result + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualHubRouteTableV2", args, &rv, "", opts...) + if err != nil { + return LookupVirtualHubRouteTableV2ResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualHubRouteTableV2ResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualHubRouteTableV2ResultOutput), nil + } + return output, nil }).(LookupVirtualHubRouteTableV2ResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetwork.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetwork.go index 8a5372e2c..8fd0c25a8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetwork.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetwork.go @@ -14,7 +14,7 @@ import ( // Gets the specified virtual network by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualNetwork(ctx *pulumi.Context, args *LookupVirtualNetworkArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkResult @@ -99,14 +99,20 @@ func (val *LookupVirtualNetworkResult) Defaults() *LookupVirtualNetworkResult { func LookupVirtualNetworkOutput(ctx *pulumi.Context, args LookupVirtualNetworkOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkResultOutput, error) { args := v.(LookupVirtualNetworkArgs) - r, err := LookupVirtualNetwork(ctx, &args, opts...) - var s LookupVirtualNetworkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetwork", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGateway.go index 7874baf19..da89b037c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGateway.go @@ -14,7 +14,7 @@ import ( // Gets the specified virtual network gateway by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualNetworkGateway(ctx *pulumi.Context, args *LookupVirtualNetworkGatewayArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkGatewayResult @@ -100,14 +100,20 @@ type LookupVirtualNetworkGatewayResult struct { func LookupVirtualNetworkGatewayOutput(ctx *pulumi.Context, args LookupVirtualNetworkGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkGatewayResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkGatewayResultOutput, error) { args := v.(LookupVirtualNetworkGatewayArgs) - r, err := LookupVirtualNetworkGateway(ctx, &args, opts...) - var s LookupVirtualNetworkGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGateway", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkGatewayResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayAdvertisedRoutes.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayAdvertisedRoutes.go index 2ab367177..edc0f6c89 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayAdvertisedRoutes.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayAdvertisedRoutes.go @@ -14,7 +14,7 @@ import ( // This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayAdvertisedRoutes(ctx *pulumi.Context, args *GetVirtualNetworkGatewayAdvertisedRoutesArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayAdvertisedRoutesResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayAdvertisedRoutesResult @@ -42,14 +42,20 @@ type GetVirtualNetworkGatewayAdvertisedRoutesResult struct { func GetVirtualNetworkGatewayAdvertisedRoutesOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayAdvertisedRoutesOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayAdvertisedRoutesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayAdvertisedRoutesResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayAdvertisedRoutesResultOutput, error) { args := v.(GetVirtualNetworkGatewayAdvertisedRoutesArgs) - r, err := GetVirtualNetworkGatewayAdvertisedRoutes(ctx, &args, opts...) - var s GetVirtualNetworkGatewayAdvertisedRoutesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayAdvertisedRoutesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayAdvertisedRoutes", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayAdvertisedRoutesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayAdvertisedRoutesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayAdvertisedRoutesResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayAdvertisedRoutesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayBgpPeerStatus.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayBgpPeerStatus.go index 5659ce3f7..4a01ddb69 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayBgpPeerStatus.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayBgpPeerStatus.go @@ -14,7 +14,7 @@ import ( // The GetBgpPeerStatus operation retrieves the status of all BGP peers. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayBgpPeerStatus(ctx *pulumi.Context, args *GetVirtualNetworkGatewayBgpPeerStatusArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayBgpPeerStatusResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayBgpPeerStatusResult @@ -42,14 +42,20 @@ type GetVirtualNetworkGatewayBgpPeerStatusResult struct { func GetVirtualNetworkGatewayBgpPeerStatusOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayBgpPeerStatusOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayBgpPeerStatusResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayBgpPeerStatusResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayBgpPeerStatusResultOutput, error) { args := v.(GetVirtualNetworkGatewayBgpPeerStatusArgs) - r, err := GetVirtualNetworkGatewayBgpPeerStatus(ctx, &args, opts...) - var s GetVirtualNetworkGatewayBgpPeerStatusResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayBgpPeerStatusResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayBgpPeerStatus", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayBgpPeerStatusResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayBgpPeerStatusResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayBgpPeerStatusResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayBgpPeerStatusResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnection.go index 35c45e2f8..bde252e10 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnection.go @@ -14,7 +14,7 @@ import ( // Gets the specified virtual network gateway connection by resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualNetworkGatewayConnection(ctx *pulumi.Context, args *LookupVirtualNetworkGatewayConnectionArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkGatewayConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkGatewayConnectionResult @@ -104,14 +104,20 @@ type LookupVirtualNetworkGatewayConnectionResult struct { func LookupVirtualNetworkGatewayConnectionOutput(ctx *pulumi.Context, args LookupVirtualNetworkGatewayConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkGatewayConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkGatewayConnectionResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkGatewayConnectionResultOutput, error) { args := v.(LookupVirtualNetworkGatewayConnectionArgs) - r, err := LookupVirtualNetworkGatewayConnection(ctx, &args, opts...) - var s LookupVirtualNetworkGatewayConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkGatewayConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayConnection", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkGatewayConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkGatewayConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkGatewayConnectionResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkGatewayConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnectionIkeSas.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnectionIkeSas.go index 490ee1716..40da2fc32 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnectionIkeSas.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayConnectionIkeSas.go @@ -14,7 +14,7 @@ import ( // Lists IKE Security Associations for the virtual network gateway connection in the specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayConnectionIkeSas(ctx *pulumi.Context, args *GetVirtualNetworkGatewayConnectionIkeSasArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayConnectionIkeSasResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayConnectionIkeSasResult @@ -38,14 +38,20 @@ type GetVirtualNetworkGatewayConnectionIkeSasResult struct { func GetVirtualNetworkGatewayConnectionIkeSasOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayConnectionIkeSasOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayConnectionIkeSasResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayConnectionIkeSasResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayConnectionIkeSasResultOutput, error) { args := v.(GetVirtualNetworkGatewayConnectionIkeSasArgs) - r, err := GetVirtualNetworkGatewayConnectionIkeSas(ctx, &args, opts...) - var s GetVirtualNetworkGatewayConnectionIkeSasResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayConnectionIkeSasResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayConnectionIkeSas", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayConnectionIkeSasResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayConnectionIkeSasResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayConnectionIkeSasResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayConnectionIkeSasResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayLearnedRoutes.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayLearnedRoutes.go index 6b83cfff7..109e547c8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayLearnedRoutes.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayLearnedRoutes.go @@ -14,7 +14,7 @@ import ( // This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayLearnedRoutes(ctx *pulumi.Context, args *GetVirtualNetworkGatewayLearnedRoutesArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayLearnedRoutesResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayLearnedRoutesResult @@ -40,14 +40,20 @@ type GetVirtualNetworkGatewayLearnedRoutesResult struct { func GetVirtualNetworkGatewayLearnedRoutesOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayLearnedRoutesOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayLearnedRoutesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayLearnedRoutesResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayLearnedRoutesResultOutput, error) { args := v.(GetVirtualNetworkGatewayLearnedRoutesArgs) - r, err := GetVirtualNetworkGatewayLearnedRoutes(ctx, &args, opts...) - var s GetVirtualNetworkGatewayLearnedRoutesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayLearnedRoutesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayLearnedRoutes", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayLearnedRoutesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayLearnedRoutesResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayLearnedRoutesResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayLearnedRoutesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayNatRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayNatRule.go index 00d66e697..837f1f2b1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayNatRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayNatRule.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a nat rule. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualNetworkGatewayNatRule(ctx *pulumi.Context, args *LookupVirtualNetworkGatewayNatRuleArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkGatewayNatRuleResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkGatewayNatRuleResult @@ -58,14 +58,20 @@ type LookupVirtualNetworkGatewayNatRuleResult struct { func LookupVirtualNetworkGatewayNatRuleOutput(ctx *pulumi.Context, args LookupVirtualNetworkGatewayNatRuleOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkGatewayNatRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkGatewayNatRuleResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkGatewayNatRuleResultOutput, error) { args := v.(LookupVirtualNetworkGatewayNatRuleArgs) - r, err := LookupVirtualNetworkGatewayNatRule(ctx, &args, opts...) - var s LookupVirtualNetworkGatewayNatRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkGatewayNatRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayNatRule", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkGatewayNatRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkGatewayNatRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkGatewayNatRuleResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkGatewayNatRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnProfilePackageUrl.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnProfilePackageUrl.go index 10a58ec8a..b2653e7f3 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnProfilePackageUrl.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnProfilePackageUrl.go @@ -14,7 +14,7 @@ import ( // Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayVpnProfilePackageUrl(ctx *pulumi.Context, args *GetVirtualNetworkGatewayVpnProfilePackageUrlArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayVpnProfilePackageUrlResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayVpnProfilePackageUrlResult @@ -38,14 +38,20 @@ type GetVirtualNetworkGatewayVpnProfilePackageUrlResult struct { func GetVirtualNetworkGatewayVpnProfilePackageUrlOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayVpnProfilePackageUrlOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayVpnProfilePackageUrlResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayVpnProfilePackageUrlResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayVpnProfilePackageUrlResultOutput, error) { args := v.(GetVirtualNetworkGatewayVpnProfilePackageUrlArgs) - r, err := GetVirtualNetworkGatewayVpnProfilePackageUrl(ctx, &args, opts...) - var s GetVirtualNetworkGatewayVpnProfilePackageUrlResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayVpnProfilePackageUrlResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayVpnProfilePackageUrl", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayVpnProfilePackageUrlResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayVpnProfilePackageUrlResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayVpnProfilePackageUrlResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayVpnProfilePackageUrlResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientConnectionHealth.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientConnectionHealth.go index 7f48ec168..a9a0a0b9b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientConnectionHealth.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientConnectionHealth.go @@ -14,7 +14,7 @@ import ( // Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayVpnclientConnectionHealth(ctx *pulumi.Context, args *GetVirtualNetworkGatewayVpnclientConnectionHealthArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayVpnclientConnectionHealthResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayVpnclientConnectionHealthResult @@ -40,14 +40,20 @@ type GetVirtualNetworkGatewayVpnclientConnectionHealthResult struct { func GetVirtualNetworkGatewayVpnclientConnectionHealthOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayVpnclientConnectionHealthOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayVpnclientConnectionHealthResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayVpnclientConnectionHealthResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayVpnclientConnectionHealthResultOutput, error) { args := v.(GetVirtualNetworkGatewayVpnclientConnectionHealthArgs) - r, err := GetVirtualNetworkGatewayVpnclientConnectionHealth(ctx, &args, opts...) - var s GetVirtualNetworkGatewayVpnclientConnectionHealthResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayVpnclientConnectionHealthResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayVpnclientConnectionHealth", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayVpnclientConnectionHealthResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayVpnclientConnectionHealthResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayVpnclientConnectionHealthResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayVpnclientConnectionHealthResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientIpsecParameters.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientIpsecParameters.go index a810e24fd..1a527c280 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientIpsecParameters.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkGatewayVpnclientIpsecParameters.go @@ -14,7 +14,7 @@ import ( // The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVirtualNetworkGatewayVpnclientIpsecParameters(ctx *pulumi.Context, args *GetVirtualNetworkGatewayVpnclientIpsecParametersArgs, opts ...pulumi.InvokeOption) (*GetVirtualNetworkGatewayVpnclientIpsecParametersResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVirtualNetworkGatewayVpnclientIpsecParametersResult @@ -54,14 +54,20 @@ type GetVirtualNetworkGatewayVpnclientIpsecParametersResult struct { func GetVirtualNetworkGatewayVpnclientIpsecParametersOutput(ctx *pulumi.Context, args GetVirtualNetworkGatewayVpnclientIpsecParametersOutputArgs, opts ...pulumi.InvokeOption) GetVirtualNetworkGatewayVpnclientIpsecParametersResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVirtualNetworkGatewayVpnclientIpsecParametersResult, error) { + ApplyT(func(v interface{}) (GetVirtualNetworkGatewayVpnclientIpsecParametersResultOutput, error) { args := v.(GetVirtualNetworkGatewayVpnclientIpsecParametersArgs) - r, err := GetVirtualNetworkGatewayVpnclientIpsecParameters(ctx, &args, opts...) - var s GetVirtualNetworkGatewayVpnclientIpsecParametersResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVirtualNetworkGatewayVpnclientIpsecParametersResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkGatewayVpnclientIpsecParameters", args, &rv, "", opts...) + if err != nil { + return GetVirtualNetworkGatewayVpnclientIpsecParametersResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVirtualNetworkGatewayVpnclientIpsecParametersResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVirtualNetworkGatewayVpnclientIpsecParametersResultOutput), nil + } + return output, nil }).(GetVirtualNetworkGatewayVpnclientIpsecParametersResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkLink.go index 7c12640ec..03b7e9daa 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkLink.go @@ -13,6 +13,8 @@ import ( // Gets a virtual network link to the specified Private DNS zone. // Azure REST API version: 2020-06-01. +// +// Other available API versions: 2024-06-01. func LookupVirtualNetworkLink(ctx *pulumi.Context, args *LookupVirtualNetworkLinkArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkLinkResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkLinkResult @@ -58,14 +60,20 @@ type LookupVirtualNetworkLinkResult struct { func LookupVirtualNetworkLinkOutput(ctx *pulumi.Context, args LookupVirtualNetworkLinkOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkLinkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkLinkResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkLinkResultOutput, error) { args := v.(LookupVirtualNetworkLinkArgs) - r, err := LookupVirtualNetworkLink(ctx, &args, opts...) - var s LookupVirtualNetworkLinkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkLinkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkLink", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkLinkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkLinkResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkLinkResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkLinkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkPeering.go index 007893d8e..a5809ac30 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkPeering.go @@ -14,7 +14,7 @@ import ( // Gets the specified virtual network peering. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualNetworkPeering(ctx *pulumi.Context, args *LookupVirtualNetworkPeeringArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkPeeringResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkPeeringResult @@ -76,14 +76,20 @@ type LookupVirtualNetworkPeeringResult struct { func LookupVirtualNetworkPeeringOutput(ctx *pulumi.Context, args LookupVirtualNetworkPeeringOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkPeeringResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkPeeringResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkPeeringResultOutput, error) { args := v.(LookupVirtualNetworkPeeringArgs) - r, err := LookupVirtualNetworkPeering(ctx, &args, opts...) - var s LookupVirtualNetworkPeeringResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkPeeringResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkPeering", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkPeeringResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkPeeringResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkPeeringResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkPeeringResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkTap.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkTap.go index b65d048c7..10a31368f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkTap.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualNetworkTap.go @@ -14,7 +14,7 @@ import ( // Gets information about the specified virtual network tap. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualNetworkTap(ctx *pulumi.Context, args *LookupVirtualNetworkTapArgs, opts ...pulumi.InvokeOption) (*LookupVirtualNetworkTapResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualNetworkTapResult @@ -75,14 +75,20 @@ func (val *LookupVirtualNetworkTapResult) Defaults() *LookupVirtualNetworkTapRes func LookupVirtualNetworkTapOutput(ctx *pulumi.Context, args LookupVirtualNetworkTapOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualNetworkTapResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualNetworkTapResult, error) { + ApplyT(func(v interface{}) (LookupVirtualNetworkTapResultOutput, error) { args := v.(LookupVirtualNetworkTapArgs) - r, err := LookupVirtualNetworkTap(ctx, &args, opts...) - var s LookupVirtualNetworkTapResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualNetworkTapResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualNetworkTap", args, &rv, "", opts...) + if err != nil { + return LookupVirtualNetworkTapResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualNetworkTapResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualNetworkTapResultOutput), nil + } + return output, nil }).(LookupVirtualNetworkTapResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouter.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouter.go index d97293286..475707a22 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouter.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouter.go @@ -14,7 +14,7 @@ import ( // Gets the specified Virtual Router. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualRouter(ctx *pulumi.Context, args *LookupVirtualRouterArgs, opts ...pulumi.InvokeOption) (*LookupVirtualRouterResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualRouterResult @@ -64,14 +64,20 @@ type LookupVirtualRouterResult struct { func LookupVirtualRouterOutput(ctx *pulumi.Context, args LookupVirtualRouterOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualRouterResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualRouterResult, error) { + ApplyT(func(v interface{}) (LookupVirtualRouterResultOutput, error) { args := v.(LookupVirtualRouterArgs) - r, err := LookupVirtualRouter(ctx, &args, opts...) - var s LookupVirtualRouterResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualRouterResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualRouter", args, &rv, "", opts...) + if err != nil { + return LookupVirtualRouterResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualRouterResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualRouterResultOutput), nil + } + return output, nil }).(LookupVirtualRouterResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouterPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouterPeering.go index 551e00dff..ef5848c22 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouterPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualRouterPeering.go @@ -14,7 +14,7 @@ import ( // Gets the specified Virtual Router Peering. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualRouterPeering(ctx *pulumi.Context, args *LookupVirtualRouterPeeringArgs, opts ...pulumi.InvokeOption) (*LookupVirtualRouterPeeringResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualRouterPeeringResult @@ -54,14 +54,20 @@ type LookupVirtualRouterPeeringResult struct { func LookupVirtualRouterPeeringOutput(ctx *pulumi.Context, args LookupVirtualRouterPeeringOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualRouterPeeringResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualRouterPeeringResult, error) { + ApplyT(func(v interface{}) (LookupVirtualRouterPeeringResultOutput, error) { args := v.(LookupVirtualRouterPeeringArgs) - r, err := LookupVirtualRouterPeering(ctx, &args, opts...) - var s LookupVirtualRouterPeeringResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualRouterPeeringResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualRouterPeering", args, &rv, "", opts...) + if err != nil { + return LookupVirtualRouterPeeringResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualRouterPeeringResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualRouterPeeringResultOutput), nil + } + return output, nil }).(LookupVirtualRouterPeeringResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualWan.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualWan.go index ebf5077d4..0ff194d5c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualWan.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVirtualWan.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a VirtualWAN. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVirtualWan(ctx *pulumi.Context, args *LookupVirtualWanArgs, opts ...pulumi.InvokeOption) (*LookupVirtualWanResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVirtualWanResult @@ -64,14 +64,20 @@ type LookupVirtualWanResult struct { func LookupVirtualWanOutput(ctx *pulumi.Context, args LookupVirtualWanOutputArgs, opts ...pulumi.InvokeOption) LookupVirtualWanResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVirtualWanResult, error) { + ApplyT(func(v interface{}) (LookupVirtualWanResultOutput, error) { args := v.(LookupVirtualWanArgs) - r, err := LookupVirtualWan(ctx, &args, opts...) - var s LookupVirtualWanResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVirtualWanResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVirtualWan", args, &rv, "", opts...) + if err != nil { + return LookupVirtualWanResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVirtualWanResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVirtualWanResultOutput), nil + } + return output, nil }).(LookupVirtualWanResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnConnection.go index fc3860263..de744db49 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnConnection.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a vpn connection. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-04-01, 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-04-01, 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVpnConnection(ctx *pulumi.Context, args *LookupVpnConnectionArgs, opts ...pulumi.InvokeOption) (*LookupVpnConnectionResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVpnConnectionResult @@ -84,14 +84,20 @@ type LookupVpnConnectionResult struct { func LookupVpnConnectionOutput(ctx *pulumi.Context, args LookupVpnConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupVpnConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVpnConnectionResult, error) { + ApplyT(func(v interface{}) (LookupVpnConnectionResultOutput, error) { args := v.(LookupVpnConnectionArgs) - r, err := LookupVpnConnection(ctx, &args, opts...) - var s LookupVpnConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVpnConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVpnConnection", args, &rv, "", opts...) + if err != nil { + return LookupVpnConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVpnConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVpnConnectionResultOutput), nil + } + return output, nil }).(LookupVpnConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnGateway.go index add676746..04d89540f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnGateway.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a virtual wan vpn gateway. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVpnGateway(ctx *pulumi.Context, args *LookupVpnGatewayArgs, opts ...pulumi.InvokeOption) (*LookupVpnGatewayResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVpnGatewayResult @@ -68,14 +68,20 @@ type LookupVpnGatewayResult struct { func LookupVpnGatewayOutput(ctx *pulumi.Context, args LookupVpnGatewayOutputArgs, opts ...pulumi.InvokeOption) LookupVpnGatewayResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVpnGatewayResult, error) { + ApplyT(func(v interface{}) (LookupVpnGatewayResultOutput, error) { args := v.(LookupVpnGatewayArgs) - r, err := LookupVpnGateway(ctx, &args, opts...) - var s LookupVpnGatewayResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVpnGatewayResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVpnGateway", args, &rv, "", opts...) + if err != nil { + return LookupVpnGatewayResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVpnGatewayResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVpnGatewayResultOutput), nil + } + return output, nil }).(LookupVpnGatewayResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnLinkConnectionIkeSas.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnLinkConnectionIkeSas.go index dfd78ee19..a0d4a2c4f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnLinkConnectionIkeSas.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnLinkConnectionIkeSas.go @@ -14,7 +14,7 @@ import ( // Lists IKE Security Associations for Vpn Site Link Connection in the specified resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func GetVpnLinkConnectionIkeSas(ctx *pulumi.Context, args *GetVpnLinkConnectionIkeSasArgs, opts ...pulumi.InvokeOption) (*GetVpnLinkConnectionIkeSasResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv GetVpnLinkConnectionIkeSasResult @@ -42,14 +42,20 @@ type GetVpnLinkConnectionIkeSasResult struct { func GetVpnLinkConnectionIkeSasOutput(ctx *pulumi.Context, args GetVpnLinkConnectionIkeSasOutputArgs, opts ...pulumi.InvokeOption) GetVpnLinkConnectionIkeSasResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (GetVpnLinkConnectionIkeSasResult, error) { + ApplyT(func(v interface{}) (GetVpnLinkConnectionIkeSasResultOutput, error) { args := v.(GetVpnLinkConnectionIkeSasArgs) - r, err := GetVpnLinkConnectionIkeSas(ctx, &args, opts...) - var s GetVpnLinkConnectionIkeSasResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv GetVpnLinkConnectionIkeSasResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVpnLinkConnectionIkeSas", args, &rv, "", opts...) + if err != nil { + return GetVpnLinkConnectionIkeSasResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(GetVpnLinkConnectionIkeSasResultOutput) + if secret { + return pulumi.ToSecret(output).(GetVpnLinkConnectionIkeSasResultOutput), nil + } + return output, nil }).(GetVpnLinkConnectionIkeSasResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnServerConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnServerConfiguration.go index a09b9804c..6e25df722 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnServerConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnServerConfiguration.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a VpnServerConfiguration. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVpnServerConfiguration(ctx *pulumi.Context, args *LookupVpnServerConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupVpnServerConfigurationResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVpnServerConfigurationResult @@ -78,14 +78,20 @@ type LookupVpnServerConfigurationResult struct { func LookupVpnServerConfigurationOutput(ctx *pulumi.Context, args LookupVpnServerConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupVpnServerConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVpnServerConfigurationResult, error) { + ApplyT(func(v interface{}) (LookupVpnServerConfigurationResultOutput, error) { args := v.(LookupVpnServerConfigurationArgs) - r, err := LookupVpnServerConfiguration(ctx, &args, opts...) - var s LookupVpnServerConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVpnServerConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVpnServerConfiguration", args, &rv, "", opts...) + if err != nil { + return LookupVpnServerConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVpnServerConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVpnServerConfigurationResultOutput), nil + } + return output, nil }).(LookupVpnServerConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnSite.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnSite.go index 189ddfe62..d86001ae9 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnSite.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getVpnSite.go @@ -14,7 +14,7 @@ import ( // Retrieves the details of a VPN site. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupVpnSite(ctx *pulumi.Context, args *LookupVpnSiteArgs, opts ...pulumi.InvokeOption) (*LookupVpnSiteResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupVpnSiteResult @@ -70,14 +70,20 @@ type LookupVpnSiteResult struct { func LookupVpnSiteOutput(ctx *pulumi.Context, args LookupVpnSiteOutputArgs, opts ...pulumi.InvokeOption) LookupVpnSiteResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupVpnSiteResult, error) { + ApplyT(func(v interface{}) (LookupVpnSiteResultOutput, error) { args := v.(LookupVpnSiteArgs) - r, err := LookupVpnSite(ctx, &args, opts...) - var s LookupVpnSiteResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupVpnSiteResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getVpnSite", args, &rv, "", opts...) + if err != nil { + return LookupVpnSiteResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupVpnSiteResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupVpnSiteResultOutput), nil + } + return output, nil }).(LookupVpnSiteResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getWebApplicationFirewallPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getWebApplicationFirewallPolicy.go index be68f6a60..52d4d9181 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getWebApplicationFirewallPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getWebApplicationFirewallPolicy.go @@ -14,7 +14,7 @@ import ( // Retrieve protection policy with specified name within a resource group. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func LookupWebApplicationFirewallPolicy(ctx *pulumi.Context, args *LookupWebApplicationFirewallPolicyArgs, opts ...pulumi.InvokeOption) (*LookupWebApplicationFirewallPolicyResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupWebApplicationFirewallPolicyResult @@ -77,14 +77,20 @@ func (val *LookupWebApplicationFirewallPolicyResult) Defaults() *LookupWebApplic func LookupWebApplicationFirewallPolicyOutput(ctx *pulumi.Context, args LookupWebApplicationFirewallPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupWebApplicationFirewallPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupWebApplicationFirewallPolicyResult, error) { + ApplyT(func(v interface{}) (LookupWebApplicationFirewallPolicyResultOutput, error) { args := v.(LookupWebApplicationFirewallPolicyArgs) - r, err := LookupWebApplicationFirewallPolicy(ctx, &args, opts...) - var s LookupWebApplicationFirewallPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupWebApplicationFirewallPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getWebApplicationFirewallPolicy", args, &rv, "", opts...) + if err != nil { + return LookupWebApplicationFirewallPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupWebApplicationFirewallPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupWebApplicationFirewallPolicyResultOutput), nil + } + return output, nil }).(LookupWebApplicationFirewallPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getZone.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getZone.go index 65bb47c9e..c0182cdbe 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getZone.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/getZone.go @@ -77,14 +77,20 @@ func (val *LookupZoneResult) Defaults() *LookupZoneResult { func LookupZoneOutput(ctx *pulumi.Context, args LookupZoneOutputArgs, opts ...pulumi.InvokeOption) LookupZoneResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupZoneResult, error) { + ApplyT(func(v interface{}) (LookupZoneResultOutput, error) { args := v.(LookupZoneArgs) - r, err := LookupZone(ctx, &args, opts...) - var s LookupZoneResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupZoneResult + secret, err := ctx.InvokePackageRaw("azure-native:network:getZone", args, &rv, "", opts...) + if err != nil { + return LookupZoneResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupZoneResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupZoneResultOutput), nil + } + return output, nil }).(LookupZoneResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubRouteTable.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubRouteTable.go index cea72f0b6..b5731bd2d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubRouteTable.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubRouteTable.go @@ -15,7 +15,7 @@ import ( // RouteTable resource in a virtual hub. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type HubRouteTable struct { pulumi.CustomResourceState @@ -114,6 +114,12 @@ func NewHubRouteTable(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:HubRouteTable"), }, + { + Type: pulumi.String("azure-native:network/v20240101:HubRouteTable"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:HubRouteTable"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubVirtualNetworkConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubVirtualNetworkConnection.go index 0d5fedb40..7c2beeae5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubVirtualNetworkConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/hubVirtualNetworkConnection.go @@ -15,7 +15,7 @@ import ( // HubVirtualNetworkConnection Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type HubVirtualNetworkConnection struct { pulumi.CustomResourceState @@ -111,6 +111,12 @@ func NewHubVirtualNetworkConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:HubVirtualNetworkConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:HubVirtualNetworkConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:HubVirtualNetworkConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundEndpoint.go index a0f166cff..fed9dd660 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundEndpoint.go @@ -15,7 +15,7 @@ import ( // Describes an inbound endpoint for a DNS resolver. // Azure REST API version: 2022-07-01. Prior API version in Azure Native 1.x: 2020-04-01-preview. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. type InboundEndpoint struct { pulumi.CustomResourceState @@ -62,6 +62,9 @@ func NewInboundEndpoint(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220701:InboundEndpoint"), }, + { + Type: pulumi.String("azure-native:network/v20230701preview:InboundEndpoint"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundNatRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundNatRule.go index ac76a48ca..6ba07e066 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundNatRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/inboundNatRule.go @@ -15,7 +15,7 @@ import ( // Inbound NAT rule of the load balancer. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type InboundNatRule struct { pulumi.CustomResourceState @@ -197,6 +197,12 @@ func NewInboundNatRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:InboundNatRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:InboundNatRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:InboundNatRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/init.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/init.go index b39437811..2a3c8ccb1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/init.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/init.go @@ -55,6 +55,14 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &DnsForwardingRuleset{} case "azure-native:network:DnsResolver": r = &DnsResolver{} + case "azure-native:network:DnsResolverDomainList": + r = &DnsResolverDomainList{} + case "azure-native:network:DnsResolverPolicy": + r = &DnsResolverPolicy{} + case "azure-native:network:DnsResolverPolicyVirtualNetworkLink": + r = &DnsResolverPolicyVirtualNetworkLink{} + case "azure-native:network:DnsSecurityRule": + r = &DnsSecurityRule{} case "azure-native:network:DscpConfiguration": r = &DscpConfiguration{} case "azure-native:network:Endpoint": @@ -109,6 +117,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &IpAllocation{} case "azure-native:network:IpGroup": r = &IpGroup{} + case "azure-native:network:IpamPool": + r = &IpamPool{} case "azure-native:network:LoadBalancer": r = &LoadBalancer{} case "azure-native:network:LoadBalancerBackendAddressPool": @@ -131,6 +141,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &NetworkInterfaceTapConfiguration{} case "azure-native:network:NetworkManager": r = &NetworkManager{} + case "azure-native:network:NetworkManagerRoutingConfiguration": + r = &NetworkManagerRoutingConfiguration{} case "azure-native:network:NetworkProfile": r = &NetworkProfile{} case "azure-native:network:NetworkSecurityGroup": @@ -179,6 +191,10 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &PublicIPAddress{} case "azure-native:network:PublicIPPrefix": r = &PublicIPPrefix{} + case "azure-native:network:ReachabilityAnalysisIntent": + r = &ReachabilityAnalysisIntent{} + case "azure-native:network:ReachabilityAnalysisRun": + r = &ReachabilityAnalysisRun{} case "azure-native:network:RecordSet": r = &RecordSet{} case "azure-native:network:Route": @@ -193,6 +209,10 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &RouteTable{} case "azure-native:network:RoutingIntent": r = &RoutingIntent{} + case "azure-native:network:RoutingRule": + r = &RoutingRule{} + case "azure-native:network:RoutingRuleCollection": + r = &RoutingRuleCollection{} case "azure-native:network:RulesEngine": r = &RulesEngine{} case "azure-native:network:ScopeConnection": @@ -205,10 +225,16 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &SecurityRule{} case "azure-native:network:SecurityUserConfiguration": r = &SecurityUserConfiguration{} + case "azure-native:network:SecurityUserRule": + r = &SecurityUserRule{} + case "azure-native:network:SecurityUserRuleCollection": + r = &SecurityUserRuleCollection{} case "azure-native:network:ServiceEndpointPolicy": r = &ServiceEndpointPolicy{} case "azure-native:network:ServiceEndpointPolicyDefinition": r = &ServiceEndpointPolicyDefinition{} + case "azure-native:network:StaticCidr": + r = &StaticCidr{} case "azure-native:network:StaticMember": r = &StaticMember{} case "azure-native:network:Subnet": @@ -221,6 +247,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &UserRule{} case "azure-native:network:UserRuleCollection": r = &UserRuleCollection{} + case "azure-native:network:VerifierWorkspace": + r = &VerifierWorkspace{} case "azure-native:network:VirtualApplianceSite": r = &VirtualApplianceSite{} case "azure-native:network:VirtualHub": diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/interfaceEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/interfaceEndpoint.go index 45d67d0c2..a5bf9f002 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/interfaceEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/interfaceEndpoint.go @@ -157,6 +157,12 @@ func NewInterfaceEndpoint(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:InterfaceEndpoint"), }, + { + Type: pulumi.String("azure-native:network/v20240101:InterfaceEndpoint"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:InterfaceEndpoint"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipAllocation.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipAllocation.go index 22c64f6e8..f5e2fba2c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipAllocation.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipAllocation.go @@ -15,7 +15,7 @@ import ( // IpAllocation resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type IpAllocation struct { pulumi.CustomResourceState @@ -125,6 +125,12 @@ func NewIpAllocation(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:IpAllocation"), }, + { + Type: pulumi.String("azure-native:network/v20240101:IpAllocation"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:IpAllocation"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipGroup.go index 5e367f5a0..2869261d2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipGroup.go @@ -15,7 +15,7 @@ import ( // The IpGroups resource information. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type IpGroup struct { pulumi.CustomResourceState @@ -125,6 +125,12 @@ func NewIpGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:IpGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:IpGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:IpGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipamPool.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipamPool.go new file mode 100644 index 000000000..001db3ee9 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/ipamPool.go @@ -0,0 +1,185 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Instance of Pool resource. +// Azure REST API version: 2024-01-01-preview. +type IpamPool struct { + pulumi.CustomResourceState + + // The geo-location where the resource lives + Location pulumi.StringOutput `pulumi:"location"` + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // Properties of IpamPool resource properties which are specific to the Pool resource. + Properties IpamPoolPropertiesResponseOutput `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewIpamPool registers a new resource with the given unique name, arguments, and options. +func NewIpamPool(ctx *pulumi.Context, + name string, args *IpamPoolArgs, opts ...pulumi.ResourceOption) (*IpamPool, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240101preview:IpamPool"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource IpamPool + err := ctx.RegisterResource("azure-native:network:IpamPool", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetIpamPool gets an existing IpamPool resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetIpamPool(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *IpamPoolState, opts ...pulumi.ResourceOption) (*IpamPool, error) { + var resource IpamPool + err := ctx.ReadResource("azure-native:network:IpamPool", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering IpamPool resources. +type ipamPoolState struct { +} + +type IpamPoolState struct { +} + +func (IpamPoolState) ElementType() reflect.Type { + return reflect.TypeOf((*ipamPoolState)(nil)).Elem() +} + +type ipamPoolArgs struct { + // The geo-location where the resource lives + Location *string `pulumi:"location"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // IP Address Manager Pool resource name. + PoolName *string `pulumi:"poolName"` + // Properties of IpamPool resource properties which are specific to the Pool resource. + Properties *IpamPoolProperties `pulumi:"properties"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` +} + +// The set of arguments for constructing a IpamPool resource. +type IpamPoolArgs struct { + // The geo-location where the resource lives + Location pulumi.StringPtrInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // IP Address Manager Pool resource name. + PoolName pulumi.StringPtrInput + // Properties of IpamPool resource properties which are specific to the Pool resource. + Properties IpamPoolPropertiesPtrInput + // The name of the resource group. + ResourceGroupName pulumi.StringInput + // Resource tags. + Tags pulumi.StringMapInput +} + +func (IpamPoolArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ipamPoolArgs)(nil)).Elem() +} + +type IpamPoolInput interface { + pulumi.Input + + ToIpamPoolOutput() IpamPoolOutput + ToIpamPoolOutputWithContext(ctx context.Context) IpamPoolOutput +} + +func (*IpamPool) ElementType() reflect.Type { + return reflect.TypeOf((**IpamPool)(nil)).Elem() +} + +func (i *IpamPool) ToIpamPoolOutput() IpamPoolOutput { + return i.ToIpamPoolOutputWithContext(context.Background()) +} + +func (i *IpamPool) ToIpamPoolOutputWithContext(ctx context.Context) IpamPoolOutput { + return pulumi.ToOutputWithContext(ctx, i).(IpamPoolOutput) +} + +type IpamPoolOutput struct{ *pulumi.OutputState } + +func (IpamPoolOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IpamPool)(nil)).Elem() +} + +func (o IpamPoolOutput) ToIpamPoolOutput() IpamPoolOutput { + return o +} + +func (o IpamPoolOutput) ToIpamPoolOutputWithContext(ctx context.Context) IpamPoolOutput { + return o +} + +// The geo-location where the resource lives +func (o IpamPoolOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v *IpamPool) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o IpamPoolOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *IpamPool) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Properties of IpamPool resource properties which are specific to the Pool resource. +func (o IpamPoolOutput) Properties() IpamPoolPropertiesResponseOutput { + return o.ApplyT(func(v *IpamPool) IpamPoolPropertiesResponseOutput { return v.Properties }).(IpamPoolPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o IpamPoolOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *IpamPool) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o IpamPoolOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *IpamPool) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o IpamPoolOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *IpamPool) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(IpamPoolOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfiguration.go index 406ac98a6..7364010bf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfiguration.go @@ -44,14 +44,20 @@ type ListActiveConnectivityConfigurationResult struct { func ListActiveConnectivityConfigurationOutput(ctx *pulumi.Context, args ListActiveConnectivityConfigurationOutputArgs, opts ...pulumi.InvokeOption) ListActiveConnectivityConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListActiveConnectivityConfigurationResult, error) { + ApplyT(func(v interface{}) (ListActiveConnectivityConfigurationResultOutput, error) { args := v.(ListActiveConnectivityConfigurationArgs) - r, err := ListActiveConnectivityConfiguration(ctx, &args, opts...) - var s ListActiveConnectivityConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListActiveConnectivityConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listActiveConnectivityConfiguration", args, &rv, "", opts...) + if err != nil { + return ListActiveConnectivityConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListActiveConnectivityConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(ListActiveConnectivityConfigurationResultOutput), nil + } + return output, nil }).(ListActiveConnectivityConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfigurations.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfigurations.go index 8159a53f5..3bf414d0a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfigurations.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveConnectivityConfigurations.go @@ -14,7 +14,7 @@ import ( // Lists active connectivity configurations in a network manager. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func ListActiveConnectivityConfigurations(ctx *pulumi.Context, args *ListActiveConnectivityConfigurationsArgs, opts ...pulumi.InvokeOption) (*ListActiveConnectivityConfigurationsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListActiveConnectivityConfigurationsResult @@ -48,14 +48,20 @@ type ListActiveConnectivityConfigurationsResult struct { func ListActiveConnectivityConfigurationsOutput(ctx *pulumi.Context, args ListActiveConnectivityConfigurationsOutputArgs, opts ...pulumi.InvokeOption) ListActiveConnectivityConfigurationsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListActiveConnectivityConfigurationsResult, error) { + ApplyT(func(v interface{}) (ListActiveConnectivityConfigurationsResultOutput, error) { args := v.(ListActiveConnectivityConfigurationsArgs) - r, err := ListActiveConnectivityConfigurations(ctx, &args, opts...) - var s ListActiveConnectivityConfigurationsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListActiveConnectivityConfigurationsResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listActiveConnectivityConfigurations", args, &rv, "", opts...) + if err != nil { + return ListActiveConnectivityConfigurationsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListActiveConnectivityConfigurationsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListActiveConnectivityConfigurationsResultOutput), nil + } + return output, nil }).(ListActiveConnectivityConfigurationsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRule.go index b7818e007..8c44d85ce 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRule.go @@ -44,14 +44,20 @@ type ListActiveSecurityAdminRuleResult struct { func ListActiveSecurityAdminRuleOutput(ctx *pulumi.Context, args ListActiveSecurityAdminRuleOutputArgs, opts ...pulumi.InvokeOption) ListActiveSecurityAdminRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListActiveSecurityAdminRuleResult, error) { + ApplyT(func(v interface{}) (ListActiveSecurityAdminRuleResultOutput, error) { args := v.(ListActiveSecurityAdminRuleArgs) - r, err := ListActiveSecurityAdminRule(ctx, &args, opts...) - var s ListActiveSecurityAdminRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListActiveSecurityAdminRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listActiveSecurityAdminRule", args, &rv, "", opts...) + if err != nil { + return ListActiveSecurityAdminRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListActiveSecurityAdminRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(ListActiveSecurityAdminRuleResultOutput), nil + } + return output, nil }).(ListActiveSecurityAdminRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRules.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRules.go index 9472147ad..e43a56a56 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRules.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityAdminRules.go @@ -14,7 +14,7 @@ import ( // Lists active security admin rules in a network manager. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func ListActiveSecurityAdminRules(ctx *pulumi.Context, args *ListActiveSecurityAdminRulesArgs, opts ...pulumi.InvokeOption) (*ListActiveSecurityAdminRulesResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListActiveSecurityAdminRulesResult @@ -48,14 +48,20 @@ type ListActiveSecurityAdminRulesResult struct { func ListActiveSecurityAdminRulesOutput(ctx *pulumi.Context, args ListActiveSecurityAdminRulesOutputArgs, opts ...pulumi.InvokeOption) ListActiveSecurityAdminRulesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListActiveSecurityAdminRulesResult, error) { + ApplyT(func(v interface{}) (ListActiveSecurityAdminRulesResultOutput, error) { args := v.(ListActiveSecurityAdminRulesArgs) - r, err := ListActiveSecurityAdminRules(ctx, &args, opts...) - var s ListActiveSecurityAdminRulesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListActiveSecurityAdminRulesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listActiveSecurityAdminRules", args, &rv, "", opts...) + if err != nil { + return ListActiveSecurityAdminRulesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListActiveSecurityAdminRulesResultOutput) + if secret { + return pulumi.ToSecret(output).(ListActiveSecurityAdminRulesResultOutput), nil + } + return output, nil }).(ListActiveSecurityAdminRulesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRule.go index 61d066c96..ce5e93ba1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRule.go @@ -44,14 +44,20 @@ type ListActiveSecurityUserRuleResult struct { func ListActiveSecurityUserRuleOutput(ctx *pulumi.Context, args ListActiveSecurityUserRuleOutputArgs, opts ...pulumi.InvokeOption) ListActiveSecurityUserRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListActiveSecurityUserRuleResult, error) { + ApplyT(func(v interface{}) (ListActiveSecurityUserRuleResultOutput, error) { args := v.(ListActiveSecurityUserRuleArgs) - r, err := ListActiveSecurityUserRule(ctx, &args, opts...) - var s ListActiveSecurityUserRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListActiveSecurityUserRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listActiveSecurityUserRule", args, &rv, "", opts...) + if err != nil { + return ListActiveSecurityUserRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListActiveSecurityUserRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(ListActiveSecurityUserRuleResultOutput), nil + } + return output, nil }).(ListActiveSecurityUserRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRules.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRules.go index 303c5e9a8..7d7cd2e5b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRules.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listActiveSecurityUserRules.go @@ -46,14 +46,20 @@ type ListActiveSecurityUserRulesResult struct { func ListActiveSecurityUserRulesOutput(ctx *pulumi.Context, args ListActiveSecurityUserRulesOutputArgs, opts ...pulumi.InvokeOption) ListActiveSecurityUserRulesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListActiveSecurityUserRulesResult, error) { + ApplyT(func(v interface{}) (ListActiveSecurityUserRulesResultOutput, error) { args := v.(ListActiveSecurityUserRulesArgs) - r, err := ListActiveSecurityUserRules(ctx, &args, opts...) - var s ListActiveSecurityUserRulesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListActiveSecurityUserRulesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listActiveSecurityUserRules", args, &rv, "", opts...) + if err != nil { + return ListActiveSecurityUserRulesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListActiveSecurityUserRulesResultOutput) + if secret { + return pulumi.ToSecret(output).(ListActiveSecurityUserRulesResultOutput), nil + } + return output, nil }).(ListActiveSecurityUserRulesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsForwardingRulesetByVirtualNetwork.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsForwardingRulesetByVirtualNetwork.go index 7d4a818bb..18a219d44 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsForwardingRulesetByVirtualNetwork.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsForwardingRulesetByVirtualNetwork.go @@ -14,7 +14,7 @@ import ( // Lists DNS forwarding ruleset resource IDs attached to a virtual network. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. func ListDnsForwardingRulesetByVirtualNetwork(ctx *pulumi.Context, args *ListDnsForwardingRulesetByVirtualNetworkArgs, opts ...pulumi.InvokeOption) (*ListDnsForwardingRulesetByVirtualNetworkResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListDnsForwardingRulesetByVirtualNetworkResult @@ -44,14 +44,20 @@ type ListDnsForwardingRulesetByVirtualNetworkResult struct { func ListDnsForwardingRulesetByVirtualNetworkOutput(ctx *pulumi.Context, args ListDnsForwardingRulesetByVirtualNetworkOutputArgs, opts ...pulumi.InvokeOption) ListDnsForwardingRulesetByVirtualNetworkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListDnsForwardingRulesetByVirtualNetworkResult, error) { + ApplyT(func(v interface{}) (ListDnsForwardingRulesetByVirtualNetworkResultOutput, error) { args := v.(ListDnsForwardingRulesetByVirtualNetworkArgs) - r, err := ListDnsForwardingRulesetByVirtualNetwork(ctx, &args, opts...) - var s ListDnsForwardingRulesetByVirtualNetworkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListDnsForwardingRulesetByVirtualNetworkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listDnsForwardingRulesetByVirtualNetwork", args, &rv, "", opts...) + if err != nil { + return ListDnsForwardingRulesetByVirtualNetworkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListDnsForwardingRulesetByVirtualNetworkResultOutput) + if secret { + return pulumi.ToSecret(output).(ListDnsForwardingRulesetByVirtualNetworkResultOutput), nil + } + return output, nil }).(ListDnsForwardingRulesetByVirtualNetworkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverByVirtualNetwork.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverByVirtualNetwork.go index e5a4f74e7..88bd00685 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverByVirtualNetwork.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverByVirtualNetwork.go @@ -14,7 +14,7 @@ import ( // Lists DNS resolver resource IDs linked to a virtual network. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. func ListDnsResolverByVirtualNetwork(ctx *pulumi.Context, args *ListDnsResolverByVirtualNetworkArgs, opts ...pulumi.InvokeOption) (*ListDnsResolverByVirtualNetworkResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListDnsResolverByVirtualNetworkResult @@ -44,14 +44,20 @@ type ListDnsResolverByVirtualNetworkResult struct { func ListDnsResolverByVirtualNetworkOutput(ctx *pulumi.Context, args ListDnsResolverByVirtualNetworkOutputArgs, opts ...pulumi.InvokeOption) ListDnsResolverByVirtualNetworkResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListDnsResolverByVirtualNetworkResult, error) { + ApplyT(func(v interface{}) (ListDnsResolverByVirtualNetworkResultOutput, error) { args := v.(ListDnsResolverByVirtualNetworkArgs) - r, err := ListDnsResolverByVirtualNetwork(ctx, &args, opts...) - var s ListDnsResolverByVirtualNetworkResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListDnsResolverByVirtualNetworkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listDnsResolverByVirtualNetwork", args, &rv, "", opts...) + if err != nil { + return ListDnsResolverByVirtualNetworkResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListDnsResolverByVirtualNetworkResultOutput) + if secret { + return pulumi.ToSecret(output).(ListDnsResolverByVirtualNetworkResultOutput), nil + } + return output, nil }).(ListDnsResolverByVirtualNetworkResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverPolicyByVirtualNetwork.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverPolicyByVirtualNetwork.go new file mode 100644 index 000000000..1066c1b5e --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listDnsResolverPolicyByVirtualNetwork.go @@ -0,0 +1,98 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Lists DNS resolver policy resource IDs linked to a virtual network. +// Azure REST API version: 2023-07-01-preview. +func ListDnsResolverPolicyByVirtualNetwork(ctx *pulumi.Context, args *ListDnsResolverPolicyByVirtualNetworkArgs, opts ...pulumi.InvokeOption) (*ListDnsResolverPolicyByVirtualNetworkResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListDnsResolverPolicyByVirtualNetworkResult + err := ctx.Invoke("azure-native:network:listDnsResolverPolicyByVirtualNetwork", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type ListDnsResolverPolicyByVirtualNetworkArgs struct { + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the virtual network. + VirtualNetworkName string `pulumi:"virtualNetworkName"` +} + +// The response to an enumeration operation on sub-resources. +type ListDnsResolverPolicyByVirtualNetworkResult struct { + // The continuation token for the next page of results. + NextLink string `pulumi:"nextLink"` + // Enumeration of the sub-resources. + Value []SubResourceResponse `pulumi:"value"` +} + +func ListDnsResolverPolicyByVirtualNetworkOutput(ctx *pulumi.Context, args ListDnsResolverPolicyByVirtualNetworkOutputArgs, opts ...pulumi.InvokeOption) ListDnsResolverPolicyByVirtualNetworkResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (ListDnsResolverPolicyByVirtualNetworkResultOutput, error) { + args := v.(ListDnsResolverPolicyByVirtualNetworkArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListDnsResolverPolicyByVirtualNetworkResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listDnsResolverPolicyByVirtualNetwork", args, &rv, "", opts...) + if err != nil { + return ListDnsResolverPolicyByVirtualNetworkResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(ListDnsResolverPolicyByVirtualNetworkResultOutput) + if secret { + return pulumi.ToSecret(output).(ListDnsResolverPolicyByVirtualNetworkResultOutput), nil + } + return output, nil + }).(ListDnsResolverPolicyByVirtualNetworkResultOutput) +} + +type ListDnsResolverPolicyByVirtualNetworkOutputArgs struct { + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` + // The name of the virtual network. + VirtualNetworkName pulumi.StringInput `pulumi:"virtualNetworkName"` +} + +func (ListDnsResolverPolicyByVirtualNetworkOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ListDnsResolverPolicyByVirtualNetworkArgs)(nil)).Elem() +} + +// The response to an enumeration operation on sub-resources. +type ListDnsResolverPolicyByVirtualNetworkResultOutput struct{ *pulumi.OutputState } + +func (ListDnsResolverPolicyByVirtualNetworkResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ListDnsResolverPolicyByVirtualNetworkResult)(nil)).Elem() +} + +func (o ListDnsResolverPolicyByVirtualNetworkResultOutput) ToListDnsResolverPolicyByVirtualNetworkResultOutput() ListDnsResolverPolicyByVirtualNetworkResultOutput { + return o +} + +func (o ListDnsResolverPolicyByVirtualNetworkResultOutput) ToListDnsResolverPolicyByVirtualNetworkResultOutputWithContext(ctx context.Context) ListDnsResolverPolicyByVirtualNetworkResultOutput { + return o +} + +// The continuation token for the next page of results. +func (o ListDnsResolverPolicyByVirtualNetworkResultOutput) NextLink() pulumi.StringOutput { + return o.ApplyT(func(v ListDnsResolverPolicyByVirtualNetworkResult) string { return v.NextLink }).(pulumi.StringOutput) +} + +// Enumeration of the sub-resources. +func (o ListDnsResolverPolicyByVirtualNetworkResultOutput) Value() SubResourceResponseArrayOutput { + return o.ApplyT(func(v ListDnsResolverPolicyByVirtualNetworkResult) []SubResourceResponse { return v.Value }).(SubResourceResponseArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(ListDnsResolverPolicyByVirtualNetworkResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveConnectivityConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveConnectivityConfiguration.go index 7c8fc95b1..a7f865b53 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveConnectivityConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveConnectivityConfiguration.go @@ -42,14 +42,20 @@ type ListEffectiveConnectivityConfigurationResult struct { func ListEffectiveConnectivityConfigurationOutput(ctx *pulumi.Context, args ListEffectiveConnectivityConfigurationOutputArgs, opts ...pulumi.InvokeOption) ListEffectiveConnectivityConfigurationResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListEffectiveConnectivityConfigurationResult, error) { + ApplyT(func(v interface{}) (ListEffectiveConnectivityConfigurationResultOutput, error) { args := v.(ListEffectiveConnectivityConfigurationArgs) - r, err := ListEffectiveConnectivityConfiguration(ctx, &args, opts...) - var s ListEffectiveConnectivityConfigurationResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListEffectiveConnectivityConfigurationResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listEffectiveConnectivityConfiguration", args, &rv, "", opts...) + if err != nil { + return ListEffectiveConnectivityConfigurationResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListEffectiveConnectivityConfigurationResultOutput) + if secret { + return pulumi.ToSecret(output).(ListEffectiveConnectivityConfigurationResultOutput), nil + } + return output, nil }).(ListEffectiveConnectivityConfigurationResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkGroup.go index e9e918a0c..daad97f62 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkGroup.go @@ -44,14 +44,20 @@ type ListEffectiveVirtualNetworkByNetworkGroupResult struct { func ListEffectiveVirtualNetworkByNetworkGroupOutput(ctx *pulumi.Context, args ListEffectiveVirtualNetworkByNetworkGroupOutputArgs, opts ...pulumi.InvokeOption) ListEffectiveVirtualNetworkByNetworkGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListEffectiveVirtualNetworkByNetworkGroupResult, error) { + ApplyT(func(v interface{}) (ListEffectiveVirtualNetworkByNetworkGroupResultOutput, error) { args := v.(ListEffectiveVirtualNetworkByNetworkGroupArgs) - r, err := ListEffectiveVirtualNetworkByNetworkGroup(ctx, &args, opts...) - var s ListEffectiveVirtualNetworkByNetworkGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListEffectiveVirtualNetworkByNetworkGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listEffectiveVirtualNetworkByNetworkGroup", args, &rv, "", opts...) + if err != nil { + return ListEffectiveVirtualNetworkByNetworkGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListEffectiveVirtualNetworkByNetworkGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(ListEffectiveVirtualNetworkByNetworkGroupResultOutput), nil + } + return output, nil }).(ListEffectiveVirtualNetworkByNetworkGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkManager.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkManager.go index fc89c99f8..8b531afbf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkManager.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listEffectiveVirtualNetworkByNetworkManager.go @@ -48,14 +48,20 @@ type ListEffectiveVirtualNetworkByNetworkManagerResult struct { func ListEffectiveVirtualNetworkByNetworkManagerOutput(ctx *pulumi.Context, args ListEffectiveVirtualNetworkByNetworkManagerOutputArgs, opts ...pulumi.InvokeOption) ListEffectiveVirtualNetworkByNetworkManagerResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListEffectiveVirtualNetworkByNetworkManagerResult, error) { + ApplyT(func(v interface{}) (ListEffectiveVirtualNetworkByNetworkManagerResultOutput, error) { args := v.(ListEffectiveVirtualNetworkByNetworkManagerArgs) - r, err := ListEffectiveVirtualNetworkByNetworkManager(ctx, &args, opts...) - var s ListEffectiveVirtualNetworkByNetworkManagerResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListEffectiveVirtualNetworkByNetworkManagerResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listEffectiveVirtualNetworkByNetworkManager", args, &rv, "", opts...) + if err != nil { + return ListEffectiveVirtualNetworkByNetworkManagerResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListEffectiveVirtualNetworkByNetworkManagerResultOutput) + if secret { + return pulumi.ToSecret(output).(ListEffectiveVirtualNetworkByNetworkManagerResultOutput), nil + } + return output, nil }).(ListEffectiveVirtualNetworkByNetworkManagerResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignature.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignature.go index f79c67420..3a83e14bf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignature.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignature.go @@ -14,7 +14,7 @@ import ( // Retrieves the current status of IDPS signatures for the relevant policy // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func ListFirewallPolicyIdpsSignature(ctx *pulumi.Context, args *ListFirewallPolicyIdpsSignatureArgs, opts ...pulumi.InvokeOption) (*ListFirewallPolicyIdpsSignatureResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListFirewallPolicyIdpsSignatureResult @@ -52,14 +52,20 @@ type ListFirewallPolicyIdpsSignatureResult struct { func ListFirewallPolicyIdpsSignatureOutput(ctx *pulumi.Context, args ListFirewallPolicyIdpsSignatureOutputArgs, opts ...pulumi.InvokeOption) ListFirewallPolicyIdpsSignatureResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListFirewallPolicyIdpsSignatureResult, error) { + ApplyT(func(v interface{}) (ListFirewallPolicyIdpsSignatureResultOutput, error) { args := v.(ListFirewallPolicyIdpsSignatureArgs) - r, err := ListFirewallPolicyIdpsSignature(ctx, &args, opts...) - var s ListFirewallPolicyIdpsSignatureResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListFirewallPolicyIdpsSignatureResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listFirewallPolicyIdpsSignature", args, &rv, "", opts...) + if err != nil { + return ListFirewallPolicyIdpsSignatureResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListFirewallPolicyIdpsSignatureResultOutput) + if secret { + return pulumi.ToSecret(output).(ListFirewallPolicyIdpsSignatureResultOutput), nil + } + return output, nil }).(ListFirewallPolicyIdpsSignatureResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignaturesFilterValue.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignaturesFilterValue.go index de13e1273..8bf707643 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignaturesFilterValue.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listFirewallPolicyIdpsSignaturesFilterValue.go @@ -14,7 +14,7 @@ import ( // Retrieves the current filter values for the signatures overrides // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func ListFirewallPolicyIdpsSignaturesFilterValue(ctx *pulumi.Context, args *ListFirewallPolicyIdpsSignaturesFilterValueArgs, opts ...pulumi.InvokeOption) (*ListFirewallPolicyIdpsSignaturesFilterValueResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListFirewallPolicyIdpsSignaturesFilterValueResult @@ -42,14 +42,20 @@ type ListFirewallPolicyIdpsSignaturesFilterValueResult struct { func ListFirewallPolicyIdpsSignaturesFilterValueOutput(ctx *pulumi.Context, args ListFirewallPolicyIdpsSignaturesFilterValueOutputArgs, opts ...pulumi.InvokeOption) ListFirewallPolicyIdpsSignaturesFilterValueResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListFirewallPolicyIdpsSignaturesFilterValueResult, error) { + ApplyT(func(v interface{}) (ListFirewallPolicyIdpsSignaturesFilterValueResultOutput, error) { args := v.(ListFirewallPolicyIdpsSignaturesFilterValueArgs) - r, err := ListFirewallPolicyIdpsSignaturesFilterValue(ctx, &args, opts...) - var s ListFirewallPolicyIdpsSignaturesFilterValueResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListFirewallPolicyIdpsSignaturesFilterValueResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listFirewallPolicyIdpsSignaturesFilterValue", args, &rv, "", opts...) + if err != nil { + return ListFirewallPolicyIdpsSignaturesFilterValueResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListFirewallPolicyIdpsSignaturesFilterValueResultOutput) + if secret { + return pulumi.ToSecret(output).(ListFirewallPolicyIdpsSignaturesFilterValueResultOutput), nil + } + return output, nil }).(ListFirewallPolicyIdpsSignaturesFilterValueResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listIpamPoolAssociatedResources.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listIpamPoolAssociatedResources.go new file mode 100644 index 000000000..a08cf9549 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listIpamPoolAssociatedResources.go @@ -0,0 +1,100 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// List of PoolAssociation +// Azure REST API version: 2024-01-01-preview. +func ListIpamPoolAssociatedResources(ctx *pulumi.Context, args *ListIpamPoolAssociatedResourcesArgs, opts ...pulumi.InvokeOption) (*ListIpamPoolAssociatedResourcesResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListIpamPoolAssociatedResourcesResult + err := ctx.Invoke("azure-native:network:listIpamPoolAssociatedResources", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type ListIpamPoolAssociatedResourcesArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Pool resource name. + PoolName string `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// List of PoolAssociation +type ListIpamPoolAssociatedResourcesResult struct { + // The link used to get the next page of operations. + NextLink *string `pulumi:"nextLink"` + Value []PoolAssociationResponse `pulumi:"value"` +} + +func ListIpamPoolAssociatedResourcesOutput(ctx *pulumi.Context, args ListIpamPoolAssociatedResourcesOutputArgs, opts ...pulumi.InvokeOption) ListIpamPoolAssociatedResourcesResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (ListIpamPoolAssociatedResourcesResultOutput, error) { + args := v.(ListIpamPoolAssociatedResourcesArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListIpamPoolAssociatedResourcesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listIpamPoolAssociatedResources", args, &rv, "", opts...) + if err != nil { + return ListIpamPoolAssociatedResourcesResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(ListIpamPoolAssociatedResourcesResultOutput) + if secret { + return pulumi.ToSecret(output).(ListIpamPoolAssociatedResourcesResultOutput), nil + } + return output, nil + }).(ListIpamPoolAssociatedResourcesResultOutput) +} + +type ListIpamPoolAssociatedResourcesOutputArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput `pulumi:"networkManagerName"` + // Pool resource name. + PoolName pulumi.StringInput `pulumi:"poolName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (ListIpamPoolAssociatedResourcesOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ListIpamPoolAssociatedResourcesArgs)(nil)).Elem() +} + +// List of PoolAssociation +type ListIpamPoolAssociatedResourcesResultOutput struct{ *pulumi.OutputState } + +func (ListIpamPoolAssociatedResourcesResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ListIpamPoolAssociatedResourcesResult)(nil)).Elem() +} + +func (o ListIpamPoolAssociatedResourcesResultOutput) ToListIpamPoolAssociatedResourcesResultOutput() ListIpamPoolAssociatedResourcesResultOutput { + return o +} + +func (o ListIpamPoolAssociatedResourcesResultOutput) ToListIpamPoolAssociatedResourcesResultOutputWithContext(ctx context.Context) ListIpamPoolAssociatedResourcesResultOutput { + return o +} + +// The link used to get the next page of operations. +func (o ListIpamPoolAssociatedResourcesResultOutput) NextLink() pulumi.StringPtrOutput { + return o.ApplyT(func(v ListIpamPoolAssociatedResourcesResult) *string { return v.NextLink }).(pulumi.StringPtrOutput) +} + +func (o ListIpamPoolAssociatedResourcesResultOutput) Value() PoolAssociationResponseArrayOutput { + return o.ApplyT(func(v ListIpamPoolAssociatedResourcesResult) []PoolAssociationResponse { return v.Value }).(PoolAssociationResponseArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(ListIpamPoolAssociatedResourcesResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listListEffectiveVirtualNetworkByNetworkGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listListEffectiveVirtualNetworkByNetworkGroup.go index 9ec808dbd..b66de2232 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listListEffectiveVirtualNetworkByNetworkGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listListEffectiveVirtualNetworkByNetworkGroup.go @@ -46,14 +46,20 @@ type ListListEffectiveVirtualNetworkByNetworkGroupResult struct { func ListListEffectiveVirtualNetworkByNetworkGroupOutput(ctx *pulumi.Context, args ListListEffectiveVirtualNetworkByNetworkGroupOutputArgs, opts ...pulumi.InvokeOption) ListListEffectiveVirtualNetworkByNetworkGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListListEffectiveVirtualNetworkByNetworkGroupResult, error) { + ApplyT(func(v interface{}) (ListListEffectiveVirtualNetworkByNetworkGroupResultOutput, error) { args := v.(ListListEffectiveVirtualNetworkByNetworkGroupArgs) - r, err := ListListEffectiveVirtualNetworkByNetworkGroup(ctx, &args, opts...) - var s ListListEffectiveVirtualNetworkByNetworkGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListListEffectiveVirtualNetworkByNetworkGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listListEffectiveVirtualNetworkByNetworkGroup", args, &rv, "", opts...) + if err != nil { + return ListListEffectiveVirtualNetworkByNetworkGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListListEffectiveVirtualNetworkByNetworkGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(ListListEffectiveVirtualNetworkByNetworkGroupResultOutput), nil + } + return output, nil }).(ListListEffectiveVirtualNetworkByNetworkGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerDeploymentStatus.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerDeploymentStatus.go index 3ecc1d3d3..77cc04e30 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerDeploymentStatus.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerDeploymentStatus.go @@ -14,7 +14,7 @@ import ( // Post to List of Network Manager Deployment Status. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. func ListNetworkManagerDeploymentStatus(ctx *pulumi.Context, args *ListNetworkManagerDeploymentStatusArgs, opts ...pulumi.InvokeOption) (*ListNetworkManagerDeploymentStatusResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListNetworkManagerDeploymentStatusResult @@ -50,14 +50,20 @@ type ListNetworkManagerDeploymentStatusResult struct { func ListNetworkManagerDeploymentStatusOutput(ctx *pulumi.Context, args ListNetworkManagerDeploymentStatusOutputArgs, opts ...pulumi.InvokeOption) ListNetworkManagerDeploymentStatusResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListNetworkManagerDeploymentStatusResult, error) { + ApplyT(func(v interface{}) (ListNetworkManagerDeploymentStatusResultOutput, error) { args := v.(ListNetworkManagerDeploymentStatusArgs) - r, err := ListNetworkManagerDeploymentStatus(ctx, &args, opts...) - var s ListNetworkManagerDeploymentStatusResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListNetworkManagerDeploymentStatusResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listNetworkManagerDeploymentStatus", args, &rv, "", opts...) + if err != nil { + return ListNetworkManagerDeploymentStatusResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListNetworkManagerDeploymentStatusResultOutput) + if secret { + return pulumi.ToSecret(output).(ListNetworkManagerDeploymentStatusResultOutput), nil + } + return output, nil }).(ListNetworkManagerDeploymentStatusResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveConnectivityConfigurations.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveConnectivityConfigurations.go index be9af1f81..de994a79d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveConnectivityConfigurations.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveConnectivityConfigurations.go @@ -14,7 +14,7 @@ import ( // List all effective connectivity configurations applied on a virtual network. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-05-01-preview, 2022-02-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-05-01-preview, 2022-02-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func ListNetworkManagerEffectiveConnectivityConfigurations(ctx *pulumi.Context, args *ListNetworkManagerEffectiveConnectivityConfigurationsArgs, opts ...pulumi.InvokeOption) (*ListNetworkManagerEffectiveConnectivityConfigurationsResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListNetworkManagerEffectiveConnectivityConfigurationsResult @@ -46,14 +46,20 @@ type ListNetworkManagerEffectiveConnectivityConfigurationsResult struct { func ListNetworkManagerEffectiveConnectivityConfigurationsOutput(ctx *pulumi.Context, args ListNetworkManagerEffectiveConnectivityConfigurationsOutputArgs, opts ...pulumi.InvokeOption) ListNetworkManagerEffectiveConnectivityConfigurationsResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListNetworkManagerEffectiveConnectivityConfigurationsResult, error) { + ApplyT(func(v interface{}) (ListNetworkManagerEffectiveConnectivityConfigurationsResultOutput, error) { args := v.(ListNetworkManagerEffectiveConnectivityConfigurationsArgs) - r, err := ListNetworkManagerEffectiveConnectivityConfigurations(ctx, &args, opts...) - var s ListNetworkManagerEffectiveConnectivityConfigurationsResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListNetworkManagerEffectiveConnectivityConfigurationsResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listNetworkManagerEffectiveConnectivityConfigurations", args, &rv, "", opts...) + if err != nil { + return ListNetworkManagerEffectiveConnectivityConfigurationsResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListNetworkManagerEffectiveConnectivityConfigurationsResultOutput) + if secret { + return pulumi.ToSecret(output).(ListNetworkManagerEffectiveConnectivityConfigurationsResultOutput), nil + } + return output, nil }).(ListNetworkManagerEffectiveConnectivityConfigurationsResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRule.go index 8a689e014..ba3411c0f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRule.go @@ -42,14 +42,20 @@ type ListNetworkManagerEffectiveSecurityAdminRuleResult struct { func ListNetworkManagerEffectiveSecurityAdminRuleOutput(ctx *pulumi.Context, args ListNetworkManagerEffectiveSecurityAdminRuleOutputArgs, opts ...pulumi.InvokeOption) ListNetworkManagerEffectiveSecurityAdminRuleResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListNetworkManagerEffectiveSecurityAdminRuleResult, error) { + ApplyT(func(v interface{}) (ListNetworkManagerEffectiveSecurityAdminRuleResultOutput, error) { args := v.(ListNetworkManagerEffectiveSecurityAdminRuleArgs) - r, err := ListNetworkManagerEffectiveSecurityAdminRule(ctx, &args, opts...) - var s ListNetworkManagerEffectiveSecurityAdminRuleResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListNetworkManagerEffectiveSecurityAdminRuleResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listNetworkManagerEffectiveSecurityAdminRule", args, &rv, "", opts...) + if err != nil { + return ListNetworkManagerEffectiveSecurityAdminRuleResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListNetworkManagerEffectiveSecurityAdminRuleResultOutput) + if secret { + return pulumi.ToSecret(output).(ListNetworkManagerEffectiveSecurityAdminRuleResultOutput), nil + } + return output, nil }).(ListNetworkManagerEffectiveSecurityAdminRuleResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRules.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRules.go index adc519979..5c8234ebc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRules.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listNetworkManagerEffectiveSecurityAdminRules.go @@ -14,7 +14,7 @@ import ( // List all effective security admin rules applied on a virtual network. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2021-05-01-preview, 2022-02-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-05-01-preview, 2022-02-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. func ListNetworkManagerEffectiveSecurityAdminRules(ctx *pulumi.Context, args *ListNetworkManagerEffectiveSecurityAdminRulesArgs, opts ...pulumi.InvokeOption) (*ListNetworkManagerEffectiveSecurityAdminRulesResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv ListNetworkManagerEffectiveSecurityAdminRulesResult @@ -46,14 +46,20 @@ type ListNetworkManagerEffectiveSecurityAdminRulesResult struct { func ListNetworkManagerEffectiveSecurityAdminRulesOutput(ctx *pulumi.Context, args ListNetworkManagerEffectiveSecurityAdminRulesOutputArgs, opts ...pulumi.InvokeOption) ListNetworkManagerEffectiveSecurityAdminRulesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListNetworkManagerEffectiveSecurityAdminRulesResult, error) { + ApplyT(func(v interface{}) (ListNetworkManagerEffectiveSecurityAdminRulesResultOutput, error) { args := v.(ListNetworkManagerEffectiveSecurityAdminRulesArgs) - r, err := ListNetworkManagerEffectiveSecurityAdminRules(ctx, &args, opts...) - var s ListNetworkManagerEffectiveSecurityAdminRulesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListNetworkManagerEffectiveSecurityAdminRulesResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listNetworkManagerEffectiveSecurityAdminRules", args, &rv, "", opts...) + if err != nil { + return ListNetworkManagerEffectiveSecurityAdminRulesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListNetworkManagerEffectiveSecurityAdminRulesResultOutput) + if secret { + return pulumi.ToSecret(output).(ListNetworkManagerEffectiveSecurityAdminRulesResultOutput), nil + } + return output, nil }).(ListNetworkManagerEffectiveSecurityAdminRulesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listVpnLinkConnectionDefaultSharedKey.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listVpnLinkConnectionDefaultSharedKey.go new file mode 100644 index 000000000..bf7a058da --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/listVpnLinkConnectionDefaultSharedKey.go @@ -0,0 +1,120 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Gets the value of the shared key of VpnLink connection specified. +// Azure REST API version: 2024-03-01. +func ListVpnLinkConnectionDefaultSharedKey(ctx *pulumi.Context, args *ListVpnLinkConnectionDefaultSharedKeyArgs, opts ...pulumi.InvokeOption) (*ListVpnLinkConnectionDefaultSharedKeyResult, error) { + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListVpnLinkConnectionDefaultSharedKeyResult + err := ctx.Invoke("azure-native:network:listVpnLinkConnectionDefaultSharedKey", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type ListVpnLinkConnectionDefaultSharedKeyArgs struct { + // The name of the vpn connection. + ConnectionName string `pulumi:"connectionName"` + // The name of the gateway. + GatewayName string `pulumi:"gatewayName"` + // The name of the vpn link connection. + LinkConnectionName string `pulumi:"linkConnectionName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// SharedKey Resource . +type ListVpnLinkConnectionDefaultSharedKeyResult struct { + // Resource ID. + Id *string `pulumi:"id"` + // The name of the resource that is unique within a resource group. This name can be used to access the resource. + Name *string `pulumi:"name"` + // Properties of the shared key. + Properties SharedKeyPropertiesResponse `pulumi:"properties"` + // Resource type. + Type string `pulumi:"type"` +} + +func ListVpnLinkConnectionDefaultSharedKeyOutput(ctx *pulumi.Context, args ListVpnLinkConnectionDefaultSharedKeyOutputArgs, opts ...pulumi.InvokeOption) ListVpnLinkConnectionDefaultSharedKeyResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (ListVpnLinkConnectionDefaultSharedKeyResultOutput, error) { + args := v.(ListVpnLinkConnectionDefaultSharedKeyArgs) + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListVpnLinkConnectionDefaultSharedKeyResult + secret, err := ctx.InvokePackageRaw("azure-native:network:listVpnLinkConnectionDefaultSharedKey", args, &rv, "", opts...) + if err != nil { + return ListVpnLinkConnectionDefaultSharedKeyResultOutput{}, err + } + + output := pulumi.ToOutput(rv).(ListVpnLinkConnectionDefaultSharedKeyResultOutput) + if secret { + return pulumi.ToSecret(output).(ListVpnLinkConnectionDefaultSharedKeyResultOutput), nil + } + return output, nil + }).(ListVpnLinkConnectionDefaultSharedKeyResultOutput) +} + +type ListVpnLinkConnectionDefaultSharedKeyOutputArgs struct { + // The name of the vpn connection. + ConnectionName pulumi.StringInput `pulumi:"connectionName"` + // The name of the gateway. + GatewayName pulumi.StringInput `pulumi:"gatewayName"` + // The name of the vpn link connection. + LinkConnectionName pulumi.StringInput `pulumi:"linkConnectionName"` + // The name of the resource group. + ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` +} + +func (ListVpnLinkConnectionDefaultSharedKeyOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ListVpnLinkConnectionDefaultSharedKeyArgs)(nil)).Elem() +} + +// SharedKey Resource . +type ListVpnLinkConnectionDefaultSharedKeyResultOutput struct{ *pulumi.OutputState } + +func (ListVpnLinkConnectionDefaultSharedKeyResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ListVpnLinkConnectionDefaultSharedKeyResult)(nil)).Elem() +} + +func (o ListVpnLinkConnectionDefaultSharedKeyResultOutput) ToListVpnLinkConnectionDefaultSharedKeyResultOutput() ListVpnLinkConnectionDefaultSharedKeyResultOutput { + return o +} + +func (o ListVpnLinkConnectionDefaultSharedKeyResultOutput) ToListVpnLinkConnectionDefaultSharedKeyResultOutputWithContext(ctx context.Context) ListVpnLinkConnectionDefaultSharedKeyResultOutput { + return o +} + +// Resource ID. +func (o ListVpnLinkConnectionDefaultSharedKeyResultOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v ListVpnLinkConnectionDefaultSharedKeyResult) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// The name of the resource that is unique within a resource group. This name can be used to access the resource. +func (o ListVpnLinkConnectionDefaultSharedKeyResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ListVpnLinkConnectionDefaultSharedKeyResult) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// Properties of the shared key. +func (o ListVpnLinkConnectionDefaultSharedKeyResultOutput) Properties() SharedKeyPropertiesResponseOutput { + return o.ApplyT(func(v ListVpnLinkConnectionDefaultSharedKeyResult) SharedKeyPropertiesResponse { return v.Properties }).(SharedKeyPropertiesResponseOutput) +} + +// Resource type. +func (o ListVpnLinkConnectionDefaultSharedKeyResultOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v ListVpnLinkConnectionDefaultSharedKeyResult) string { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(ListVpnLinkConnectionDefaultSharedKeyResultOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancer.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancer.go index 0c9a7cfe7..c1b7615b7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancer.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancer.go @@ -15,7 +15,7 @@ import ( // LoadBalancer resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2018-06-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2018-06-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type LoadBalancer struct { pulumi.CustomResourceState @@ -217,6 +217,12 @@ func NewLoadBalancer(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:LoadBalancer"), }, + { + Type: pulumi.String("azure-native:network/v20240101:LoadBalancer"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:LoadBalancer"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancerBackendAddressPool.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancerBackendAddressPool.go index be16d3c01..28bcea039 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancerBackendAddressPool.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/loadBalancerBackendAddressPool.go @@ -15,7 +15,7 @@ import ( // Pool of backend IP addresses. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type LoadBalancerBackendAddressPool struct { pulumi.CustomResourceState @@ -126,6 +126,12 @@ func NewLoadBalancerBackendAddressPool(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:LoadBalancerBackendAddressPool"), }, + { + Type: pulumi.String("azure-native:network/v20240101:LoadBalancerBackendAddressPool"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:LoadBalancerBackendAddressPool"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/localNetworkGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/localNetworkGateway.go index 3df70e9db..6d272f11c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/localNetworkGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/localNetworkGateway.go @@ -15,7 +15,7 @@ import ( // A common class for general resource information. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type LocalNetworkGateway struct { pulumi.CustomResourceState @@ -204,6 +204,12 @@ func NewLocalNetworkGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:LocalNetworkGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:LocalNetworkGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:LocalNetworkGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/managementGroupNetworkManagerConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/managementGroupNetworkManagerConnection.go index 4c1f7b832..37fdf8aad 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/managementGroupNetworkManagerConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/managementGroupNetworkManagerConnection.go @@ -15,7 +15,7 @@ import ( // The Network Manager Connection resource // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-05-01-preview. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ManagementGroupNetworkManagerConnection struct { pulumi.CustomResourceState @@ -83,6 +83,12 @@ func NewManagementGroupNetworkManagerConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ManagementGroupNetworkManagerConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ManagementGroupNetworkManagerConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ManagementGroupNetworkManagerConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natGateway.go index 39691b82b..cd871c4d2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natGateway.go @@ -15,7 +15,7 @@ import ( // Nat Gateway resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NatGateway struct { pulumi.CustomResourceState @@ -148,6 +148,12 @@ func NewNatGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NatGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NatGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NatGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natRule.go index ea31439ca..fdf334365 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/natRule.go @@ -15,7 +15,7 @@ import ( // VpnGatewayNatRule Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NatRule struct { pulumi.CustomResourceState @@ -106,6 +106,12 @@ func NewNatRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NatRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NatRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NatRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkGroup.go index 21be5c0f5..94217301c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkGroup.go @@ -15,7 +15,7 @@ import ( // The network group resource // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2022-04-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkGroup struct { pulumi.CustomResourceState @@ -94,6 +94,12 @@ func NewNetworkGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterface.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterface.go index 9bef94d3f..a83eb72e4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterface.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterface.go @@ -15,7 +15,7 @@ import ( // A network interface in a resource group. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2018-07-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2018-07-01, 2019-02-01, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkInterface struct { pulumi.CustomResourceState @@ -241,6 +241,12 @@ func NewNetworkInterface(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkInterface"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkInterface"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkInterface"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterfaceTapConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterfaceTapConfiguration.go index 5f381b2b1..fa920ed87 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterfaceTapConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkInterfaceTapConfiguration.go @@ -15,7 +15,7 @@ import ( // Tap configuration in a Network Interface. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkInterfaceTapConfiguration struct { pulumi.CustomResourceState @@ -150,6 +150,12 @@ func NewNetworkInterfaceTapConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkInterfaceTapConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkInterfaceTapConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkInterfaceTapConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManager.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManager.go index 67ca9a454..c9d1770cb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManager.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManager.go @@ -15,7 +15,7 @@ import ( // The Managed Network resource // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01-preview, 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. type NetworkManager struct { pulumi.CustomResourceState @@ -105,6 +105,15 @@ func NewNetworkManager(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkManager"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkManager"), + }, + { + Type: pulumi.String("azure-native:network/v20240101preview:NetworkManager"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkManager"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManagerRoutingConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManagerRoutingConfiguration.go new file mode 100644 index 000000000..9c5cdda34 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkManagerRoutingConfiguration.go @@ -0,0 +1,184 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Defines the routing configuration +// Azure REST API version: 2024-03-01. +type NetworkManagerRoutingConfiguration struct { + pulumi.CustomResourceState + + // A description of the routing configuration. + Description pulumi.StringPtrOutput `pulumi:"description"` + // A unique read-only string that changes whenever the resource is updated. + Etag pulumi.StringOutput `pulumi:"etag"` + // Resource name. + Name pulumi.StringOutput `pulumi:"name"` + // The provisioning state of the resource. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource type. + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewNetworkManagerRoutingConfiguration registers a new resource with the given unique name, arguments, and options. +func NewNetworkManagerRoutingConfiguration(ctx *pulumi.Context, + name string, args *NetworkManagerRoutingConfigurationArgs, opts ...pulumi.ResourceOption) (*NetworkManagerRoutingConfiguration, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240301:NetworkManagerRoutingConfiguration"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource NetworkManagerRoutingConfiguration + err := ctx.RegisterResource("azure-native:network:NetworkManagerRoutingConfiguration", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetNetworkManagerRoutingConfiguration gets an existing NetworkManagerRoutingConfiguration resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetNetworkManagerRoutingConfiguration(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *NetworkManagerRoutingConfigurationState, opts ...pulumi.ResourceOption) (*NetworkManagerRoutingConfiguration, error) { + var resource NetworkManagerRoutingConfiguration + err := ctx.ReadResource("azure-native:network:NetworkManagerRoutingConfiguration", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering NetworkManagerRoutingConfiguration resources. +type networkManagerRoutingConfigurationState struct { +} + +type NetworkManagerRoutingConfigurationState struct { +} + +func (NetworkManagerRoutingConfigurationState) ElementType() reflect.Type { + return reflect.TypeOf((*networkManagerRoutingConfigurationState)(nil)).Elem() +} + +type networkManagerRoutingConfigurationArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName *string `pulumi:"configurationName"` + // A description of the routing configuration. + Description *string `pulumi:"description"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` +} + +// The set of arguments for constructing a NetworkManagerRoutingConfiguration resource. +type NetworkManagerRoutingConfigurationArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName pulumi.StringPtrInput + // A description of the routing configuration. + Description pulumi.StringPtrInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput +} + +func (NetworkManagerRoutingConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*networkManagerRoutingConfigurationArgs)(nil)).Elem() +} + +type NetworkManagerRoutingConfigurationInput interface { + pulumi.Input + + ToNetworkManagerRoutingConfigurationOutput() NetworkManagerRoutingConfigurationOutput + ToNetworkManagerRoutingConfigurationOutputWithContext(ctx context.Context) NetworkManagerRoutingConfigurationOutput +} + +func (*NetworkManagerRoutingConfiguration) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkManagerRoutingConfiguration)(nil)).Elem() +} + +func (i *NetworkManagerRoutingConfiguration) ToNetworkManagerRoutingConfigurationOutput() NetworkManagerRoutingConfigurationOutput { + return i.ToNetworkManagerRoutingConfigurationOutputWithContext(context.Background()) +} + +func (i *NetworkManagerRoutingConfiguration) ToNetworkManagerRoutingConfigurationOutputWithContext(ctx context.Context) NetworkManagerRoutingConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkManagerRoutingConfigurationOutput) +} + +type NetworkManagerRoutingConfigurationOutput struct{ *pulumi.OutputState } + +func (NetworkManagerRoutingConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkManagerRoutingConfiguration)(nil)).Elem() +} + +func (o NetworkManagerRoutingConfigurationOutput) ToNetworkManagerRoutingConfigurationOutput() NetworkManagerRoutingConfigurationOutput { + return o +} + +func (o NetworkManagerRoutingConfigurationOutput) ToNetworkManagerRoutingConfigurationOutputWithContext(ctx context.Context) NetworkManagerRoutingConfigurationOutput { + return o +} + +// A description of the routing configuration. +func (o NetworkManagerRoutingConfigurationOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o NetworkManagerRoutingConfigurationOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// Resource name. +func (o NetworkManagerRoutingConfigurationOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The provisioning state of the resource. +func (o NetworkManagerRoutingConfigurationOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o NetworkManagerRoutingConfigurationOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o NetworkManagerRoutingConfigurationOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o NetworkManagerRoutingConfigurationOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *NetworkManagerRoutingConfiguration) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(NetworkManagerRoutingConfigurationOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkProfile.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkProfile.go index 197c664c8..d5989ba5f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkProfile.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkProfile.go @@ -15,7 +15,7 @@ import ( // Network profile resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkProfile struct { pulumi.CustomResourceState @@ -152,6 +152,12 @@ func NewNetworkProfile(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkProfile"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkProfile"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkProfile"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkSecurityGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkSecurityGroup.go index 6efc47d0a..952142985 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkSecurityGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkSecurityGroup.go @@ -15,7 +15,7 @@ import ( // NetworkSecurityGroup resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkSecurityGroup struct { pulumi.CustomResourceState @@ -211,6 +211,12 @@ func NewNetworkSecurityGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkSecurityGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkSecurityGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkSecurityGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkVirtualAppliance.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkVirtualAppliance.go index 1dfd604eb..5613f4338 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkVirtualAppliance.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkVirtualAppliance.go @@ -15,7 +15,7 @@ import ( // NetworkVirtualAppliance Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2020-04-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkVirtualAppliance struct { pulumi.CustomResourceState @@ -145,6 +145,12 @@ func NewNetworkVirtualAppliance(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkVirtualAppliance"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkVirtualAppliance"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkVirtualAppliance"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkWatcher.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkWatcher.go index f3f876677..78fb0323f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkWatcher.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/networkWatcher.go @@ -15,7 +15,7 @@ import ( // Network watcher in a resource group. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-01-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-01-01, 2022-05-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type NetworkWatcher struct { pulumi.CustomResourceState @@ -185,6 +185,12 @@ func NewNetworkWatcher(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:NetworkWatcher"), }, + { + Type: pulumi.String("azure-native:network/v20240101:NetworkWatcher"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:NetworkWatcher"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/outboundEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/outboundEndpoint.go index a37c209a0..9cd4ba7ba 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/outboundEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/outboundEndpoint.go @@ -15,7 +15,7 @@ import ( // Describes an outbound endpoint for a DNS resolver. // Azure REST API version: 2022-07-01. Prior API version in Azure Native 1.x: 2020-04-01-preview. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. type OutboundEndpoint struct { pulumi.CustomResourceState @@ -62,6 +62,9 @@ func NewOutboundEndpoint(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220701:OutboundEndpoint"), }, + { + Type: pulumi.String("azure-native:network/v20230701preview:OutboundEndpoint"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/p2sVpnGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/p2sVpnGateway.go index 7dd648237..4ff9108b8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/p2sVpnGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/p2sVpnGateway.go @@ -15,7 +15,7 @@ import ( // P2SVpnGateway Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type P2sVpnGateway struct { pulumi.CustomResourceState @@ -160,6 +160,12 @@ func NewP2sVpnGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:P2sVpnGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:P2sVpnGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:P2sVpnGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/packetCapture.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/packetCapture.go index dc453dc3d..f1b22cf67 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/packetCapture.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/packetCapture.go @@ -15,7 +15,7 @@ import ( // Information about packet capture session. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-01-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-01-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PacketCapture struct { pulumi.CustomResourceState @@ -213,6 +213,12 @@ func NewPacketCapture(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PacketCapture"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PacketCapture"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PacketCapture"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateDnsZoneGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateDnsZoneGroup.go index abe4a87fb..bdc1b5f76 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateDnsZoneGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateDnsZoneGroup.go @@ -15,7 +15,7 @@ import ( // Private dns zone group resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PrivateDnsZoneGroup struct { pulumi.CustomResourceState @@ -109,6 +109,12 @@ func NewPrivateDnsZoneGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PrivateDnsZoneGroup"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PrivateDnsZoneGroup"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PrivateDnsZoneGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateEndpoint.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateEndpoint.go index f8f8f021c..7081fb5bf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateEndpoint.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateEndpoint.go @@ -15,7 +15,7 @@ import ( // Private endpoint resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PrivateEndpoint struct { pulumi.CustomResourceState @@ -167,6 +167,12 @@ func NewPrivateEndpoint(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PrivateEndpoint"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PrivateEndpoint"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PrivateEndpoint"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkService.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkService.go index 5646de8ab..a200d9acf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkService.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkService.go @@ -15,7 +15,7 @@ import ( // Private link service resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-08-01, 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2021-02-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PrivateLinkService struct { pulumi.CustomResourceState @@ -151,6 +151,12 @@ func NewPrivateLinkService(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PrivateLinkService"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PrivateLinkService"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PrivateLinkService"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkServicePrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkServicePrivateEndpointConnection.go index bc6332155..18e874361 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkServicePrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateLinkServicePrivateEndpointConnection.go @@ -15,7 +15,7 @@ import ( // PrivateEndpointConnection resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PrivateLinkServicePrivateEndpointConnection struct { pulumi.CustomResourceState @@ -126,6 +126,12 @@ func NewPrivateLinkServicePrivateEndpointConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PrivateLinkServicePrivateEndpointConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PrivateLinkServicePrivateEndpointConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PrivateLinkServicePrivateEndpointConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateRecordSet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateRecordSet.go index bd4924d99..7138d4347 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateRecordSet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateRecordSet.go @@ -14,6 +14,8 @@ import ( // Describes a DNS record set (a collection of DNS records with the same name and type) in a Private DNS zone. // Azure REST API version: 2020-06-01. Prior API version in Azure Native 1.x: 2020-06-01. +// +// Other available API versions: 2024-06-01. type PrivateRecordSet struct { pulumi.CustomResourceState @@ -75,6 +77,9 @@ func NewPrivateRecordSet(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20200601:PrivateRecordSet"), }, + { + Type: pulumi.String("azure-native:network/v20240601:PrivateRecordSet"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateResolverVirtualNetworkLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateResolverVirtualNetworkLink.go index c99335ebf..757e3b39b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateResolverVirtualNetworkLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateResolverVirtualNetworkLink.go @@ -15,7 +15,7 @@ import ( // Describes a virtual network link. // Azure REST API version: 2022-07-01. // -// Other available API versions: 2020-04-01-preview. +// Other available API versions: 2020-04-01-preview, 2023-07-01-preview. type PrivateResolverVirtualNetworkLink struct { pulumi.CustomResourceState @@ -58,6 +58,9 @@ func NewPrivateResolverVirtualNetworkLink(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220701:PrivateResolverVirtualNetworkLink"), }, + { + Type: pulumi.String("azure-native:network/v20230701preview:PrivateResolverVirtualNetworkLink"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateZone.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateZone.go index 64b1854db..90faaaa93 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateZone.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/privateZone.go @@ -14,6 +14,8 @@ import ( // Describes a Private DNS zone. // Azure REST API version: 2020-06-01. Prior API version in Azure Native 1.x: 2020-06-01. +// +// Other available API versions: 2024-06-01. type PrivateZone struct { pulumi.CustomResourceState @@ -65,6 +67,9 @@ func NewPrivateZone(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20200601:PrivateZone"), }, + { + Type: pulumi.String("azure-native:network/v20240601:PrivateZone"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPAddress.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPAddress.go index a73b4c512..b2df5bc24 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPAddress.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPAddress.go @@ -15,7 +15,7 @@ import ( // Public IP address resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-03-30, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PublicIPAddress struct { pulumi.CustomResourceState @@ -233,6 +233,12 @@ func NewPublicIPAddress(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PublicIPAddress"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PublicIPAddress"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PublicIPAddress"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPPrefix.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPPrefix.go index 21f1be503..11bee8324 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPPrefix.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/publicIPPrefix.go @@ -15,7 +15,7 @@ import ( // Public IP prefix resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type PublicIPPrefix struct { pulumi.CustomResourceState @@ -173,6 +173,12 @@ func NewPublicIPPrefix(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:PublicIPPrefix"), }, + { + Type: pulumi.String("azure-native:network/v20240101:PublicIPPrefix"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:PublicIPPrefix"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumi-plugin.json b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumi-plugin.json index 021d33318..3825324d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumi-plugin.json +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azure-native", - "version": "2.45.0" + "version": "2.64.2" } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiEnums.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiEnums.go index 9c784355b..f3ee7291c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiEnums.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiEnums.go @@ -5952,6 +5952,170 @@ func (in *bastionHostSkuNamePtr) ToBastionHostSkuNamePtrOutputWithContext(ctx co return pulumi.ToOutputWithContext(ctx, in).(BastionHostSkuNamePtrOutput) } +// The response code for block actions. +type BlockResponseCode string + +const ( + BlockResponseCodeSERVFAIL = BlockResponseCode("SERVFAIL") +) + +func (BlockResponseCode) ElementType() reflect.Type { + return reflect.TypeOf((*BlockResponseCode)(nil)).Elem() +} + +func (e BlockResponseCode) ToBlockResponseCodeOutput() BlockResponseCodeOutput { + return pulumi.ToOutput(e).(BlockResponseCodeOutput) +} + +func (e BlockResponseCode) ToBlockResponseCodeOutputWithContext(ctx context.Context) BlockResponseCodeOutput { + return pulumi.ToOutputWithContext(ctx, e).(BlockResponseCodeOutput) +} + +func (e BlockResponseCode) ToBlockResponseCodePtrOutput() BlockResponseCodePtrOutput { + return e.ToBlockResponseCodePtrOutputWithContext(context.Background()) +} + +func (e BlockResponseCode) ToBlockResponseCodePtrOutputWithContext(ctx context.Context) BlockResponseCodePtrOutput { + return BlockResponseCode(e).ToBlockResponseCodeOutputWithContext(ctx).ToBlockResponseCodePtrOutputWithContext(ctx) +} + +func (e BlockResponseCode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e BlockResponseCode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e BlockResponseCode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e BlockResponseCode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type BlockResponseCodeOutput struct{ *pulumi.OutputState } + +func (BlockResponseCodeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*BlockResponseCode)(nil)).Elem() +} + +func (o BlockResponseCodeOutput) ToBlockResponseCodeOutput() BlockResponseCodeOutput { + return o +} + +func (o BlockResponseCodeOutput) ToBlockResponseCodeOutputWithContext(ctx context.Context) BlockResponseCodeOutput { + return o +} + +func (o BlockResponseCodeOutput) ToBlockResponseCodePtrOutput() BlockResponseCodePtrOutput { + return o.ToBlockResponseCodePtrOutputWithContext(context.Background()) +} + +func (o BlockResponseCodeOutput) ToBlockResponseCodePtrOutputWithContext(ctx context.Context) BlockResponseCodePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v BlockResponseCode) *BlockResponseCode { + return &v + }).(BlockResponseCodePtrOutput) +} + +func (o BlockResponseCodeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o BlockResponseCodeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e BlockResponseCode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o BlockResponseCodeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o BlockResponseCodeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e BlockResponseCode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type BlockResponseCodePtrOutput struct{ *pulumi.OutputState } + +func (BlockResponseCodePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**BlockResponseCode)(nil)).Elem() +} + +func (o BlockResponseCodePtrOutput) ToBlockResponseCodePtrOutput() BlockResponseCodePtrOutput { + return o +} + +func (o BlockResponseCodePtrOutput) ToBlockResponseCodePtrOutputWithContext(ctx context.Context) BlockResponseCodePtrOutput { + return o +} + +func (o BlockResponseCodePtrOutput) Elem() BlockResponseCodeOutput { + return o.ApplyT(func(v *BlockResponseCode) BlockResponseCode { + if v != nil { + return *v + } + var ret BlockResponseCode + return ret + }).(BlockResponseCodeOutput) +} + +func (o BlockResponseCodePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o BlockResponseCodePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *BlockResponseCode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// BlockResponseCodeInput is an input type that accepts values of the BlockResponseCode enum +// A concrete instance of `BlockResponseCodeInput` can be one of the following: +// +// BlockResponseCodeSERVFAIL +type BlockResponseCodeInput interface { + pulumi.Input + + ToBlockResponseCodeOutput() BlockResponseCodeOutput + ToBlockResponseCodeOutputWithContext(context.Context) BlockResponseCodeOutput +} + +var blockResponseCodePtrType = reflect.TypeOf((**BlockResponseCode)(nil)).Elem() + +type BlockResponseCodePtrInput interface { + pulumi.Input + + ToBlockResponseCodePtrOutput() BlockResponseCodePtrOutput + ToBlockResponseCodePtrOutputWithContext(context.Context) BlockResponseCodePtrOutput +} + +type blockResponseCodePtr string + +func BlockResponseCodePtr(v string) BlockResponseCodePtrInput { + return (*blockResponseCodePtr)(&v) +} + +func (*blockResponseCodePtr) ElementType() reflect.Type { + return blockResponseCodePtrType +} + +func (in *blockResponseCodePtr) ToBlockResponseCodePtrOutput() BlockResponseCodePtrOutput { + return pulumi.ToOutput(in).(BlockResponseCodePtrOutput) +} + +func (in *blockResponseCodePtr) ToBlockResponseCodePtrOutputWithContext(ctx context.Context) BlockResponseCodePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(BlockResponseCodePtrOutput) +} + // The commissioned state of the Custom IP Prefix. type CommissionedState string @@ -8476,6 +8640,338 @@ func (in *dhGroupPtr) ToDhGroupPtrOutputWithContext(ctx context.Context) DhGroup return pulumi.ToOutputWithContext(ctx, in).(DhGroupPtrOutput) } +// Determines whether BGP route propagation is enabled. Defaults to true. +type DisableBgpRoutePropagation string + +const ( + DisableBgpRoutePropagationFalse = DisableBgpRoutePropagation("False") + DisableBgpRoutePropagationTrue = DisableBgpRoutePropagation("True") +) + +func (DisableBgpRoutePropagation) ElementType() reflect.Type { + return reflect.TypeOf((*DisableBgpRoutePropagation)(nil)).Elem() +} + +func (e DisableBgpRoutePropagation) ToDisableBgpRoutePropagationOutput() DisableBgpRoutePropagationOutput { + return pulumi.ToOutput(e).(DisableBgpRoutePropagationOutput) +} + +func (e DisableBgpRoutePropagation) ToDisableBgpRoutePropagationOutputWithContext(ctx context.Context) DisableBgpRoutePropagationOutput { + return pulumi.ToOutputWithContext(ctx, e).(DisableBgpRoutePropagationOutput) +} + +func (e DisableBgpRoutePropagation) ToDisableBgpRoutePropagationPtrOutput() DisableBgpRoutePropagationPtrOutput { + return e.ToDisableBgpRoutePropagationPtrOutputWithContext(context.Background()) +} + +func (e DisableBgpRoutePropagation) ToDisableBgpRoutePropagationPtrOutputWithContext(ctx context.Context) DisableBgpRoutePropagationPtrOutput { + return DisableBgpRoutePropagation(e).ToDisableBgpRoutePropagationOutputWithContext(ctx).ToDisableBgpRoutePropagationPtrOutputWithContext(ctx) +} + +func (e DisableBgpRoutePropagation) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DisableBgpRoutePropagation) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DisableBgpRoutePropagation) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DisableBgpRoutePropagation) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DisableBgpRoutePropagationOutput struct{ *pulumi.OutputState } + +func (DisableBgpRoutePropagationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DisableBgpRoutePropagation)(nil)).Elem() +} + +func (o DisableBgpRoutePropagationOutput) ToDisableBgpRoutePropagationOutput() DisableBgpRoutePropagationOutput { + return o +} + +func (o DisableBgpRoutePropagationOutput) ToDisableBgpRoutePropagationOutputWithContext(ctx context.Context) DisableBgpRoutePropagationOutput { + return o +} + +func (o DisableBgpRoutePropagationOutput) ToDisableBgpRoutePropagationPtrOutput() DisableBgpRoutePropagationPtrOutput { + return o.ToDisableBgpRoutePropagationPtrOutputWithContext(context.Background()) +} + +func (o DisableBgpRoutePropagationOutput) ToDisableBgpRoutePropagationPtrOutputWithContext(ctx context.Context) DisableBgpRoutePropagationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DisableBgpRoutePropagation) *DisableBgpRoutePropagation { + return &v + }).(DisableBgpRoutePropagationPtrOutput) +} + +func (o DisableBgpRoutePropagationOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DisableBgpRoutePropagationOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DisableBgpRoutePropagation) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DisableBgpRoutePropagationOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DisableBgpRoutePropagationOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DisableBgpRoutePropagation) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DisableBgpRoutePropagationPtrOutput struct{ *pulumi.OutputState } + +func (DisableBgpRoutePropagationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DisableBgpRoutePropagation)(nil)).Elem() +} + +func (o DisableBgpRoutePropagationPtrOutput) ToDisableBgpRoutePropagationPtrOutput() DisableBgpRoutePropagationPtrOutput { + return o +} + +func (o DisableBgpRoutePropagationPtrOutput) ToDisableBgpRoutePropagationPtrOutputWithContext(ctx context.Context) DisableBgpRoutePropagationPtrOutput { + return o +} + +func (o DisableBgpRoutePropagationPtrOutput) Elem() DisableBgpRoutePropagationOutput { + return o.ApplyT(func(v *DisableBgpRoutePropagation) DisableBgpRoutePropagation { + if v != nil { + return *v + } + var ret DisableBgpRoutePropagation + return ret + }).(DisableBgpRoutePropagationOutput) +} + +func (o DisableBgpRoutePropagationPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DisableBgpRoutePropagationPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DisableBgpRoutePropagation) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DisableBgpRoutePropagationInput is an input type that accepts values of the DisableBgpRoutePropagation enum +// A concrete instance of `DisableBgpRoutePropagationInput` can be one of the following: +// +// DisableBgpRoutePropagationFalse +// DisableBgpRoutePropagationTrue +type DisableBgpRoutePropagationInput interface { + pulumi.Input + + ToDisableBgpRoutePropagationOutput() DisableBgpRoutePropagationOutput + ToDisableBgpRoutePropagationOutputWithContext(context.Context) DisableBgpRoutePropagationOutput +} + +var disableBgpRoutePropagationPtrType = reflect.TypeOf((**DisableBgpRoutePropagation)(nil)).Elem() + +type DisableBgpRoutePropagationPtrInput interface { + pulumi.Input + + ToDisableBgpRoutePropagationPtrOutput() DisableBgpRoutePropagationPtrOutput + ToDisableBgpRoutePropagationPtrOutputWithContext(context.Context) DisableBgpRoutePropagationPtrOutput +} + +type disableBgpRoutePropagationPtr string + +func DisableBgpRoutePropagationPtr(v string) DisableBgpRoutePropagationPtrInput { + return (*disableBgpRoutePropagationPtr)(&v) +} + +func (*disableBgpRoutePropagationPtr) ElementType() reflect.Type { + return disableBgpRoutePropagationPtrType +} + +func (in *disableBgpRoutePropagationPtr) ToDisableBgpRoutePropagationPtrOutput() DisableBgpRoutePropagationPtrOutput { + return pulumi.ToOutput(in).(DisableBgpRoutePropagationPtrOutput) +} + +func (in *disableBgpRoutePropagationPtr) ToDisableBgpRoutePropagationPtrOutputWithContext(ctx context.Context) DisableBgpRoutePropagationPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DisableBgpRoutePropagationPtrOutput) +} + +// The state of DNS security rule. +type DnsSecurityRuleStateEnum string + +const ( + DnsSecurityRuleStateEnumEnabled = DnsSecurityRuleStateEnum("Enabled") + DnsSecurityRuleStateEnumDisabled = DnsSecurityRuleStateEnum("Disabled") +) + +func (DnsSecurityRuleStateEnum) ElementType() reflect.Type { + return reflect.TypeOf((*DnsSecurityRuleStateEnum)(nil)).Elem() +} + +func (e DnsSecurityRuleStateEnum) ToDnsSecurityRuleStateEnumOutput() DnsSecurityRuleStateEnumOutput { + return pulumi.ToOutput(e).(DnsSecurityRuleStateEnumOutput) +} + +func (e DnsSecurityRuleStateEnum) ToDnsSecurityRuleStateEnumOutputWithContext(ctx context.Context) DnsSecurityRuleStateEnumOutput { + return pulumi.ToOutputWithContext(ctx, e).(DnsSecurityRuleStateEnumOutput) +} + +func (e DnsSecurityRuleStateEnum) ToDnsSecurityRuleStateEnumPtrOutput() DnsSecurityRuleStateEnumPtrOutput { + return e.ToDnsSecurityRuleStateEnumPtrOutputWithContext(context.Background()) +} + +func (e DnsSecurityRuleStateEnum) ToDnsSecurityRuleStateEnumPtrOutputWithContext(ctx context.Context) DnsSecurityRuleStateEnumPtrOutput { + return DnsSecurityRuleStateEnum(e).ToDnsSecurityRuleStateEnumOutputWithContext(ctx).ToDnsSecurityRuleStateEnumPtrOutputWithContext(ctx) +} + +func (e DnsSecurityRuleStateEnum) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DnsSecurityRuleStateEnum) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DnsSecurityRuleStateEnum) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DnsSecurityRuleStateEnum) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DnsSecurityRuleStateEnumOutput struct{ *pulumi.OutputState } + +func (DnsSecurityRuleStateEnumOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DnsSecurityRuleStateEnum)(nil)).Elem() +} + +func (o DnsSecurityRuleStateEnumOutput) ToDnsSecurityRuleStateEnumOutput() DnsSecurityRuleStateEnumOutput { + return o +} + +func (o DnsSecurityRuleStateEnumOutput) ToDnsSecurityRuleStateEnumOutputWithContext(ctx context.Context) DnsSecurityRuleStateEnumOutput { + return o +} + +func (o DnsSecurityRuleStateEnumOutput) ToDnsSecurityRuleStateEnumPtrOutput() DnsSecurityRuleStateEnumPtrOutput { + return o.ToDnsSecurityRuleStateEnumPtrOutputWithContext(context.Background()) +} + +func (o DnsSecurityRuleStateEnumOutput) ToDnsSecurityRuleStateEnumPtrOutputWithContext(ctx context.Context) DnsSecurityRuleStateEnumPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DnsSecurityRuleStateEnum) *DnsSecurityRuleStateEnum { + return &v + }).(DnsSecurityRuleStateEnumPtrOutput) +} + +func (o DnsSecurityRuleStateEnumOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DnsSecurityRuleStateEnumOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DnsSecurityRuleStateEnum) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DnsSecurityRuleStateEnumOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DnsSecurityRuleStateEnumOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DnsSecurityRuleStateEnum) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DnsSecurityRuleStateEnumPtrOutput struct{ *pulumi.OutputState } + +func (DnsSecurityRuleStateEnumPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DnsSecurityRuleStateEnum)(nil)).Elem() +} + +func (o DnsSecurityRuleStateEnumPtrOutput) ToDnsSecurityRuleStateEnumPtrOutput() DnsSecurityRuleStateEnumPtrOutput { + return o +} + +func (o DnsSecurityRuleStateEnumPtrOutput) ToDnsSecurityRuleStateEnumPtrOutputWithContext(ctx context.Context) DnsSecurityRuleStateEnumPtrOutput { + return o +} + +func (o DnsSecurityRuleStateEnumPtrOutput) Elem() DnsSecurityRuleStateEnumOutput { + return o.ApplyT(func(v *DnsSecurityRuleStateEnum) DnsSecurityRuleStateEnum { + if v != nil { + return *v + } + var ret DnsSecurityRuleStateEnum + return ret + }).(DnsSecurityRuleStateEnumOutput) +} + +func (o DnsSecurityRuleStateEnumPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DnsSecurityRuleStateEnumPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DnsSecurityRuleStateEnum) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DnsSecurityRuleStateEnumInput is an input type that accepts values of the DnsSecurityRuleStateEnum enum +// A concrete instance of `DnsSecurityRuleStateEnumInput` can be one of the following: +// +// DnsSecurityRuleStateEnumEnabled +// DnsSecurityRuleStateEnumDisabled +type DnsSecurityRuleStateEnumInput interface { + pulumi.Input + + ToDnsSecurityRuleStateEnumOutput() DnsSecurityRuleStateEnumOutput + ToDnsSecurityRuleStateEnumOutputWithContext(context.Context) DnsSecurityRuleStateEnumOutput +} + +var dnsSecurityRuleStateEnumPtrType = reflect.TypeOf((**DnsSecurityRuleStateEnum)(nil)).Elem() + +type DnsSecurityRuleStateEnumPtrInput interface { + pulumi.Input + + ToDnsSecurityRuleStateEnumPtrOutput() DnsSecurityRuleStateEnumPtrOutput + ToDnsSecurityRuleStateEnumPtrOutputWithContext(context.Context) DnsSecurityRuleStateEnumPtrOutput +} + +type dnsSecurityRuleStateEnumPtr string + +func DnsSecurityRuleStateEnumPtr(v string) DnsSecurityRuleStateEnumPtrInput { + return (*dnsSecurityRuleStateEnumPtr)(&v) +} + +func (*dnsSecurityRuleStateEnumPtr) ElementType() reflect.Type { + return dnsSecurityRuleStateEnumPtrType +} + +func (in *dnsSecurityRuleStateEnumPtr) ToDnsSecurityRuleStateEnumPtrOutput() DnsSecurityRuleStateEnumPtrOutput { + return pulumi.ToOutput(in).(DnsSecurityRuleStateEnumPtrOutput) +} + +func (in *dnsSecurityRuleStateEnumPtr) ToDnsSecurityRuleStateEnumPtrOutputWithContext(ctx context.Context) DnsSecurityRuleStateEnumPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DnsSecurityRuleStateEnumPtrOutput) +} + // Whether to use dynamic compression for cached content type DynamicCompressionEnabled string @@ -20645,105 +21141,273 @@ func (e NetworkInterfaceNicType) ToNetworkInterfaceNicTypeOutputWithContext(ctx return pulumi.ToOutputWithContext(ctx, e).(NetworkInterfaceNicTypeOutput) } -func (e NetworkInterfaceNicType) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { - return e.ToNetworkInterfaceNicTypePtrOutputWithContext(context.Background()) +func (e NetworkInterfaceNicType) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { + return e.ToNetworkInterfaceNicTypePtrOutputWithContext(context.Background()) +} + +func (e NetworkInterfaceNicType) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { + return NetworkInterfaceNicType(e).ToNetworkInterfaceNicTypeOutputWithContext(ctx).ToNetworkInterfaceNicTypePtrOutputWithContext(ctx) +} + +func (e NetworkInterfaceNicType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e NetworkInterfaceNicType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e NetworkInterfaceNicType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e NetworkInterfaceNicType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type NetworkInterfaceNicTypeOutput struct{ *pulumi.OutputState } + +func (NetworkInterfaceNicTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkInterfaceNicType)(nil)).Elem() +} + +func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypeOutput() NetworkInterfaceNicTypeOutput { + return o +} + +func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypeOutputWithContext(ctx context.Context) NetworkInterfaceNicTypeOutput { + return o +} + +func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { + return o.ToNetworkInterfaceNicTypePtrOutputWithContext(context.Background()) +} + +func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkInterfaceNicType) *NetworkInterfaceNicType { + return &v + }).(NetworkInterfaceNicTypePtrOutput) +} + +func (o NetworkInterfaceNicTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o NetworkInterfaceNicTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkInterfaceNicType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o NetworkInterfaceNicTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o NetworkInterfaceNicTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkInterfaceNicType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type NetworkInterfaceNicTypePtrOutput struct{ *pulumi.OutputState } + +func (NetworkInterfaceNicTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkInterfaceNicType)(nil)).Elem() +} + +func (o NetworkInterfaceNicTypePtrOutput) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { + return o +} + +func (o NetworkInterfaceNicTypePtrOutput) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { + return o +} + +func (o NetworkInterfaceNicTypePtrOutput) Elem() NetworkInterfaceNicTypeOutput { + return o.ApplyT(func(v *NetworkInterfaceNicType) NetworkInterfaceNicType { + if v != nil { + return *v + } + var ret NetworkInterfaceNicType + return ret + }).(NetworkInterfaceNicTypeOutput) +} + +func (o NetworkInterfaceNicTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o NetworkInterfaceNicTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *NetworkInterfaceNicType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// NetworkInterfaceNicTypeInput is an input type that accepts values of the NetworkInterfaceNicType enum +// A concrete instance of `NetworkInterfaceNicTypeInput` can be one of the following: +// +// NetworkInterfaceNicTypeStandard +// NetworkInterfaceNicTypeElastic +type NetworkInterfaceNicTypeInput interface { + pulumi.Input + + ToNetworkInterfaceNicTypeOutput() NetworkInterfaceNicTypeOutput + ToNetworkInterfaceNicTypeOutputWithContext(context.Context) NetworkInterfaceNicTypeOutput +} + +var networkInterfaceNicTypePtrType = reflect.TypeOf((**NetworkInterfaceNicType)(nil)).Elem() + +type NetworkInterfaceNicTypePtrInput interface { + pulumi.Input + + ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput + ToNetworkInterfaceNicTypePtrOutputWithContext(context.Context) NetworkInterfaceNicTypePtrOutput +} + +type networkInterfaceNicTypePtr string + +func NetworkInterfaceNicTypePtr(v string) NetworkInterfaceNicTypePtrInput { + return (*networkInterfaceNicTypePtr)(&v) +} + +func (*networkInterfaceNicTypePtr) ElementType() reflect.Type { + return networkInterfaceNicTypePtrType +} + +func (in *networkInterfaceNicTypePtr) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { + return pulumi.ToOutput(in).(NetworkInterfaceNicTypePtrOutput) +} + +func (in *networkInterfaceNicTypePtr) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(NetworkInterfaceNicTypePtrOutput) +} + +// Network protocol this resource applies to. +type NetworkProtocol string + +const ( + NetworkProtocolAny = NetworkProtocol("Any") + NetworkProtocolTCP = NetworkProtocol("TCP") + NetworkProtocolUDP = NetworkProtocol("UDP") + NetworkProtocolICMP = NetworkProtocol("ICMP") +) + +func (NetworkProtocol) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkProtocol)(nil)).Elem() +} + +func (e NetworkProtocol) ToNetworkProtocolOutput() NetworkProtocolOutput { + return pulumi.ToOutput(e).(NetworkProtocolOutput) +} + +func (e NetworkProtocol) ToNetworkProtocolOutputWithContext(ctx context.Context) NetworkProtocolOutput { + return pulumi.ToOutputWithContext(ctx, e).(NetworkProtocolOutput) +} + +func (e NetworkProtocol) ToNetworkProtocolPtrOutput() NetworkProtocolPtrOutput { + return e.ToNetworkProtocolPtrOutputWithContext(context.Background()) } -func (e NetworkInterfaceNicType) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { - return NetworkInterfaceNicType(e).ToNetworkInterfaceNicTypeOutputWithContext(ctx).ToNetworkInterfaceNicTypePtrOutputWithContext(ctx) +func (e NetworkProtocol) ToNetworkProtocolPtrOutputWithContext(ctx context.Context) NetworkProtocolPtrOutput { + return NetworkProtocol(e).ToNetworkProtocolOutputWithContext(ctx).ToNetworkProtocolPtrOutputWithContext(ctx) } -func (e NetworkInterfaceNicType) ToStringOutput() pulumi.StringOutput { +func (e NetworkProtocol) ToStringOutput() pulumi.StringOutput { return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) } -func (e NetworkInterfaceNicType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { +func (e NetworkProtocol) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) } -func (e NetworkInterfaceNicType) ToStringPtrOutput() pulumi.StringPtrOutput { +func (e NetworkProtocol) ToStringPtrOutput() pulumi.StringPtrOutput { return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) } -func (e NetworkInterfaceNicType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { +func (e NetworkProtocol) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) } -type NetworkInterfaceNicTypeOutput struct{ *pulumi.OutputState } +type NetworkProtocolOutput struct{ *pulumi.OutputState } -func (NetworkInterfaceNicTypeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*NetworkInterfaceNicType)(nil)).Elem() +func (NetworkProtocolOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkProtocol)(nil)).Elem() } -func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypeOutput() NetworkInterfaceNicTypeOutput { +func (o NetworkProtocolOutput) ToNetworkProtocolOutput() NetworkProtocolOutput { return o } -func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypeOutputWithContext(ctx context.Context) NetworkInterfaceNicTypeOutput { +func (o NetworkProtocolOutput) ToNetworkProtocolOutputWithContext(ctx context.Context) NetworkProtocolOutput { return o } -func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { - return o.ToNetworkInterfaceNicTypePtrOutputWithContext(context.Background()) +func (o NetworkProtocolOutput) ToNetworkProtocolPtrOutput() NetworkProtocolPtrOutput { + return o.ToNetworkProtocolPtrOutputWithContext(context.Background()) } -func (o NetworkInterfaceNicTypeOutput) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkInterfaceNicType) *NetworkInterfaceNicType { +func (o NetworkProtocolOutput) ToNetworkProtocolPtrOutputWithContext(ctx context.Context) NetworkProtocolPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkProtocol) *NetworkProtocol { return &v - }).(NetworkInterfaceNicTypePtrOutput) + }).(NetworkProtocolPtrOutput) } -func (o NetworkInterfaceNicTypeOutput) ToStringOutput() pulumi.StringOutput { +func (o NetworkProtocolOutput) ToStringOutput() pulumi.StringOutput { return o.ToStringOutputWithContext(context.Background()) } -func (o NetworkInterfaceNicTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkInterfaceNicType) string { +func (o NetworkProtocolOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkProtocol) string { return string(e) }).(pulumi.StringOutput) } -func (o NetworkInterfaceNicTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o NetworkProtocolOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o NetworkInterfaceNicTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkInterfaceNicType) *string { +func (o NetworkProtocolOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e NetworkProtocol) *string { v := string(e) return &v }).(pulumi.StringPtrOutput) } -type NetworkInterfaceNicTypePtrOutput struct{ *pulumi.OutputState } +type NetworkProtocolPtrOutput struct{ *pulumi.OutputState } -func (NetworkInterfaceNicTypePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**NetworkInterfaceNicType)(nil)).Elem() +func (NetworkProtocolPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkProtocol)(nil)).Elem() } -func (o NetworkInterfaceNicTypePtrOutput) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { +func (o NetworkProtocolPtrOutput) ToNetworkProtocolPtrOutput() NetworkProtocolPtrOutput { return o } -func (o NetworkInterfaceNicTypePtrOutput) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { +func (o NetworkProtocolPtrOutput) ToNetworkProtocolPtrOutputWithContext(ctx context.Context) NetworkProtocolPtrOutput { return o } -func (o NetworkInterfaceNicTypePtrOutput) Elem() NetworkInterfaceNicTypeOutput { - return o.ApplyT(func(v *NetworkInterfaceNicType) NetworkInterfaceNicType { +func (o NetworkProtocolPtrOutput) Elem() NetworkProtocolOutput { + return o.ApplyT(func(v *NetworkProtocol) NetworkProtocol { if v != nil { return *v } - var ret NetworkInterfaceNicType + var ret NetworkProtocol return ret - }).(NetworkInterfaceNicTypeOutput) + }).(NetworkProtocolOutput) } -func (o NetworkInterfaceNicTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { +func (o NetworkProtocolPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { return o.ToStringPtrOutputWithContext(context.Background()) } -func (o NetworkInterfaceNicTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *NetworkInterfaceNicType) *string { +func (o NetworkProtocolPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *NetworkProtocol) *string { if e == nil { return nil } @@ -20752,43 +21416,45 @@ func (o NetworkInterfaceNicTypePtrOutput) ToStringPtrOutputWithContext(ctx conte }).(pulumi.StringPtrOutput) } -// NetworkInterfaceNicTypeInput is an input type that accepts values of the NetworkInterfaceNicType enum -// A concrete instance of `NetworkInterfaceNicTypeInput` can be one of the following: +// NetworkProtocolInput is an input type that accepts values of the NetworkProtocol enum +// A concrete instance of `NetworkProtocolInput` can be one of the following: // -// NetworkInterfaceNicTypeStandard -// NetworkInterfaceNicTypeElastic -type NetworkInterfaceNicTypeInput interface { +// NetworkProtocolAny +// NetworkProtocolTCP +// NetworkProtocolUDP +// NetworkProtocolICMP +type NetworkProtocolInput interface { pulumi.Input - ToNetworkInterfaceNicTypeOutput() NetworkInterfaceNicTypeOutput - ToNetworkInterfaceNicTypeOutputWithContext(context.Context) NetworkInterfaceNicTypeOutput + ToNetworkProtocolOutput() NetworkProtocolOutput + ToNetworkProtocolOutputWithContext(context.Context) NetworkProtocolOutput } -var networkInterfaceNicTypePtrType = reflect.TypeOf((**NetworkInterfaceNicType)(nil)).Elem() +var networkProtocolPtrType = reflect.TypeOf((**NetworkProtocol)(nil)).Elem() -type NetworkInterfaceNicTypePtrInput interface { +type NetworkProtocolPtrInput interface { pulumi.Input - ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput - ToNetworkInterfaceNicTypePtrOutputWithContext(context.Context) NetworkInterfaceNicTypePtrOutput + ToNetworkProtocolPtrOutput() NetworkProtocolPtrOutput + ToNetworkProtocolPtrOutputWithContext(context.Context) NetworkProtocolPtrOutput } -type networkInterfaceNicTypePtr string +type networkProtocolPtr string -func NetworkInterfaceNicTypePtr(v string) NetworkInterfaceNicTypePtrInput { - return (*networkInterfaceNicTypePtr)(&v) +func NetworkProtocolPtr(v string) NetworkProtocolPtrInput { + return (*networkProtocolPtr)(&v) } -func (*networkInterfaceNicTypePtr) ElementType() reflect.Type { - return networkInterfaceNicTypePtrType +func (*networkProtocolPtr) ElementType() reflect.Type { + return networkProtocolPtrType } -func (in *networkInterfaceNicTypePtr) ToNetworkInterfaceNicTypePtrOutput() NetworkInterfaceNicTypePtrOutput { - return pulumi.ToOutput(in).(NetworkInterfaceNicTypePtrOutput) +func (in *networkProtocolPtr) ToNetworkProtocolPtrOutput() NetworkProtocolPtrOutput { + return pulumi.ToOutput(in).(NetworkProtocolPtrOutput) } -func (in *networkInterfaceNicTypePtr) ToNetworkInterfaceNicTypePtrOutputWithContext(ctx context.Context) NetworkInterfaceNicTypePtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(NetworkInterfaceNicTypePtrOutput) +func (in *networkProtocolPtr) ToNetworkProtocolPtrOutputWithContext(ctx context.Context) NetworkProtocolPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(NetworkProtocolPtrOutput) } // Next step after rule is evaluated. Current supported behaviors are 'Continue'(to next rule) and 'Terminate'. @@ -25547,6 +26213,172 @@ func (in *routeNextHopTypePtr) ToRouteNextHopTypePtrOutputWithContext(ctx contex return pulumi.ToOutputWithContext(ctx, in).(RouteNextHopTypePtrOutput) } +// Destination type. +type RoutingRuleDestinationType string + +const ( + RoutingRuleDestinationTypeAddressPrefix = RoutingRuleDestinationType("AddressPrefix") + RoutingRuleDestinationTypeServiceTag = RoutingRuleDestinationType("ServiceTag") +) + +func (RoutingRuleDestinationType) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleDestinationType)(nil)).Elem() +} + +func (e RoutingRuleDestinationType) ToRoutingRuleDestinationTypeOutput() RoutingRuleDestinationTypeOutput { + return pulumi.ToOutput(e).(RoutingRuleDestinationTypeOutput) +} + +func (e RoutingRuleDestinationType) ToRoutingRuleDestinationTypeOutputWithContext(ctx context.Context) RoutingRuleDestinationTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(RoutingRuleDestinationTypeOutput) +} + +func (e RoutingRuleDestinationType) ToRoutingRuleDestinationTypePtrOutput() RoutingRuleDestinationTypePtrOutput { + return e.ToRoutingRuleDestinationTypePtrOutputWithContext(context.Background()) +} + +func (e RoutingRuleDestinationType) ToRoutingRuleDestinationTypePtrOutputWithContext(ctx context.Context) RoutingRuleDestinationTypePtrOutput { + return RoutingRuleDestinationType(e).ToRoutingRuleDestinationTypeOutputWithContext(ctx).ToRoutingRuleDestinationTypePtrOutputWithContext(ctx) +} + +func (e RoutingRuleDestinationType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e RoutingRuleDestinationType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e RoutingRuleDestinationType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e RoutingRuleDestinationType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type RoutingRuleDestinationTypeOutput struct{ *pulumi.OutputState } + +func (RoutingRuleDestinationTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleDestinationType)(nil)).Elem() +} + +func (o RoutingRuleDestinationTypeOutput) ToRoutingRuleDestinationTypeOutput() RoutingRuleDestinationTypeOutput { + return o +} + +func (o RoutingRuleDestinationTypeOutput) ToRoutingRuleDestinationTypeOutputWithContext(ctx context.Context) RoutingRuleDestinationTypeOutput { + return o +} + +func (o RoutingRuleDestinationTypeOutput) ToRoutingRuleDestinationTypePtrOutput() RoutingRuleDestinationTypePtrOutput { + return o.ToRoutingRuleDestinationTypePtrOutputWithContext(context.Background()) +} + +func (o RoutingRuleDestinationTypeOutput) ToRoutingRuleDestinationTypePtrOutputWithContext(ctx context.Context) RoutingRuleDestinationTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v RoutingRuleDestinationType) *RoutingRuleDestinationType { + return &v + }).(RoutingRuleDestinationTypePtrOutput) +} + +func (o RoutingRuleDestinationTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o RoutingRuleDestinationTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e RoutingRuleDestinationType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o RoutingRuleDestinationTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o RoutingRuleDestinationTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e RoutingRuleDestinationType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type RoutingRuleDestinationTypePtrOutput struct{ *pulumi.OutputState } + +func (RoutingRuleDestinationTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RoutingRuleDestinationType)(nil)).Elem() +} + +func (o RoutingRuleDestinationTypePtrOutput) ToRoutingRuleDestinationTypePtrOutput() RoutingRuleDestinationTypePtrOutput { + return o +} + +func (o RoutingRuleDestinationTypePtrOutput) ToRoutingRuleDestinationTypePtrOutputWithContext(ctx context.Context) RoutingRuleDestinationTypePtrOutput { + return o +} + +func (o RoutingRuleDestinationTypePtrOutput) Elem() RoutingRuleDestinationTypeOutput { + return o.ApplyT(func(v *RoutingRuleDestinationType) RoutingRuleDestinationType { + if v != nil { + return *v + } + var ret RoutingRuleDestinationType + return ret + }).(RoutingRuleDestinationTypeOutput) +} + +func (o RoutingRuleDestinationTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o RoutingRuleDestinationTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *RoutingRuleDestinationType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// RoutingRuleDestinationTypeInput is an input type that accepts values of the RoutingRuleDestinationType enum +// A concrete instance of `RoutingRuleDestinationTypeInput` can be one of the following: +// +// RoutingRuleDestinationTypeAddressPrefix +// RoutingRuleDestinationTypeServiceTag +type RoutingRuleDestinationTypeInput interface { + pulumi.Input + + ToRoutingRuleDestinationTypeOutput() RoutingRuleDestinationTypeOutput + ToRoutingRuleDestinationTypeOutputWithContext(context.Context) RoutingRuleDestinationTypeOutput +} + +var routingRuleDestinationTypePtrType = reflect.TypeOf((**RoutingRuleDestinationType)(nil)).Elem() + +type RoutingRuleDestinationTypePtrInput interface { + pulumi.Input + + ToRoutingRuleDestinationTypePtrOutput() RoutingRuleDestinationTypePtrOutput + ToRoutingRuleDestinationTypePtrOutputWithContext(context.Context) RoutingRuleDestinationTypePtrOutput +} + +type routingRuleDestinationTypePtr string + +func RoutingRuleDestinationTypePtr(v string) RoutingRuleDestinationTypePtrInput { + return (*routingRuleDestinationTypePtr)(&v) +} + +func (*routingRuleDestinationTypePtr) ElementType() reflect.Type { + return routingRuleDestinationTypePtrType +} + +func (in *routingRuleDestinationTypePtr) ToRoutingRuleDestinationTypePtrOutput() RoutingRuleDestinationTypePtrOutput { + return pulumi.ToOutput(in).(RoutingRuleDestinationTypePtrOutput) +} + +func (in *routingRuleDestinationTypePtr) ToRoutingRuleDestinationTypePtrOutputWithContext(ctx context.Context) RoutingRuleDestinationTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(RoutingRuleDestinationTypePtrOutput) +} + // Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' type RoutingRuleEnabledState string @@ -25713,6 +26545,178 @@ func (in *routingRuleEnabledStatePtr) ToRoutingRuleEnabledStatePtrOutputWithCont return pulumi.ToOutputWithContext(ctx, in).(RoutingRuleEnabledStatePtrOutput) } +// Next hop type. +type RoutingRuleNextHopType string + +const ( + RoutingRuleNextHopTypeInternet = RoutingRuleNextHopType("Internet") + RoutingRuleNextHopTypeNoNextHop = RoutingRuleNextHopType("NoNextHop") + RoutingRuleNextHopTypeVirtualAppliance = RoutingRuleNextHopType("VirtualAppliance") + RoutingRuleNextHopTypeVirtualNetworkGateway = RoutingRuleNextHopType("VirtualNetworkGateway") + RoutingRuleNextHopTypeVnetLocal = RoutingRuleNextHopType("VnetLocal") +) + +func (RoutingRuleNextHopType) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleNextHopType)(nil)).Elem() +} + +func (e RoutingRuleNextHopType) ToRoutingRuleNextHopTypeOutput() RoutingRuleNextHopTypeOutput { + return pulumi.ToOutput(e).(RoutingRuleNextHopTypeOutput) +} + +func (e RoutingRuleNextHopType) ToRoutingRuleNextHopTypeOutputWithContext(ctx context.Context) RoutingRuleNextHopTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(RoutingRuleNextHopTypeOutput) +} + +func (e RoutingRuleNextHopType) ToRoutingRuleNextHopTypePtrOutput() RoutingRuleNextHopTypePtrOutput { + return e.ToRoutingRuleNextHopTypePtrOutputWithContext(context.Background()) +} + +func (e RoutingRuleNextHopType) ToRoutingRuleNextHopTypePtrOutputWithContext(ctx context.Context) RoutingRuleNextHopTypePtrOutput { + return RoutingRuleNextHopType(e).ToRoutingRuleNextHopTypeOutputWithContext(ctx).ToRoutingRuleNextHopTypePtrOutputWithContext(ctx) +} + +func (e RoutingRuleNextHopType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e RoutingRuleNextHopType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e RoutingRuleNextHopType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e RoutingRuleNextHopType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type RoutingRuleNextHopTypeOutput struct{ *pulumi.OutputState } + +func (RoutingRuleNextHopTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleNextHopType)(nil)).Elem() +} + +func (o RoutingRuleNextHopTypeOutput) ToRoutingRuleNextHopTypeOutput() RoutingRuleNextHopTypeOutput { + return o +} + +func (o RoutingRuleNextHopTypeOutput) ToRoutingRuleNextHopTypeOutputWithContext(ctx context.Context) RoutingRuleNextHopTypeOutput { + return o +} + +func (o RoutingRuleNextHopTypeOutput) ToRoutingRuleNextHopTypePtrOutput() RoutingRuleNextHopTypePtrOutput { + return o.ToRoutingRuleNextHopTypePtrOutputWithContext(context.Background()) +} + +func (o RoutingRuleNextHopTypeOutput) ToRoutingRuleNextHopTypePtrOutputWithContext(ctx context.Context) RoutingRuleNextHopTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v RoutingRuleNextHopType) *RoutingRuleNextHopType { + return &v + }).(RoutingRuleNextHopTypePtrOutput) +} + +func (o RoutingRuleNextHopTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o RoutingRuleNextHopTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e RoutingRuleNextHopType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o RoutingRuleNextHopTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o RoutingRuleNextHopTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e RoutingRuleNextHopType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type RoutingRuleNextHopTypePtrOutput struct{ *pulumi.OutputState } + +func (RoutingRuleNextHopTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RoutingRuleNextHopType)(nil)).Elem() +} + +func (o RoutingRuleNextHopTypePtrOutput) ToRoutingRuleNextHopTypePtrOutput() RoutingRuleNextHopTypePtrOutput { + return o +} + +func (o RoutingRuleNextHopTypePtrOutput) ToRoutingRuleNextHopTypePtrOutputWithContext(ctx context.Context) RoutingRuleNextHopTypePtrOutput { + return o +} + +func (o RoutingRuleNextHopTypePtrOutput) Elem() RoutingRuleNextHopTypeOutput { + return o.ApplyT(func(v *RoutingRuleNextHopType) RoutingRuleNextHopType { + if v != nil { + return *v + } + var ret RoutingRuleNextHopType + return ret + }).(RoutingRuleNextHopTypeOutput) +} + +func (o RoutingRuleNextHopTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o RoutingRuleNextHopTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *RoutingRuleNextHopType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// RoutingRuleNextHopTypeInput is an input type that accepts values of the RoutingRuleNextHopType enum +// A concrete instance of `RoutingRuleNextHopTypeInput` can be one of the following: +// +// RoutingRuleNextHopTypeInternet +// RoutingRuleNextHopTypeNoNextHop +// RoutingRuleNextHopTypeVirtualAppliance +// RoutingRuleNextHopTypeVirtualNetworkGateway +// RoutingRuleNextHopTypeVnetLocal +type RoutingRuleNextHopTypeInput interface { + pulumi.Input + + ToRoutingRuleNextHopTypeOutput() RoutingRuleNextHopTypeOutput + ToRoutingRuleNextHopTypeOutputWithContext(context.Context) RoutingRuleNextHopTypeOutput +} + +var routingRuleNextHopTypePtrType = reflect.TypeOf((**RoutingRuleNextHopType)(nil)).Elem() + +type RoutingRuleNextHopTypePtrInput interface { + pulumi.Input + + ToRoutingRuleNextHopTypePtrOutput() RoutingRuleNextHopTypePtrOutput + ToRoutingRuleNextHopTypePtrOutputWithContext(context.Context) RoutingRuleNextHopTypePtrOutput +} + +type routingRuleNextHopTypePtr string + +func RoutingRuleNextHopTypePtr(v string) RoutingRuleNextHopTypePtrInput { + return (*routingRuleNextHopTypePtr)(&v) +} + +func (*routingRuleNextHopTypePtr) ElementType() reflect.Type { + return routingRuleNextHopTypePtrType +} + +func (in *routingRuleNextHopTypePtr) ToRoutingRuleNextHopTypePtrOutput() RoutingRuleNextHopTypePtrOutput { + return pulumi.ToOutput(in).(RoutingRuleNextHopTypePtrOutput) +} + +func (in *routingRuleNextHopTypePtr) ToRoutingRuleNextHopTypePtrOutputWithContext(ctx context.Context) RoutingRuleNextHopTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(RoutingRuleNextHopTypePtrOutput) +} + // Describes type of rule. type RuleType string @@ -34984,6 +35988,8 @@ func init() { pulumi.RegisterOutputType(BackendEnabledStatePtrOutput{}) pulumi.RegisterOutputType(BastionHostSkuNameOutput{}) pulumi.RegisterOutputType(BastionHostSkuNamePtrOutput{}) + pulumi.RegisterOutputType(BlockResponseCodeOutput{}) + pulumi.RegisterOutputType(BlockResponseCodePtrOutput{}) pulumi.RegisterOutputType(CommissionedStateOutput{}) pulumi.RegisterOutputType(CommissionedStatePtrOutput{}) pulumi.RegisterOutputType(ConfigurationTypeOutput{}) @@ -35014,6 +36020,10 @@ func init() { pulumi.RegisterOutputType(DestinationPortBehaviorPtrOutput{}) pulumi.RegisterOutputType(DhGroupOutput{}) pulumi.RegisterOutputType(DhGroupPtrOutput{}) + pulumi.RegisterOutputType(DisableBgpRoutePropagationOutput{}) + pulumi.RegisterOutputType(DisableBgpRoutePropagationPtrOutput{}) + pulumi.RegisterOutputType(DnsSecurityRuleStateEnumOutput{}) + pulumi.RegisterOutputType(DnsSecurityRuleStateEnumPtrOutput{}) pulumi.RegisterOutputType(DynamicCompressionEnabledOutput{}) pulumi.RegisterOutputType(DynamicCompressionEnabledPtrOutput{}) pulumi.RegisterOutputType(EndpointMonitorStatusOutput{}) @@ -35160,6 +36170,8 @@ func init() { pulumi.RegisterOutputType(NetworkInterfaceMigrationPhasePtrOutput{}) pulumi.RegisterOutputType(NetworkInterfaceNicTypeOutput{}) pulumi.RegisterOutputType(NetworkInterfaceNicTypePtrOutput{}) + pulumi.RegisterOutputType(NetworkProtocolOutput{}) + pulumi.RegisterOutputType(NetworkProtocolPtrOutput{}) pulumi.RegisterOutputType(NextStepOutput{}) pulumi.RegisterOutputType(NextStepPtrOutput{}) pulumi.RegisterOutputType(OperatorOutput{}) @@ -35216,8 +36228,12 @@ func init() { pulumi.RegisterOutputType(RouteMapMatchConditionPtrOutput{}) pulumi.RegisterOutputType(RouteNextHopTypeOutput{}) pulumi.RegisterOutputType(RouteNextHopTypePtrOutput{}) + pulumi.RegisterOutputType(RoutingRuleDestinationTypeOutput{}) + pulumi.RegisterOutputType(RoutingRuleDestinationTypePtrOutput{}) pulumi.RegisterOutputType(RoutingRuleEnabledStateOutput{}) pulumi.RegisterOutputType(RoutingRuleEnabledStatePtrOutput{}) + pulumi.RegisterOutputType(RoutingRuleNextHopTypeOutput{}) + pulumi.RegisterOutputType(RoutingRuleNextHopTypePtrOutput{}) pulumi.RegisterOutputType(RuleTypeOutput{}) pulumi.RegisterOutputType(RuleTypePtrOutput{}) pulumi.RegisterOutputType(RulesEngineMatchVariableOutput{}) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes.go index c80398871..b244a3464 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes.go @@ -26723,6 +26723,103 @@ func (o DnsResourceReferenceResponseArrayOutput) Index(i pulumi.IntInput) DnsRes }).(DnsResourceReferenceResponseOutput) } +// The action to take on DNS requests that match the DNS security rule. +type DnsSecurityRuleAction struct { + // The type of action to take. + ActionType *string `pulumi:"actionType"` + // The response code for block actions. + BlockResponseCode *string `pulumi:"blockResponseCode"` +} + +// DnsSecurityRuleActionInput is an input type that accepts DnsSecurityRuleActionArgs and DnsSecurityRuleActionOutput values. +// You can construct a concrete instance of `DnsSecurityRuleActionInput` via: +// +// DnsSecurityRuleActionArgs{...} +type DnsSecurityRuleActionInput interface { + pulumi.Input + + ToDnsSecurityRuleActionOutput() DnsSecurityRuleActionOutput + ToDnsSecurityRuleActionOutputWithContext(context.Context) DnsSecurityRuleActionOutput +} + +// The action to take on DNS requests that match the DNS security rule. +type DnsSecurityRuleActionArgs struct { + // The type of action to take. + ActionType pulumi.StringPtrInput `pulumi:"actionType"` + // The response code for block actions. + BlockResponseCode pulumi.StringPtrInput `pulumi:"blockResponseCode"` +} + +func (DnsSecurityRuleActionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DnsSecurityRuleAction)(nil)).Elem() +} + +func (i DnsSecurityRuleActionArgs) ToDnsSecurityRuleActionOutput() DnsSecurityRuleActionOutput { + return i.ToDnsSecurityRuleActionOutputWithContext(context.Background()) +} + +func (i DnsSecurityRuleActionArgs) ToDnsSecurityRuleActionOutputWithContext(ctx context.Context) DnsSecurityRuleActionOutput { + return pulumi.ToOutputWithContext(ctx, i).(DnsSecurityRuleActionOutput) +} + +// The action to take on DNS requests that match the DNS security rule. +type DnsSecurityRuleActionOutput struct{ *pulumi.OutputState } + +func (DnsSecurityRuleActionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DnsSecurityRuleAction)(nil)).Elem() +} + +func (o DnsSecurityRuleActionOutput) ToDnsSecurityRuleActionOutput() DnsSecurityRuleActionOutput { + return o +} + +func (o DnsSecurityRuleActionOutput) ToDnsSecurityRuleActionOutputWithContext(ctx context.Context) DnsSecurityRuleActionOutput { + return o +} + +// The type of action to take. +func (o DnsSecurityRuleActionOutput) ActionType() pulumi.StringPtrOutput { + return o.ApplyT(func(v DnsSecurityRuleAction) *string { return v.ActionType }).(pulumi.StringPtrOutput) +} + +// The response code for block actions. +func (o DnsSecurityRuleActionOutput) BlockResponseCode() pulumi.StringPtrOutput { + return o.ApplyT(func(v DnsSecurityRuleAction) *string { return v.BlockResponseCode }).(pulumi.StringPtrOutput) +} + +// The action to take on DNS requests that match the DNS security rule. +type DnsSecurityRuleActionResponse struct { + // The type of action to take. + ActionType *string `pulumi:"actionType"` + // The response code for block actions. + BlockResponseCode *string `pulumi:"blockResponseCode"` +} + +// The action to take on DNS requests that match the DNS security rule. +type DnsSecurityRuleActionResponseOutput struct{ *pulumi.OutputState } + +func (DnsSecurityRuleActionResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DnsSecurityRuleActionResponse)(nil)).Elem() +} + +func (o DnsSecurityRuleActionResponseOutput) ToDnsSecurityRuleActionResponseOutput() DnsSecurityRuleActionResponseOutput { + return o +} + +func (o DnsSecurityRuleActionResponseOutput) ToDnsSecurityRuleActionResponseOutputWithContext(ctx context.Context) DnsSecurityRuleActionResponseOutput { + return o +} + +// The type of action to take. +func (o DnsSecurityRuleActionResponseOutput) ActionType() pulumi.StringPtrOutput { + return o.ApplyT(func(v DnsSecurityRuleActionResponse) *string { return v.ActionType }).(pulumi.StringPtrOutput) +} + +// The response code for block actions. +func (o DnsSecurityRuleActionResponseOutput) BlockResponseCode() pulumi.StringPtrOutput { + return o.ApplyT(func(v DnsSecurityRuleActionResponse) *string { return v.BlockResponseCode }).(pulumi.StringPtrOutput) +} + // DNS Proxy Settings in Firewall Policy. type DnsSettings struct { // Enable DNS Proxy on Firewalls attached to the Firewall Policy. @@ -44493,6 +44590,146 @@ func (o IPConfigurationResponseArrayOutput) Index(i pulumi.IntInput) IPConfigura }).(IPConfigurationResponseOutput) } +// IP traffic information. +type IPTraffic struct { + // List of destination IP addresses of the traffic.. + DestinationIps []string `pulumi:"destinationIps"` + // The destination ports of the traffic. + DestinationPorts []string `pulumi:"destinationPorts"` + Protocols []string `pulumi:"protocols"` + // List of source IP addresses of the traffic.. + SourceIps []string `pulumi:"sourceIps"` + // The source ports of the traffic. + SourcePorts []string `pulumi:"sourcePorts"` +} + +// IPTrafficInput is an input type that accepts IPTrafficArgs and IPTrafficOutput values. +// You can construct a concrete instance of `IPTrafficInput` via: +// +// IPTrafficArgs{...} +type IPTrafficInput interface { + pulumi.Input + + ToIPTrafficOutput() IPTrafficOutput + ToIPTrafficOutputWithContext(context.Context) IPTrafficOutput +} + +// IP traffic information. +type IPTrafficArgs struct { + // List of destination IP addresses of the traffic.. + DestinationIps pulumi.StringArrayInput `pulumi:"destinationIps"` + // The destination ports of the traffic. + DestinationPorts pulumi.StringArrayInput `pulumi:"destinationPorts"` + Protocols pulumi.StringArrayInput `pulumi:"protocols"` + // List of source IP addresses of the traffic.. + SourceIps pulumi.StringArrayInput `pulumi:"sourceIps"` + // The source ports of the traffic. + SourcePorts pulumi.StringArrayInput `pulumi:"sourcePorts"` +} + +func (IPTrafficArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IPTraffic)(nil)).Elem() +} + +func (i IPTrafficArgs) ToIPTrafficOutput() IPTrafficOutput { + return i.ToIPTrafficOutputWithContext(context.Background()) +} + +func (i IPTrafficArgs) ToIPTrafficOutputWithContext(ctx context.Context) IPTrafficOutput { + return pulumi.ToOutputWithContext(ctx, i).(IPTrafficOutput) +} + +// IP traffic information. +type IPTrafficOutput struct{ *pulumi.OutputState } + +func (IPTrafficOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IPTraffic)(nil)).Elem() +} + +func (o IPTrafficOutput) ToIPTrafficOutput() IPTrafficOutput { + return o +} + +func (o IPTrafficOutput) ToIPTrafficOutputWithContext(ctx context.Context) IPTrafficOutput { + return o +} + +// List of destination IP addresses of the traffic.. +func (o IPTrafficOutput) DestinationIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTraffic) []string { return v.DestinationIps }).(pulumi.StringArrayOutput) +} + +// The destination ports of the traffic. +func (o IPTrafficOutput) DestinationPorts() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTraffic) []string { return v.DestinationPorts }).(pulumi.StringArrayOutput) +} + +func (o IPTrafficOutput) Protocols() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTraffic) []string { return v.Protocols }).(pulumi.StringArrayOutput) +} + +// List of source IP addresses of the traffic.. +func (o IPTrafficOutput) SourceIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTraffic) []string { return v.SourceIps }).(pulumi.StringArrayOutput) +} + +// The source ports of the traffic. +func (o IPTrafficOutput) SourcePorts() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTraffic) []string { return v.SourcePorts }).(pulumi.StringArrayOutput) +} + +// IP traffic information. +type IPTrafficResponse struct { + // List of destination IP addresses of the traffic.. + DestinationIps []string `pulumi:"destinationIps"` + // The destination ports of the traffic. + DestinationPorts []string `pulumi:"destinationPorts"` + Protocols []string `pulumi:"protocols"` + // List of source IP addresses of the traffic.. + SourceIps []string `pulumi:"sourceIps"` + // The source ports of the traffic. + SourcePorts []string `pulumi:"sourcePorts"` +} + +// IP traffic information. +type IPTrafficResponseOutput struct{ *pulumi.OutputState } + +func (IPTrafficResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IPTrafficResponse)(nil)).Elem() +} + +func (o IPTrafficResponseOutput) ToIPTrafficResponseOutput() IPTrafficResponseOutput { + return o +} + +func (o IPTrafficResponseOutput) ToIPTrafficResponseOutputWithContext(ctx context.Context) IPTrafficResponseOutput { + return o +} + +// List of destination IP addresses of the traffic.. +func (o IPTrafficResponseOutput) DestinationIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTrafficResponse) []string { return v.DestinationIps }).(pulumi.StringArrayOutput) +} + +// The destination ports of the traffic. +func (o IPTrafficResponseOutput) DestinationPorts() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTrafficResponse) []string { return v.DestinationPorts }).(pulumi.StringArrayOutput) +} + +func (o IPTrafficResponseOutput) Protocols() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTrafficResponse) []string { return v.Protocols }).(pulumi.StringArrayOutput) +} + +// List of source IP addresses of the traffic.. +func (o IPTrafficResponseOutput) SourceIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTrafficResponse) []string { return v.SourceIps }).(pulumi.StringArrayOutput) +} + +// The source ports of the traffic. +func (o IPTrafficResponseOutput) SourcePorts() pulumi.StringArrayOutput { + return o.ApplyT(func(v IPTrafficResponse) []string { return v.SourcePorts }).(pulumi.StringArrayOutput) +} + // IP configuration. type InboundEndpointIPConfiguration struct { // Private IP address of the IP configuration. @@ -45382,6 +45619,51 @@ func (o InboundNatRuleResponseArrayOutput) Index(i pulumi.IntInput) InboundNatRu }).(InboundNatRuleResponseOutput) } +// Intent information. +type IntentContentResponse struct { + Description *string `pulumi:"description"` + // Destination resource id of the intent. + DestinationResourceId string `pulumi:"destinationResourceId"` + // IP traffic information. + IpTraffic IPTrafficResponse `pulumi:"ipTraffic"` + // Source resource id of the intent. + SourceResourceId string `pulumi:"sourceResourceId"` +} + +// Intent information. +type IntentContentResponseOutput struct{ *pulumi.OutputState } + +func (IntentContentResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IntentContentResponse)(nil)).Elem() +} + +func (o IntentContentResponseOutput) ToIntentContentResponseOutput() IntentContentResponseOutput { + return o +} + +func (o IntentContentResponseOutput) ToIntentContentResponseOutputWithContext(ctx context.Context) IntentContentResponseOutput { + return o +} + +func (o IntentContentResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v IntentContentResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Destination resource id of the intent. +func (o IntentContentResponseOutput) DestinationResourceId() pulumi.StringOutput { + return o.ApplyT(func(v IntentContentResponse) string { return v.DestinationResourceId }).(pulumi.StringOutput) +} + +// IP traffic information. +func (o IntentContentResponseOutput) IpTraffic() IPTrafficResponseOutput { + return o.ApplyT(func(v IntentContentResponse) IPTrafficResponse { return v.IpTraffic }).(IPTrafficResponseOutput) +} + +// Source resource id of the intent. +func (o IntentContentResponseOutput) SourceResourceId() pulumi.StringOutput { + return o.ApplyT(func(v IntentContentResponse) string { return v.SourceResourceId }).(pulumi.StringOutput) +} + // Interface endpoint resource. type InterfaceEndpointResponse struct { // A reference to the service being brought into the virtual network. @@ -45822,6 +46104,258 @@ func (o IpTagResponseArrayOutput) Index(i pulumi.IntInput) IpTagResponseOutput { }).(IpTagResponseOutput) } +// Properties of IpamPool resource properties which are specific to the Pool resource. +type IpamPoolProperties struct { + // List of IP address prefixes of the resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + Description *string `pulumi:"description"` + // String representing a friendly name for the resource. + DisplayName *string `pulumi:"displayName"` + // String representing parent IpamPool resource name. If empty the IpamPool will be a root pool. + ParentPoolName *string `pulumi:"parentPoolName"` +} + +// IpamPoolPropertiesInput is an input type that accepts IpamPoolPropertiesArgs and IpamPoolPropertiesOutput values. +// You can construct a concrete instance of `IpamPoolPropertiesInput` via: +// +// IpamPoolPropertiesArgs{...} +type IpamPoolPropertiesInput interface { + pulumi.Input + + ToIpamPoolPropertiesOutput() IpamPoolPropertiesOutput + ToIpamPoolPropertiesOutputWithContext(context.Context) IpamPoolPropertiesOutput +} + +// Properties of IpamPool resource properties which are specific to the Pool resource. +type IpamPoolPropertiesArgs struct { + // List of IP address prefixes of the resource. + AddressPrefixes pulumi.StringArrayInput `pulumi:"addressPrefixes"` + Description pulumi.StringPtrInput `pulumi:"description"` + // String representing a friendly name for the resource. + DisplayName pulumi.StringPtrInput `pulumi:"displayName"` + // String representing parent IpamPool resource name. If empty the IpamPool will be a root pool. + ParentPoolName pulumi.StringPtrInput `pulumi:"parentPoolName"` +} + +func (IpamPoolPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*IpamPoolProperties)(nil)).Elem() +} + +func (i IpamPoolPropertiesArgs) ToIpamPoolPropertiesOutput() IpamPoolPropertiesOutput { + return i.ToIpamPoolPropertiesOutputWithContext(context.Background()) +} + +func (i IpamPoolPropertiesArgs) ToIpamPoolPropertiesOutputWithContext(ctx context.Context) IpamPoolPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(IpamPoolPropertiesOutput) +} + +func (i IpamPoolPropertiesArgs) ToIpamPoolPropertiesPtrOutput() IpamPoolPropertiesPtrOutput { + return i.ToIpamPoolPropertiesPtrOutputWithContext(context.Background()) +} + +func (i IpamPoolPropertiesArgs) ToIpamPoolPropertiesPtrOutputWithContext(ctx context.Context) IpamPoolPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IpamPoolPropertiesOutput).ToIpamPoolPropertiesPtrOutputWithContext(ctx) +} + +// IpamPoolPropertiesPtrInput is an input type that accepts IpamPoolPropertiesArgs, IpamPoolPropertiesPtr and IpamPoolPropertiesPtrOutput values. +// You can construct a concrete instance of `IpamPoolPropertiesPtrInput` via: +// +// IpamPoolPropertiesArgs{...} +// +// or: +// +// nil +type IpamPoolPropertiesPtrInput interface { + pulumi.Input + + ToIpamPoolPropertiesPtrOutput() IpamPoolPropertiesPtrOutput + ToIpamPoolPropertiesPtrOutputWithContext(context.Context) IpamPoolPropertiesPtrOutput +} + +type ipamPoolPropertiesPtrType IpamPoolPropertiesArgs + +func IpamPoolPropertiesPtr(v *IpamPoolPropertiesArgs) IpamPoolPropertiesPtrInput { + return (*ipamPoolPropertiesPtrType)(v) +} + +func (*ipamPoolPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**IpamPoolProperties)(nil)).Elem() +} + +func (i *ipamPoolPropertiesPtrType) ToIpamPoolPropertiesPtrOutput() IpamPoolPropertiesPtrOutput { + return i.ToIpamPoolPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *ipamPoolPropertiesPtrType) ToIpamPoolPropertiesPtrOutputWithContext(ctx context.Context) IpamPoolPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(IpamPoolPropertiesPtrOutput) +} + +// Properties of IpamPool resource properties which are specific to the Pool resource. +type IpamPoolPropertiesOutput struct{ *pulumi.OutputState } + +func (IpamPoolPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IpamPoolProperties)(nil)).Elem() +} + +func (o IpamPoolPropertiesOutput) ToIpamPoolPropertiesOutput() IpamPoolPropertiesOutput { + return o +} + +func (o IpamPoolPropertiesOutput) ToIpamPoolPropertiesOutputWithContext(ctx context.Context) IpamPoolPropertiesOutput { + return o +} + +func (o IpamPoolPropertiesOutput) ToIpamPoolPropertiesPtrOutput() IpamPoolPropertiesPtrOutput { + return o.ToIpamPoolPropertiesPtrOutputWithContext(context.Background()) +} + +func (o IpamPoolPropertiesOutput) ToIpamPoolPropertiesPtrOutputWithContext(ctx context.Context) IpamPoolPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v IpamPoolProperties) *IpamPoolProperties { + return &v + }).(IpamPoolPropertiesPtrOutput) +} + +// List of IP address prefixes of the resource. +func (o IpamPoolPropertiesOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v IpamPoolProperties) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +func (o IpamPoolPropertiesOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v IpamPoolProperties) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// String representing a friendly name for the resource. +func (o IpamPoolPropertiesOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IpamPoolProperties) *string { return v.DisplayName }).(pulumi.StringPtrOutput) +} + +// String representing parent IpamPool resource name. If empty the IpamPool will be a root pool. +func (o IpamPoolPropertiesOutput) ParentPoolName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IpamPoolProperties) *string { return v.ParentPoolName }).(pulumi.StringPtrOutput) +} + +type IpamPoolPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (IpamPoolPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**IpamPoolProperties)(nil)).Elem() +} + +func (o IpamPoolPropertiesPtrOutput) ToIpamPoolPropertiesPtrOutput() IpamPoolPropertiesPtrOutput { + return o +} + +func (o IpamPoolPropertiesPtrOutput) ToIpamPoolPropertiesPtrOutputWithContext(ctx context.Context) IpamPoolPropertiesPtrOutput { + return o +} + +func (o IpamPoolPropertiesPtrOutput) Elem() IpamPoolPropertiesOutput { + return o.ApplyT(func(v *IpamPoolProperties) IpamPoolProperties { + if v != nil { + return *v + } + var ret IpamPoolProperties + return ret + }).(IpamPoolPropertiesOutput) +} + +// List of IP address prefixes of the resource. +func (o IpamPoolPropertiesPtrOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *IpamPoolProperties) []string { + if v == nil { + return nil + } + return v.AddressPrefixes + }).(pulumi.StringArrayOutput) +} + +func (o IpamPoolPropertiesPtrOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IpamPoolProperties) *string { + if v == nil { + return nil + } + return v.Description + }).(pulumi.StringPtrOutput) +} + +// String representing a friendly name for the resource. +func (o IpamPoolPropertiesPtrOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IpamPoolProperties) *string { + if v == nil { + return nil + } + return v.DisplayName + }).(pulumi.StringPtrOutput) +} + +// String representing parent IpamPool resource name. If empty the IpamPool will be a root pool. +func (o IpamPoolPropertiesPtrOutput) ParentPoolName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *IpamPoolProperties) *string { + if v == nil { + return nil + } + return v.ParentPoolName + }).(pulumi.StringPtrOutput) +} + +// Properties of IpamPool resource properties which are specific to the Pool resource. +type IpamPoolPropertiesResponse struct { + // List of IP address prefixes of the resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + Description *string `pulumi:"description"` + // String representing a friendly name for the resource. + DisplayName *string `pulumi:"displayName"` + // List of IP address type for the IpamPool. + IpAddressType []string `pulumi:"ipAddressType"` + // String representing parent IpamPool resource name. If empty the IpamPool will be a root pool. + ParentPoolName *string `pulumi:"parentPoolName"` + // Provisioning states of a resource. + ProvisioningState string `pulumi:"provisioningState"` +} + +// Properties of IpamPool resource properties which are specific to the Pool resource. +type IpamPoolPropertiesResponseOutput struct{ *pulumi.OutputState } + +func (IpamPoolPropertiesResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*IpamPoolPropertiesResponse)(nil)).Elem() +} + +func (o IpamPoolPropertiesResponseOutput) ToIpamPoolPropertiesResponseOutput() IpamPoolPropertiesResponseOutput { + return o +} + +func (o IpamPoolPropertiesResponseOutput) ToIpamPoolPropertiesResponseOutputWithContext(ctx context.Context) IpamPoolPropertiesResponseOutput { + return o +} + +// List of IP address prefixes of the resource. +func (o IpamPoolPropertiesResponseOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v IpamPoolPropertiesResponse) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +func (o IpamPoolPropertiesResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v IpamPoolPropertiesResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// String representing a friendly name for the resource. +func (o IpamPoolPropertiesResponseOutput) DisplayName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IpamPoolPropertiesResponse) *string { return v.DisplayName }).(pulumi.StringPtrOutput) +} + +// List of IP address type for the IpamPool. +func (o IpamPoolPropertiesResponseOutput) IpAddressType() pulumi.StringArrayOutput { + return o.ApplyT(func(v IpamPoolPropertiesResponse) []string { return v.IpAddressType }).(pulumi.StringArrayOutput) +} + +// String representing parent IpamPool resource name. If empty the IpamPool will be a root pool. +func (o IpamPoolPropertiesResponseOutput) ParentPoolName() pulumi.StringPtrOutput { + return o.ApplyT(func(v IpamPoolPropertiesResponse) *string { return v.ParentPoolName }).(pulumi.StringPtrOutput) +} + +// Provisioning states of a resource. +func (o IpamPoolPropertiesResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v IpamPoolPropertiesResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + // An IPSec Policy configuration for a virtual network gateway connection. type IpsecPolicy struct { // The DH Group used in IKE Phase 1 for initial SA. @@ -54271,6 +54805,152 @@ func (o NetworkManagerPropertiesResponseNetworkManagerScopesOutput) Subscription return o.ApplyT(func(v NetworkManagerPropertiesResponseNetworkManagerScopes) []string { return v.Subscriptions }).(pulumi.StringArrayOutput) } +// Network manager routing group item. +type NetworkManagerRoutingGroupItem struct { + // Network manager group Id. + NetworkGroupId string `pulumi:"networkGroupId"` +} + +// NetworkManagerRoutingGroupItemInput is an input type that accepts NetworkManagerRoutingGroupItemArgs and NetworkManagerRoutingGroupItemOutput values. +// You can construct a concrete instance of `NetworkManagerRoutingGroupItemInput` via: +// +// NetworkManagerRoutingGroupItemArgs{...} +type NetworkManagerRoutingGroupItemInput interface { + pulumi.Input + + ToNetworkManagerRoutingGroupItemOutput() NetworkManagerRoutingGroupItemOutput + ToNetworkManagerRoutingGroupItemOutputWithContext(context.Context) NetworkManagerRoutingGroupItemOutput +} + +// Network manager routing group item. +type NetworkManagerRoutingGroupItemArgs struct { + // Network manager group Id. + NetworkGroupId pulumi.StringInput `pulumi:"networkGroupId"` +} + +func (NetworkManagerRoutingGroupItemArgs) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkManagerRoutingGroupItem)(nil)).Elem() +} + +func (i NetworkManagerRoutingGroupItemArgs) ToNetworkManagerRoutingGroupItemOutput() NetworkManagerRoutingGroupItemOutput { + return i.ToNetworkManagerRoutingGroupItemOutputWithContext(context.Background()) +} + +func (i NetworkManagerRoutingGroupItemArgs) ToNetworkManagerRoutingGroupItemOutputWithContext(ctx context.Context) NetworkManagerRoutingGroupItemOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkManagerRoutingGroupItemOutput) +} + +// NetworkManagerRoutingGroupItemArrayInput is an input type that accepts NetworkManagerRoutingGroupItemArray and NetworkManagerRoutingGroupItemArrayOutput values. +// You can construct a concrete instance of `NetworkManagerRoutingGroupItemArrayInput` via: +// +// NetworkManagerRoutingGroupItemArray{ NetworkManagerRoutingGroupItemArgs{...} } +type NetworkManagerRoutingGroupItemArrayInput interface { + pulumi.Input + + ToNetworkManagerRoutingGroupItemArrayOutput() NetworkManagerRoutingGroupItemArrayOutput + ToNetworkManagerRoutingGroupItemArrayOutputWithContext(context.Context) NetworkManagerRoutingGroupItemArrayOutput +} + +type NetworkManagerRoutingGroupItemArray []NetworkManagerRoutingGroupItemInput + +func (NetworkManagerRoutingGroupItemArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]NetworkManagerRoutingGroupItem)(nil)).Elem() +} + +func (i NetworkManagerRoutingGroupItemArray) ToNetworkManagerRoutingGroupItemArrayOutput() NetworkManagerRoutingGroupItemArrayOutput { + return i.ToNetworkManagerRoutingGroupItemArrayOutputWithContext(context.Background()) +} + +func (i NetworkManagerRoutingGroupItemArray) ToNetworkManagerRoutingGroupItemArrayOutputWithContext(ctx context.Context) NetworkManagerRoutingGroupItemArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkManagerRoutingGroupItemArrayOutput) +} + +// Network manager routing group item. +type NetworkManagerRoutingGroupItemOutput struct{ *pulumi.OutputState } + +func (NetworkManagerRoutingGroupItemOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkManagerRoutingGroupItem)(nil)).Elem() +} + +func (o NetworkManagerRoutingGroupItemOutput) ToNetworkManagerRoutingGroupItemOutput() NetworkManagerRoutingGroupItemOutput { + return o +} + +func (o NetworkManagerRoutingGroupItemOutput) ToNetworkManagerRoutingGroupItemOutputWithContext(ctx context.Context) NetworkManagerRoutingGroupItemOutput { + return o +} + +// Network manager group Id. +func (o NetworkManagerRoutingGroupItemOutput) NetworkGroupId() pulumi.StringOutput { + return o.ApplyT(func(v NetworkManagerRoutingGroupItem) string { return v.NetworkGroupId }).(pulumi.StringOutput) +} + +type NetworkManagerRoutingGroupItemArrayOutput struct{ *pulumi.OutputState } + +func (NetworkManagerRoutingGroupItemArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]NetworkManagerRoutingGroupItem)(nil)).Elem() +} + +func (o NetworkManagerRoutingGroupItemArrayOutput) ToNetworkManagerRoutingGroupItemArrayOutput() NetworkManagerRoutingGroupItemArrayOutput { + return o +} + +func (o NetworkManagerRoutingGroupItemArrayOutput) ToNetworkManagerRoutingGroupItemArrayOutputWithContext(ctx context.Context) NetworkManagerRoutingGroupItemArrayOutput { + return o +} + +func (o NetworkManagerRoutingGroupItemArrayOutput) Index(i pulumi.IntInput) NetworkManagerRoutingGroupItemOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) NetworkManagerRoutingGroupItem { + return vs[0].([]NetworkManagerRoutingGroupItem)[vs[1].(int)] + }).(NetworkManagerRoutingGroupItemOutput) +} + +// Network manager routing group item. +type NetworkManagerRoutingGroupItemResponse struct { + // Network manager group Id. + NetworkGroupId string `pulumi:"networkGroupId"` +} + +// Network manager routing group item. +type NetworkManagerRoutingGroupItemResponseOutput struct{ *pulumi.OutputState } + +func (NetworkManagerRoutingGroupItemResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkManagerRoutingGroupItemResponse)(nil)).Elem() +} + +func (o NetworkManagerRoutingGroupItemResponseOutput) ToNetworkManagerRoutingGroupItemResponseOutput() NetworkManagerRoutingGroupItemResponseOutput { + return o +} + +func (o NetworkManagerRoutingGroupItemResponseOutput) ToNetworkManagerRoutingGroupItemResponseOutputWithContext(ctx context.Context) NetworkManagerRoutingGroupItemResponseOutput { + return o +} + +// Network manager group Id. +func (o NetworkManagerRoutingGroupItemResponseOutput) NetworkGroupId() pulumi.StringOutput { + return o.ApplyT(func(v NetworkManagerRoutingGroupItemResponse) string { return v.NetworkGroupId }).(pulumi.StringOutput) +} + +type NetworkManagerRoutingGroupItemResponseArrayOutput struct{ *pulumi.OutputState } + +func (NetworkManagerRoutingGroupItemResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]NetworkManagerRoutingGroupItemResponse)(nil)).Elem() +} + +func (o NetworkManagerRoutingGroupItemResponseArrayOutput) ToNetworkManagerRoutingGroupItemResponseArrayOutput() NetworkManagerRoutingGroupItemResponseArrayOutput { + return o +} + +func (o NetworkManagerRoutingGroupItemResponseArrayOutput) ToNetworkManagerRoutingGroupItemResponseArrayOutputWithContext(ctx context.Context) NetworkManagerRoutingGroupItemResponseArrayOutput { + return o +} + +func (o NetworkManagerRoutingGroupItemResponseArrayOutput) Index(i pulumi.IntInput) NetworkManagerRoutingGroupItemResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) NetworkManagerRoutingGroupItemResponse { + return vs[0].([]NetworkManagerRoutingGroupItemResponse)[vs[1].(int)] + }).(NetworkManagerRoutingGroupItemResponseOutput) +} + // Network manager security group item. type NetworkManagerSecurityGroupItem struct { // Network manager group Id. @@ -60250,1228 +60930,6 @@ func (o PolicySettingsResponseLogScrubbingPtrOutput) State() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } -// PrivateDnsZoneConfig resource. -type PrivateDnsZoneConfig struct { - // Name of the resource that is unique within a resource group. This name can be used to access the resource. - Name *string `pulumi:"name"` - // The resource id of the private dns zone. - PrivateDnsZoneId *string `pulumi:"privateDnsZoneId"` -} - -// PrivateDnsZoneConfigInput is an input type that accepts PrivateDnsZoneConfigArgs and PrivateDnsZoneConfigOutput values. -// You can construct a concrete instance of `PrivateDnsZoneConfigInput` via: -// -// PrivateDnsZoneConfigArgs{...} -type PrivateDnsZoneConfigInput interface { - pulumi.Input - - ToPrivateDnsZoneConfigOutput() PrivateDnsZoneConfigOutput - ToPrivateDnsZoneConfigOutputWithContext(context.Context) PrivateDnsZoneConfigOutput -} - -// PrivateDnsZoneConfig resource. -type PrivateDnsZoneConfigArgs struct { - // Name of the resource that is unique within a resource group. This name can be used to access the resource. - Name pulumi.StringPtrInput `pulumi:"name"` - // The resource id of the private dns zone. - PrivateDnsZoneId pulumi.StringPtrInput `pulumi:"privateDnsZoneId"` -} - -func (PrivateDnsZoneConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateDnsZoneConfig)(nil)).Elem() -} - -func (i PrivateDnsZoneConfigArgs) ToPrivateDnsZoneConfigOutput() PrivateDnsZoneConfigOutput { - return i.ToPrivateDnsZoneConfigOutputWithContext(context.Background()) -} - -func (i PrivateDnsZoneConfigArgs) ToPrivateDnsZoneConfigOutputWithContext(ctx context.Context) PrivateDnsZoneConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateDnsZoneConfigOutput) -} - -// PrivateDnsZoneConfigArrayInput is an input type that accepts PrivateDnsZoneConfigArray and PrivateDnsZoneConfigArrayOutput values. -// You can construct a concrete instance of `PrivateDnsZoneConfigArrayInput` via: -// -// PrivateDnsZoneConfigArray{ PrivateDnsZoneConfigArgs{...} } -type PrivateDnsZoneConfigArrayInput interface { - pulumi.Input - - ToPrivateDnsZoneConfigArrayOutput() PrivateDnsZoneConfigArrayOutput - ToPrivateDnsZoneConfigArrayOutputWithContext(context.Context) PrivateDnsZoneConfigArrayOutput -} - -type PrivateDnsZoneConfigArray []PrivateDnsZoneConfigInput - -func (PrivateDnsZoneConfigArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateDnsZoneConfig)(nil)).Elem() -} - -func (i PrivateDnsZoneConfigArray) ToPrivateDnsZoneConfigArrayOutput() PrivateDnsZoneConfigArrayOutput { - return i.ToPrivateDnsZoneConfigArrayOutputWithContext(context.Background()) -} - -func (i PrivateDnsZoneConfigArray) ToPrivateDnsZoneConfigArrayOutputWithContext(ctx context.Context) PrivateDnsZoneConfigArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateDnsZoneConfigArrayOutput) -} - -// PrivateDnsZoneConfig resource. -type PrivateDnsZoneConfigOutput struct{ *pulumi.OutputState } - -func (PrivateDnsZoneConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateDnsZoneConfig)(nil)).Elem() -} - -func (o PrivateDnsZoneConfigOutput) ToPrivateDnsZoneConfigOutput() PrivateDnsZoneConfigOutput { - return o -} - -func (o PrivateDnsZoneConfigOutput) ToPrivateDnsZoneConfigOutputWithContext(ctx context.Context) PrivateDnsZoneConfigOutput { - return o -} - -// Name of the resource that is unique within a resource group. This name can be used to access the resource. -func (o PrivateDnsZoneConfigOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateDnsZoneConfig) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// The resource id of the private dns zone. -func (o PrivateDnsZoneConfigOutput) PrivateDnsZoneId() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateDnsZoneConfig) *string { return v.PrivateDnsZoneId }).(pulumi.StringPtrOutput) -} - -type PrivateDnsZoneConfigArrayOutput struct{ *pulumi.OutputState } - -func (PrivateDnsZoneConfigArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateDnsZoneConfig)(nil)).Elem() -} - -func (o PrivateDnsZoneConfigArrayOutput) ToPrivateDnsZoneConfigArrayOutput() PrivateDnsZoneConfigArrayOutput { - return o -} - -func (o PrivateDnsZoneConfigArrayOutput) ToPrivateDnsZoneConfigArrayOutputWithContext(ctx context.Context) PrivateDnsZoneConfigArrayOutput { - return o -} - -func (o PrivateDnsZoneConfigArrayOutput) Index(i pulumi.IntInput) PrivateDnsZoneConfigOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateDnsZoneConfig { - return vs[0].([]PrivateDnsZoneConfig)[vs[1].(int)] - }).(PrivateDnsZoneConfigOutput) -} - -// PrivateDnsZoneConfig resource. -type PrivateDnsZoneConfigResponse struct { - // Name of the resource that is unique within a resource group. This name can be used to access the resource. - Name *string `pulumi:"name"` - // The resource id of the private dns zone. - PrivateDnsZoneId *string `pulumi:"privateDnsZoneId"` - // A collection of information regarding a recordSet, holding information to identify private resources. - RecordSets []RecordSetResponse `pulumi:"recordSets"` -} - -// PrivateDnsZoneConfig resource. -type PrivateDnsZoneConfigResponseOutput struct{ *pulumi.OutputState } - -func (PrivateDnsZoneConfigResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateDnsZoneConfigResponse)(nil)).Elem() -} - -func (o PrivateDnsZoneConfigResponseOutput) ToPrivateDnsZoneConfigResponseOutput() PrivateDnsZoneConfigResponseOutput { - return o -} - -func (o PrivateDnsZoneConfigResponseOutput) ToPrivateDnsZoneConfigResponseOutputWithContext(ctx context.Context) PrivateDnsZoneConfigResponseOutput { - return o -} - -// Name of the resource that is unique within a resource group. This name can be used to access the resource. -func (o PrivateDnsZoneConfigResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateDnsZoneConfigResponse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// The resource id of the private dns zone. -func (o PrivateDnsZoneConfigResponseOutput) PrivateDnsZoneId() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateDnsZoneConfigResponse) *string { return v.PrivateDnsZoneId }).(pulumi.StringPtrOutput) -} - -// A collection of information regarding a recordSet, holding information to identify private resources. -func (o PrivateDnsZoneConfigResponseOutput) RecordSets() RecordSetResponseArrayOutput { - return o.ApplyT(func(v PrivateDnsZoneConfigResponse) []RecordSetResponse { return v.RecordSets }).(RecordSetResponseArrayOutput) -} - -type PrivateDnsZoneConfigResponseArrayOutput struct{ *pulumi.OutputState } - -func (PrivateDnsZoneConfigResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateDnsZoneConfigResponse)(nil)).Elem() -} - -func (o PrivateDnsZoneConfigResponseArrayOutput) ToPrivateDnsZoneConfigResponseArrayOutput() PrivateDnsZoneConfigResponseArrayOutput { - return o -} - -func (o PrivateDnsZoneConfigResponseArrayOutput) ToPrivateDnsZoneConfigResponseArrayOutputWithContext(ctx context.Context) PrivateDnsZoneConfigResponseArrayOutput { - return o -} - -func (o PrivateDnsZoneConfigResponseArrayOutput) Index(i pulumi.IntInput) PrivateDnsZoneConfigResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateDnsZoneConfigResponse { - return vs[0].([]PrivateDnsZoneConfigResponse)[vs[1].(int)] - }).(PrivateDnsZoneConfigResponseOutput) -} - -// PrivateEndpointConnection resource. -type PrivateEndpointConnectionResponse struct { - // A unique read-only string that changes whenever the resource is updated. - Etag string `pulumi:"etag"` - // Resource ID. - Id *string `pulumi:"id"` - // The consumer link id. - LinkIdentifier string `pulumi:"linkIdentifier"` - // The name of the resource that is unique within a resource group. This name can be used to access the resource. - Name *string `pulumi:"name"` - // The resource of private end point. - PrivateEndpoint PrivateEndpointResponse `pulumi:"privateEndpoint"` - // The location of the private endpoint. - PrivateEndpointLocation string `pulumi:"privateEndpointLocation"` - // A collection of information about the state of the connection between service consumer and provider. - PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionStateResponse `pulumi:"privateLinkServiceConnectionState"` - // The provisioning state of the private endpoint connection resource. - ProvisioningState string `pulumi:"provisioningState"` - // The resource type. - Type string `pulumi:"type"` -} - -// Defaults sets the appropriate defaults for PrivateEndpointConnectionResponse -func (val *PrivateEndpointConnectionResponse) Defaults() *PrivateEndpointConnectionResponse { - if val == nil { - return nil - } - tmp := *val - tmp.PrivateEndpoint = *tmp.PrivateEndpoint.Defaults() - - return &tmp -} - -// PrivateEndpointConnection resource. -type PrivateEndpointConnectionResponseOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointConnectionResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateEndpointConnectionResponse)(nil)).Elem() -} - -func (o PrivateEndpointConnectionResponseOutput) ToPrivateEndpointConnectionResponseOutput() PrivateEndpointConnectionResponseOutput { - return o -} - -func (o PrivateEndpointConnectionResponseOutput) ToPrivateEndpointConnectionResponseOutputWithContext(ctx context.Context) PrivateEndpointConnectionResponseOutput { - return o -} - -// A unique read-only string that changes whenever the resource is updated. -func (o PrivateEndpointConnectionResponseOutput) Etag() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.Etag }).(pulumi.StringOutput) -} - -// Resource ID. -func (o PrivateEndpointConnectionResponseOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -// The consumer link id. -func (o PrivateEndpointConnectionResponseOutput) LinkIdentifier() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.LinkIdentifier }).(pulumi.StringOutput) -} - -// The name of the resource that is unique within a resource group. This name can be used to access the resource. -func (o PrivateEndpointConnectionResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// The resource of private end point. -func (o PrivateEndpointConnectionResponseOutput) PrivateEndpoint() PrivateEndpointResponseOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) PrivateEndpointResponse { return v.PrivateEndpoint }).(PrivateEndpointResponseOutput) -} - -// The location of the private endpoint. -func (o PrivateEndpointConnectionResponseOutput) PrivateEndpointLocation() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.PrivateEndpointLocation }).(pulumi.StringOutput) -} - -// A collection of information about the state of the connection between service consumer and provider. -func (o PrivateEndpointConnectionResponseOutput) PrivateLinkServiceConnectionState() PrivateLinkServiceConnectionStateResponsePtrOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) *PrivateLinkServiceConnectionStateResponse { - return v.PrivateLinkServiceConnectionState - }).(PrivateLinkServiceConnectionStateResponsePtrOutput) -} - -// The provisioning state of the private endpoint connection resource. -func (o PrivateEndpointConnectionResponseOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// The resource type. -func (o PrivateEndpointConnectionResponseOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.Type }).(pulumi.StringOutput) -} - -type PrivateEndpointConnectionResponseArrayOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointConnectionResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateEndpointConnectionResponse)(nil)).Elem() -} - -func (o PrivateEndpointConnectionResponseArrayOutput) ToPrivateEndpointConnectionResponseArrayOutput() PrivateEndpointConnectionResponseArrayOutput { - return o -} - -func (o PrivateEndpointConnectionResponseArrayOutput) ToPrivateEndpointConnectionResponseArrayOutputWithContext(ctx context.Context) PrivateEndpointConnectionResponseArrayOutput { - return o -} - -func (o PrivateEndpointConnectionResponseArrayOutput) Index(i pulumi.IntInput) PrivateEndpointConnectionResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointConnectionResponse { - return vs[0].([]PrivateEndpointConnectionResponse)[vs[1].(int)] - }).(PrivateEndpointConnectionResponseOutput) -} - -// An IP Configuration of the private endpoint. -type PrivateEndpointIPConfiguration struct { - // The ID of a group obtained from the remote resource that this private endpoint should connect to. - GroupId *string `pulumi:"groupId"` - // The member name of a group obtained from the remote resource that this private endpoint should connect to. - MemberName *string `pulumi:"memberName"` - // The name of the resource that is unique within a resource group. - Name *string `pulumi:"name"` - // A private ip address obtained from the private endpoint's subnet. - PrivateIPAddress *string `pulumi:"privateIPAddress"` -} - -// PrivateEndpointIPConfigurationInput is an input type that accepts PrivateEndpointIPConfigurationArgs and PrivateEndpointIPConfigurationOutput values. -// You can construct a concrete instance of `PrivateEndpointIPConfigurationInput` via: -// -// PrivateEndpointIPConfigurationArgs{...} -type PrivateEndpointIPConfigurationInput interface { - pulumi.Input - - ToPrivateEndpointIPConfigurationOutput() PrivateEndpointIPConfigurationOutput - ToPrivateEndpointIPConfigurationOutputWithContext(context.Context) PrivateEndpointIPConfigurationOutput -} - -// An IP Configuration of the private endpoint. -type PrivateEndpointIPConfigurationArgs struct { - // The ID of a group obtained from the remote resource that this private endpoint should connect to. - GroupId pulumi.StringPtrInput `pulumi:"groupId"` - // The member name of a group obtained from the remote resource that this private endpoint should connect to. - MemberName pulumi.StringPtrInput `pulumi:"memberName"` - // The name of the resource that is unique within a resource group. - Name pulumi.StringPtrInput `pulumi:"name"` - // A private ip address obtained from the private endpoint's subnet. - PrivateIPAddress pulumi.StringPtrInput `pulumi:"privateIPAddress"` -} - -func (PrivateEndpointIPConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateEndpointIPConfiguration)(nil)).Elem() -} - -func (i PrivateEndpointIPConfigurationArgs) ToPrivateEndpointIPConfigurationOutput() PrivateEndpointIPConfigurationOutput { - return i.ToPrivateEndpointIPConfigurationOutputWithContext(context.Background()) -} - -func (i PrivateEndpointIPConfigurationArgs) ToPrivateEndpointIPConfigurationOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateEndpointIPConfigurationOutput) -} - -// PrivateEndpointIPConfigurationArrayInput is an input type that accepts PrivateEndpointIPConfigurationArray and PrivateEndpointIPConfigurationArrayOutput values. -// You can construct a concrete instance of `PrivateEndpointIPConfigurationArrayInput` via: -// -// PrivateEndpointIPConfigurationArray{ PrivateEndpointIPConfigurationArgs{...} } -type PrivateEndpointIPConfigurationArrayInput interface { - pulumi.Input - - ToPrivateEndpointIPConfigurationArrayOutput() PrivateEndpointIPConfigurationArrayOutput - ToPrivateEndpointIPConfigurationArrayOutputWithContext(context.Context) PrivateEndpointIPConfigurationArrayOutput -} - -type PrivateEndpointIPConfigurationArray []PrivateEndpointIPConfigurationInput - -func (PrivateEndpointIPConfigurationArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateEndpointIPConfiguration)(nil)).Elem() -} - -func (i PrivateEndpointIPConfigurationArray) ToPrivateEndpointIPConfigurationArrayOutput() PrivateEndpointIPConfigurationArrayOutput { - return i.ToPrivateEndpointIPConfigurationArrayOutputWithContext(context.Background()) -} - -func (i PrivateEndpointIPConfigurationArray) ToPrivateEndpointIPConfigurationArrayOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateEndpointIPConfigurationArrayOutput) -} - -// An IP Configuration of the private endpoint. -type PrivateEndpointIPConfigurationOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointIPConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateEndpointIPConfiguration)(nil)).Elem() -} - -func (o PrivateEndpointIPConfigurationOutput) ToPrivateEndpointIPConfigurationOutput() PrivateEndpointIPConfigurationOutput { - return o -} - -func (o PrivateEndpointIPConfigurationOutput) ToPrivateEndpointIPConfigurationOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationOutput { - return o -} - -// The ID of a group obtained from the remote resource that this private endpoint should connect to. -func (o PrivateEndpointIPConfigurationOutput) GroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.GroupId }).(pulumi.StringPtrOutput) -} - -// The member name of a group obtained from the remote resource that this private endpoint should connect to. -func (o PrivateEndpointIPConfigurationOutput) MemberName() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.MemberName }).(pulumi.StringPtrOutput) -} - -// The name of the resource that is unique within a resource group. -func (o PrivateEndpointIPConfigurationOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// A private ip address obtained from the private endpoint's subnet. -func (o PrivateEndpointIPConfigurationOutput) PrivateIPAddress() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.PrivateIPAddress }).(pulumi.StringPtrOutput) -} - -type PrivateEndpointIPConfigurationArrayOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointIPConfigurationArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateEndpointIPConfiguration)(nil)).Elem() -} - -func (o PrivateEndpointIPConfigurationArrayOutput) ToPrivateEndpointIPConfigurationArrayOutput() PrivateEndpointIPConfigurationArrayOutput { - return o -} - -func (o PrivateEndpointIPConfigurationArrayOutput) ToPrivateEndpointIPConfigurationArrayOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationArrayOutput { - return o -} - -func (o PrivateEndpointIPConfigurationArrayOutput) Index(i pulumi.IntInput) PrivateEndpointIPConfigurationOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointIPConfiguration { - return vs[0].([]PrivateEndpointIPConfiguration)[vs[1].(int)] - }).(PrivateEndpointIPConfigurationOutput) -} - -// An IP Configuration of the private endpoint. -type PrivateEndpointIPConfigurationResponse struct { - // A unique read-only string that changes whenever the resource is updated. - Etag string `pulumi:"etag"` - // The ID of a group obtained from the remote resource that this private endpoint should connect to. - GroupId *string `pulumi:"groupId"` - // The member name of a group obtained from the remote resource that this private endpoint should connect to. - MemberName *string `pulumi:"memberName"` - // The name of the resource that is unique within a resource group. - Name *string `pulumi:"name"` - // A private ip address obtained from the private endpoint's subnet. - PrivateIPAddress *string `pulumi:"privateIPAddress"` - // The resource type. - Type string `pulumi:"type"` -} - -// An IP Configuration of the private endpoint. -type PrivateEndpointIPConfigurationResponseOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointIPConfigurationResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateEndpointIPConfigurationResponse)(nil)).Elem() -} - -func (o PrivateEndpointIPConfigurationResponseOutput) ToPrivateEndpointIPConfigurationResponseOutput() PrivateEndpointIPConfigurationResponseOutput { - return o -} - -func (o PrivateEndpointIPConfigurationResponseOutput) ToPrivateEndpointIPConfigurationResponseOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationResponseOutput { - return o -} - -// A unique read-only string that changes whenever the resource is updated. -func (o PrivateEndpointIPConfigurationResponseOutput) Etag() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) string { return v.Etag }).(pulumi.StringOutput) -} - -// The ID of a group obtained from the remote resource that this private endpoint should connect to. -func (o PrivateEndpointIPConfigurationResponseOutput) GroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.GroupId }).(pulumi.StringPtrOutput) -} - -// The member name of a group obtained from the remote resource that this private endpoint should connect to. -func (o PrivateEndpointIPConfigurationResponseOutput) MemberName() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.MemberName }).(pulumi.StringPtrOutput) -} - -// The name of the resource that is unique within a resource group. -func (o PrivateEndpointIPConfigurationResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// A private ip address obtained from the private endpoint's subnet. -func (o PrivateEndpointIPConfigurationResponseOutput) PrivateIPAddress() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.PrivateIPAddress }).(pulumi.StringPtrOutput) -} - -// The resource type. -func (o PrivateEndpointIPConfigurationResponseOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) string { return v.Type }).(pulumi.StringOutput) -} - -type PrivateEndpointIPConfigurationResponseArrayOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointIPConfigurationResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateEndpointIPConfigurationResponse)(nil)).Elem() -} - -func (o PrivateEndpointIPConfigurationResponseArrayOutput) ToPrivateEndpointIPConfigurationResponseArrayOutput() PrivateEndpointIPConfigurationResponseArrayOutput { - return o -} - -func (o PrivateEndpointIPConfigurationResponseArrayOutput) ToPrivateEndpointIPConfigurationResponseArrayOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationResponseArrayOutput { - return o -} - -func (o PrivateEndpointIPConfigurationResponseArrayOutput) Index(i pulumi.IntInput) PrivateEndpointIPConfigurationResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointIPConfigurationResponse { - return vs[0].([]PrivateEndpointIPConfigurationResponse)[vs[1].(int)] - }).(PrivateEndpointIPConfigurationResponseOutput) -} - -// Private endpoint resource. -type PrivateEndpointResponse struct { - // Application security groups in which the private endpoint IP configuration is included. - ApplicationSecurityGroups []ApplicationSecurityGroupResponse `pulumi:"applicationSecurityGroups"` - // An array of custom dns configurations. - CustomDnsConfigs []CustomDnsConfigPropertiesFormatResponse `pulumi:"customDnsConfigs"` - // The custom name of the network interface attached to the private endpoint. - CustomNetworkInterfaceName *string `pulumi:"customNetworkInterfaceName"` - // A unique read-only string that changes whenever the resource is updated. - Etag string `pulumi:"etag"` - // The extended location of the load balancer. - ExtendedLocation *ExtendedLocationResponse `pulumi:"extendedLocation"` - // Resource ID. - Id *string `pulumi:"id"` - // A list of IP configurations of the private endpoint. This will be used to map to the First Party Service's endpoints. - IpConfigurations []PrivateEndpointIPConfigurationResponse `pulumi:"ipConfigurations"` - // Resource location. - Location *string `pulumi:"location"` - // A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource. - ManualPrivateLinkServiceConnections []PrivateLinkServiceConnectionResponse `pulumi:"manualPrivateLinkServiceConnections"` - // Resource name. - Name string `pulumi:"name"` - // An array of references to the network interfaces created for this private endpoint. - NetworkInterfaces []NetworkInterfaceResponse `pulumi:"networkInterfaces"` - // A grouping of information about the connection to the remote resource. - PrivateLinkServiceConnections []PrivateLinkServiceConnectionResponse `pulumi:"privateLinkServiceConnections"` - // The provisioning state of the private endpoint resource. - ProvisioningState string `pulumi:"provisioningState"` - // The ID of the subnet from which the private IP will be allocated. - Subnet *SubnetResponse `pulumi:"subnet"` - // Resource tags. - Tags map[string]string `pulumi:"tags"` - // Resource type. - Type string `pulumi:"type"` -} - -// Defaults sets the appropriate defaults for PrivateEndpointResponse -func (val *PrivateEndpointResponse) Defaults() *PrivateEndpointResponse { - if val == nil { - return nil - } - tmp := *val - tmp.Subnet = tmp.Subnet.Defaults() - - return &tmp -} - -// Private endpoint resource. -type PrivateEndpointResponseOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateEndpointResponse)(nil)).Elem() -} - -func (o PrivateEndpointResponseOutput) ToPrivateEndpointResponseOutput() PrivateEndpointResponseOutput { - return o -} - -func (o PrivateEndpointResponseOutput) ToPrivateEndpointResponseOutputWithContext(ctx context.Context) PrivateEndpointResponseOutput { - return o -} - -// Application security groups in which the private endpoint IP configuration is included. -func (o PrivateEndpointResponseOutput) ApplicationSecurityGroups() ApplicationSecurityGroupResponseArrayOutput { - return o.ApplyT(func(v PrivateEndpointResponse) []ApplicationSecurityGroupResponse { return v.ApplicationSecurityGroups }).(ApplicationSecurityGroupResponseArrayOutput) -} - -// An array of custom dns configurations. -func (o PrivateEndpointResponseOutput) CustomDnsConfigs() CustomDnsConfigPropertiesFormatResponseArrayOutput { - return o.ApplyT(func(v PrivateEndpointResponse) []CustomDnsConfigPropertiesFormatResponse { return v.CustomDnsConfigs }).(CustomDnsConfigPropertiesFormatResponseArrayOutput) -} - -// The custom name of the network interface attached to the private endpoint. -func (o PrivateEndpointResponseOutput) CustomNetworkInterfaceName() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointResponse) *string { return v.CustomNetworkInterfaceName }).(pulumi.StringPtrOutput) -} - -// A unique read-only string that changes whenever the resource is updated. -func (o PrivateEndpointResponseOutput) Etag() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointResponse) string { return v.Etag }).(pulumi.StringOutput) -} - -// The extended location of the load balancer. -func (o PrivateEndpointResponseOutput) ExtendedLocation() ExtendedLocationResponsePtrOutput { - return o.ApplyT(func(v PrivateEndpointResponse) *ExtendedLocationResponse { return v.ExtendedLocation }).(ExtendedLocationResponsePtrOutput) -} - -// Resource ID. -func (o PrivateEndpointResponseOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointResponse) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -// A list of IP configurations of the private endpoint. This will be used to map to the First Party Service's endpoints. -func (o PrivateEndpointResponseOutput) IpConfigurations() PrivateEndpointIPConfigurationResponseArrayOutput { - return o.ApplyT(func(v PrivateEndpointResponse) []PrivateEndpointIPConfigurationResponse { return v.IpConfigurations }).(PrivateEndpointIPConfigurationResponseArrayOutput) -} - -// Resource location. -func (o PrivateEndpointResponseOutput) Location() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateEndpointResponse) *string { return v.Location }).(pulumi.StringPtrOutput) -} - -// A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource. -func (o PrivateEndpointResponseOutput) ManualPrivateLinkServiceConnections() PrivateLinkServiceConnectionResponseArrayOutput { - return o.ApplyT(func(v PrivateEndpointResponse) []PrivateLinkServiceConnectionResponse { - return v.ManualPrivateLinkServiceConnections - }).(PrivateLinkServiceConnectionResponseArrayOutput) -} - -// Resource name. -func (o PrivateEndpointResponseOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointResponse) string { return v.Name }).(pulumi.StringOutput) -} - -// An array of references to the network interfaces created for this private endpoint. -func (o PrivateEndpointResponseOutput) NetworkInterfaces() NetworkInterfaceResponseArrayOutput { - return o.ApplyT(func(v PrivateEndpointResponse) []NetworkInterfaceResponse { return v.NetworkInterfaces }).(NetworkInterfaceResponseArrayOutput) -} - -// A grouping of information about the connection to the remote resource. -func (o PrivateEndpointResponseOutput) PrivateLinkServiceConnections() PrivateLinkServiceConnectionResponseArrayOutput { - return o.ApplyT(func(v PrivateEndpointResponse) []PrivateLinkServiceConnectionResponse { - return v.PrivateLinkServiceConnections - }).(PrivateLinkServiceConnectionResponseArrayOutput) -} - -// The provisioning state of the private endpoint resource. -func (o PrivateEndpointResponseOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// The ID of the subnet from which the private IP will be allocated. -func (o PrivateEndpointResponseOutput) Subnet() SubnetResponsePtrOutput { - return o.ApplyT(func(v PrivateEndpointResponse) *SubnetResponse { return v.Subnet }).(SubnetResponsePtrOutput) -} - -// Resource tags. -func (o PrivateEndpointResponseOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v PrivateEndpointResponse) map[string]string { return v.Tags }).(pulumi.StringMapOutput) -} - -// Resource type. -func (o PrivateEndpointResponseOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v PrivateEndpointResponse) string { return v.Type }).(pulumi.StringOutput) -} - -type PrivateEndpointResponseArrayOutput struct{ *pulumi.OutputState } - -func (PrivateEndpointResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateEndpointResponse)(nil)).Elem() -} - -func (o PrivateEndpointResponseArrayOutput) ToPrivateEndpointResponseArrayOutput() PrivateEndpointResponseArrayOutput { - return o -} - -func (o PrivateEndpointResponseArrayOutput) ToPrivateEndpointResponseArrayOutputWithContext(ctx context.Context) PrivateEndpointResponseArrayOutput { - return o -} - -func (o PrivateEndpointResponseArrayOutput) Index(i pulumi.IntInput) PrivateEndpointResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointResponse { - return vs[0].([]PrivateEndpointResponse)[vs[1].(int)] - }).(PrivateEndpointResponseOutput) -} - -// Private link service resource. -type PrivateLinkServiceType struct { - // The auto-approval list of the private link service. - AutoApproval *PrivateLinkServicePropertiesAutoApproval `pulumi:"autoApproval"` - // Whether the private link service is enabled for proxy protocol or not. - EnableProxyProtocol *bool `pulumi:"enableProxyProtocol"` - // The extended location of the load balancer. - ExtendedLocation *ExtendedLocation `pulumi:"extendedLocation"` - // The list of Fqdn. - Fqdns []string `pulumi:"fqdns"` - // Resource ID. - Id *string `pulumi:"id"` - // An array of private link service IP configurations. - IpConfigurations []PrivateLinkServiceIpConfiguration `pulumi:"ipConfigurations"` - // An array of references to the load balancer IP configurations. - LoadBalancerFrontendIpConfigurations []FrontendIPConfiguration `pulumi:"loadBalancerFrontendIpConfigurations"` - // Resource location. - Location *string `pulumi:"location"` - // Resource tags. - Tags map[string]string `pulumi:"tags"` - // The visibility list of the private link service. - Visibility *PrivateLinkServicePropertiesVisibility `pulumi:"visibility"` -} - -// PrivateLinkServiceTypeInput is an input type that accepts PrivateLinkServiceTypeArgs and PrivateLinkServiceTypeOutput values. -// You can construct a concrete instance of `PrivateLinkServiceTypeInput` via: -// -// PrivateLinkServiceTypeArgs{...} -type PrivateLinkServiceTypeInput interface { - pulumi.Input - - ToPrivateLinkServiceTypeOutput() PrivateLinkServiceTypeOutput - ToPrivateLinkServiceTypeOutputWithContext(context.Context) PrivateLinkServiceTypeOutput -} - -// Private link service resource. -type PrivateLinkServiceTypeArgs struct { - // The auto-approval list of the private link service. - AutoApproval PrivateLinkServicePropertiesAutoApprovalPtrInput `pulumi:"autoApproval"` - // Whether the private link service is enabled for proxy protocol or not. - EnableProxyProtocol pulumi.BoolPtrInput `pulumi:"enableProxyProtocol"` - // The extended location of the load balancer. - ExtendedLocation ExtendedLocationPtrInput `pulumi:"extendedLocation"` - // The list of Fqdn. - Fqdns pulumi.StringArrayInput `pulumi:"fqdns"` - // Resource ID. - Id pulumi.StringPtrInput `pulumi:"id"` - // An array of private link service IP configurations. - IpConfigurations PrivateLinkServiceIpConfigurationArrayInput `pulumi:"ipConfigurations"` - // An array of references to the load balancer IP configurations. - LoadBalancerFrontendIpConfigurations FrontendIPConfigurationArrayInput `pulumi:"loadBalancerFrontendIpConfigurations"` - // Resource location. - Location pulumi.StringPtrInput `pulumi:"location"` - // Resource tags. - Tags pulumi.StringMapInput `pulumi:"tags"` - // The visibility list of the private link service. - Visibility PrivateLinkServicePropertiesVisibilityPtrInput `pulumi:"visibility"` -} - -func (PrivateLinkServiceTypeArgs) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateLinkServiceType)(nil)).Elem() -} - -func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypeOutput() PrivateLinkServiceTypeOutput { - return i.ToPrivateLinkServiceTypeOutputWithContext(context.Background()) -} - -func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypeOutputWithContext(ctx context.Context) PrivateLinkServiceTypeOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceTypeOutput) -} - -func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { - return i.ToPrivateLinkServiceTypePtrOutputWithContext(context.Background()) -} - -func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceTypeOutput).ToPrivateLinkServiceTypePtrOutputWithContext(ctx) -} - -// PrivateLinkServiceTypePtrInput is an input type that accepts PrivateLinkServiceTypeArgs, PrivateLinkServiceTypePtr and PrivateLinkServiceTypePtrOutput values. -// You can construct a concrete instance of `PrivateLinkServiceTypePtrInput` via: -// -// PrivateLinkServiceTypeArgs{...} -// -// or: -// -// nil -type PrivateLinkServiceTypePtrInput interface { - pulumi.Input - - ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput - ToPrivateLinkServiceTypePtrOutputWithContext(context.Context) PrivateLinkServiceTypePtrOutput -} - -type privateLinkServiceTypePtrType PrivateLinkServiceTypeArgs - -func PrivateLinkServiceTypePtr(v *PrivateLinkServiceTypeArgs) PrivateLinkServiceTypePtrInput { - return (*privateLinkServiceTypePtrType)(v) -} - -func (*privateLinkServiceTypePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**PrivateLinkServiceType)(nil)).Elem() -} - -func (i *privateLinkServiceTypePtrType) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { - return i.ToPrivateLinkServiceTypePtrOutputWithContext(context.Background()) -} - -func (i *privateLinkServiceTypePtrType) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceTypePtrOutput) -} - -// Private link service resource. -type PrivateLinkServiceTypeOutput struct{ *pulumi.OutputState } - -func (PrivateLinkServiceTypeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateLinkServiceType)(nil)).Elem() -} - -func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypeOutput() PrivateLinkServiceTypeOutput { - return o -} - -func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypeOutputWithContext(ctx context.Context) PrivateLinkServiceTypeOutput { - return o -} - -func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { - return o.ToPrivateLinkServiceTypePtrOutputWithContext(context.Background()) -} - -func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v PrivateLinkServiceType) *PrivateLinkServiceType { - return &v - }).(PrivateLinkServiceTypePtrOutput) -} - -// The auto-approval list of the private link service. -func (o PrivateLinkServiceTypeOutput) AutoApproval() PrivateLinkServicePropertiesAutoApprovalPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceType) *PrivateLinkServicePropertiesAutoApproval { return v.AutoApproval }).(PrivateLinkServicePropertiesAutoApprovalPtrOutput) -} - -// Whether the private link service is enabled for proxy protocol or not. -func (o PrivateLinkServiceTypeOutput) EnableProxyProtocol() pulumi.BoolPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceType) *bool { return v.EnableProxyProtocol }).(pulumi.BoolPtrOutput) -} - -// The extended location of the load balancer. -func (o PrivateLinkServiceTypeOutput) ExtendedLocation() ExtendedLocationPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceType) *ExtendedLocation { return v.ExtendedLocation }).(ExtendedLocationPtrOutput) -} - -// The list of Fqdn. -func (o PrivateLinkServiceTypeOutput) Fqdns() pulumi.StringArrayOutput { - return o.ApplyT(func(v PrivateLinkServiceType) []string { return v.Fqdns }).(pulumi.StringArrayOutput) -} - -// Resource ID. -func (o PrivateLinkServiceTypeOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceType) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -// An array of private link service IP configurations. -func (o PrivateLinkServiceTypeOutput) IpConfigurations() PrivateLinkServiceIpConfigurationArrayOutput { - return o.ApplyT(func(v PrivateLinkServiceType) []PrivateLinkServiceIpConfiguration { return v.IpConfigurations }).(PrivateLinkServiceIpConfigurationArrayOutput) -} - -// An array of references to the load balancer IP configurations. -func (o PrivateLinkServiceTypeOutput) LoadBalancerFrontendIpConfigurations() FrontendIPConfigurationArrayOutput { - return o.ApplyT(func(v PrivateLinkServiceType) []FrontendIPConfiguration { - return v.LoadBalancerFrontendIpConfigurations - }).(FrontendIPConfigurationArrayOutput) -} - -// Resource location. -func (o PrivateLinkServiceTypeOutput) Location() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceType) *string { return v.Location }).(pulumi.StringPtrOutput) -} - -// Resource tags. -func (o PrivateLinkServiceTypeOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v PrivateLinkServiceType) map[string]string { return v.Tags }).(pulumi.StringMapOutput) -} - -// The visibility list of the private link service. -func (o PrivateLinkServiceTypeOutput) Visibility() PrivateLinkServicePropertiesVisibilityPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceType) *PrivateLinkServicePropertiesVisibility { return v.Visibility }).(PrivateLinkServicePropertiesVisibilityPtrOutput) -} - -type PrivateLinkServiceTypePtrOutput struct{ *pulumi.OutputState } - -func (PrivateLinkServiceTypePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**PrivateLinkServiceType)(nil)).Elem() -} - -func (o PrivateLinkServiceTypePtrOutput) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { - return o -} - -func (o PrivateLinkServiceTypePtrOutput) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { - return o -} - -func (o PrivateLinkServiceTypePtrOutput) Elem() PrivateLinkServiceTypeOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) PrivateLinkServiceType { - if v != nil { - return *v - } - var ret PrivateLinkServiceType - return ret - }).(PrivateLinkServiceTypeOutput) -} - -// The auto-approval list of the private link service. -func (o PrivateLinkServiceTypePtrOutput) AutoApproval() PrivateLinkServicePropertiesAutoApprovalPtrOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) *PrivateLinkServicePropertiesAutoApproval { - if v == nil { - return nil - } - return v.AutoApproval - }).(PrivateLinkServicePropertiesAutoApprovalPtrOutput) -} - -// Whether the private link service is enabled for proxy protocol or not. -func (o PrivateLinkServiceTypePtrOutput) EnableProxyProtocol() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) *bool { - if v == nil { - return nil - } - return v.EnableProxyProtocol - }).(pulumi.BoolPtrOutput) -} - -// The extended location of the load balancer. -func (o PrivateLinkServiceTypePtrOutput) ExtendedLocation() ExtendedLocationPtrOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) *ExtendedLocation { - if v == nil { - return nil - } - return v.ExtendedLocation - }).(ExtendedLocationPtrOutput) -} - -// The list of Fqdn. -func (o PrivateLinkServiceTypePtrOutput) Fqdns() pulumi.StringArrayOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) []string { - if v == nil { - return nil - } - return v.Fqdns - }).(pulumi.StringArrayOutput) -} - -// Resource ID. -func (o PrivateLinkServiceTypePtrOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) *string { - if v == nil { - return nil - } - return v.Id - }).(pulumi.StringPtrOutput) -} - -// An array of private link service IP configurations. -func (o PrivateLinkServiceTypePtrOutput) IpConfigurations() PrivateLinkServiceIpConfigurationArrayOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) []PrivateLinkServiceIpConfiguration { - if v == nil { - return nil - } - return v.IpConfigurations - }).(PrivateLinkServiceIpConfigurationArrayOutput) -} - -// An array of references to the load balancer IP configurations. -func (o PrivateLinkServiceTypePtrOutput) LoadBalancerFrontendIpConfigurations() FrontendIPConfigurationArrayOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) []FrontendIPConfiguration { - if v == nil { - return nil - } - return v.LoadBalancerFrontendIpConfigurations - }).(FrontendIPConfigurationArrayOutput) -} - -// Resource location. -func (o PrivateLinkServiceTypePtrOutput) Location() pulumi.StringPtrOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) *string { - if v == nil { - return nil - } - return v.Location - }).(pulumi.StringPtrOutput) -} - -// Resource tags. -func (o PrivateLinkServiceTypePtrOutput) Tags() pulumi.StringMapOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) map[string]string { - if v == nil { - return nil - } - return v.Tags - }).(pulumi.StringMapOutput) -} - -// The visibility list of the private link service. -func (o PrivateLinkServiceTypePtrOutput) Visibility() PrivateLinkServicePropertiesVisibilityPtrOutput { - return o.ApplyT(func(v *PrivateLinkServiceType) *PrivateLinkServicePropertiesVisibility { - if v == nil { - return nil - } - return v.Visibility - }).(PrivateLinkServicePropertiesVisibilityPtrOutput) -} - -// PrivateLinkServiceConnection resource. -type PrivateLinkServiceConnection struct { - // The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. - GroupIds []string `pulumi:"groupIds"` - // Resource ID. - Id *string `pulumi:"id"` - // The name of the resource that is unique within a resource group. This name can be used to access the resource. - Name *string `pulumi:"name"` - // A collection of read-only information about the state of the connection to the remote resource. - PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionState `pulumi:"privateLinkServiceConnectionState"` - // The resource id of private link service. - PrivateLinkServiceId *string `pulumi:"privateLinkServiceId"` - // A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. - RequestMessage *string `pulumi:"requestMessage"` -} - -// PrivateLinkServiceConnectionInput is an input type that accepts PrivateLinkServiceConnectionArgs and PrivateLinkServiceConnectionOutput values. -// You can construct a concrete instance of `PrivateLinkServiceConnectionInput` via: -// -// PrivateLinkServiceConnectionArgs{...} -type PrivateLinkServiceConnectionInput interface { - pulumi.Input - - ToPrivateLinkServiceConnectionOutput() PrivateLinkServiceConnectionOutput - ToPrivateLinkServiceConnectionOutputWithContext(context.Context) PrivateLinkServiceConnectionOutput -} - -// PrivateLinkServiceConnection resource. -type PrivateLinkServiceConnectionArgs struct { - // The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. - GroupIds pulumi.StringArrayInput `pulumi:"groupIds"` - // Resource ID. - Id pulumi.StringPtrInput `pulumi:"id"` - // The name of the resource that is unique within a resource group. This name can be used to access the resource. - Name pulumi.StringPtrInput `pulumi:"name"` - // A collection of read-only information about the state of the connection to the remote resource. - PrivateLinkServiceConnectionState PrivateLinkServiceConnectionStatePtrInput `pulumi:"privateLinkServiceConnectionState"` - // The resource id of private link service. - PrivateLinkServiceId pulumi.StringPtrInput `pulumi:"privateLinkServiceId"` - // A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. - RequestMessage pulumi.StringPtrInput `pulumi:"requestMessage"` -} - -func (PrivateLinkServiceConnectionArgs) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateLinkServiceConnection)(nil)).Elem() -} - -func (i PrivateLinkServiceConnectionArgs) ToPrivateLinkServiceConnectionOutput() PrivateLinkServiceConnectionOutput { - return i.ToPrivateLinkServiceConnectionOutputWithContext(context.Background()) -} - -func (i PrivateLinkServiceConnectionArgs) ToPrivateLinkServiceConnectionOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceConnectionOutput) -} - -// PrivateLinkServiceConnectionArrayInput is an input type that accepts PrivateLinkServiceConnectionArray and PrivateLinkServiceConnectionArrayOutput values. -// You can construct a concrete instance of `PrivateLinkServiceConnectionArrayInput` via: -// -// PrivateLinkServiceConnectionArray{ PrivateLinkServiceConnectionArgs{...} } -type PrivateLinkServiceConnectionArrayInput interface { - pulumi.Input - - ToPrivateLinkServiceConnectionArrayOutput() PrivateLinkServiceConnectionArrayOutput - ToPrivateLinkServiceConnectionArrayOutputWithContext(context.Context) PrivateLinkServiceConnectionArrayOutput -} - -type PrivateLinkServiceConnectionArray []PrivateLinkServiceConnectionInput - -func (PrivateLinkServiceConnectionArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateLinkServiceConnection)(nil)).Elem() -} - -func (i PrivateLinkServiceConnectionArray) ToPrivateLinkServiceConnectionArrayOutput() PrivateLinkServiceConnectionArrayOutput { - return i.ToPrivateLinkServiceConnectionArrayOutputWithContext(context.Background()) -} - -func (i PrivateLinkServiceConnectionArray) ToPrivateLinkServiceConnectionArrayOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceConnectionArrayOutput) -} - -// PrivateLinkServiceConnection resource. -type PrivateLinkServiceConnectionOutput struct{ *pulumi.OutputState } - -func (PrivateLinkServiceConnectionOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateLinkServiceConnection)(nil)).Elem() -} - -func (o PrivateLinkServiceConnectionOutput) ToPrivateLinkServiceConnectionOutput() PrivateLinkServiceConnectionOutput { - return o -} - -func (o PrivateLinkServiceConnectionOutput) ToPrivateLinkServiceConnectionOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionOutput { - return o -} - -// The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. -func (o PrivateLinkServiceConnectionOutput) GroupIds() pulumi.StringArrayOutput { - return o.ApplyT(func(v PrivateLinkServiceConnection) []string { return v.GroupIds }).(pulumi.StringArrayOutput) -} - -// Resource ID. -func (o PrivateLinkServiceConnectionOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -// The name of the resource that is unique within a resource group. This name can be used to access the resource. -func (o PrivateLinkServiceConnectionOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// A collection of read-only information about the state of the connection to the remote resource. -func (o PrivateLinkServiceConnectionOutput) PrivateLinkServiceConnectionState() PrivateLinkServiceConnectionStatePtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnection) *PrivateLinkServiceConnectionState { - return v.PrivateLinkServiceConnectionState - }).(PrivateLinkServiceConnectionStatePtrOutput) -} - -// The resource id of private link service. -func (o PrivateLinkServiceConnectionOutput) PrivateLinkServiceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.PrivateLinkServiceId }).(pulumi.StringPtrOutput) -} - -// A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. -func (o PrivateLinkServiceConnectionOutput) RequestMessage() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.RequestMessage }).(pulumi.StringPtrOutput) -} - -type PrivateLinkServiceConnectionArrayOutput struct{ *pulumi.OutputState } - -func (PrivateLinkServiceConnectionArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateLinkServiceConnection)(nil)).Elem() -} - -func (o PrivateLinkServiceConnectionArrayOutput) ToPrivateLinkServiceConnectionArrayOutput() PrivateLinkServiceConnectionArrayOutput { - return o -} - -func (o PrivateLinkServiceConnectionArrayOutput) ToPrivateLinkServiceConnectionArrayOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionArrayOutput { - return o -} - -func (o PrivateLinkServiceConnectionArrayOutput) Index(i pulumi.IntInput) PrivateLinkServiceConnectionOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateLinkServiceConnection { - return vs[0].([]PrivateLinkServiceConnection)[vs[1].(int)] - }).(PrivateLinkServiceConnectionOutput) -} - -// PrivateLinkServiceConnection resource. -type PrivateLinkServiceConnectionResponse struct { - // A unique read-only string that changes whenever the resource is updated. - Etag string `pulumi:"etag"` - // The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. - GroupIds []string `pulumi:"groupIds"` - // Resource ID. - Id *string `pulumi:"id"` - // The name of the resource that is unique within a resource group. This name can be used to access the resource. - Name *string `pulumi:"name"` - // A collection of read-only information about the state of the connection to the remote resource. - PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionStateResponse `pulumi:"privateLinkServiceConnectionState"` - // The resource id of private link service. - PrivateLinkServiceId *string `pulumi:"privateLinkServiceId"` - // The provisioning state of the private link service connection resource. - ProvisioningState string `pulumi:"provisioningState"` - // A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. - RequestMessage *string `pulumi:"requestMessage"` - // The resource type. - Type string `pulumi:"type"` -} - -// PrivateLinkServiceConnection resource. -type PrivateLinkServiceConnectionResponseOutput struct{ *pulumi.OutputState } - -func (PrivateLinkServiceConnectionResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*PrivateLinkServiceConnectionResponse)(nil)).Elem() -} - -func (o PrivateLinkServiceConnectionResponseOutput) ToPrivateLinkServiceConnectionResponseOutput() PrivateLinkServiceConnectionResponseOutput { - return o -} - -func (o PrivateLinkServiceConnectionResponseOutput) ToPrivateLinkServiceConnectionResponseOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionResponseOutput { - return o -} - -// A unique read-only string that changes whenever the resource is updated. -func (o PrivateLinkServiceConnectionResponseOutput) Etag() pulumi.StringOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) string { return v.Etag }).(pulumi.StringOutput) -} - -// The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. -func (o PrivateLinkServiceConnectionResponseOutput) GroupIds() pulumi.StringArrayOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) []string { return v.GroupIds }).(pulumi.StringArrayOutput) -} - -// Resource ID. -func (o PrivateLinkServiceConnectionResponseOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.Id }).(pulumi.StringPtrOutput) -} - -// The name of the resource that is unique within a resource group. This name can be used to access the resource. -func (o PrivateLinkServiceConnectionResponseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// A collection of read-only information about the state of the connection to the remote resource. -func (o PrivateLinkServiceConnectionResponseOutput) PrivateLinkServiceConnectionState() PrivateLinkServiceConnectionStateResponsePtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *PrivateLinkServiceConnectionStateResponse { - return v.PrivateLinkServiceConnectionState - }).(PrivateLinkServiceConnectionStateResponsePtrOutput) -} - -// The resource id of private link service. -func (o PrivateLinkServiceConnectionResponseOutput) PrivateLinkServiceId() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.PrivateLinkServiceId }).(pulumi.StringPtrOutput) -} - -// The provisioning state of the private link service connection resource. -func (o PrivateLinkServiceConnectionResponseOutput) ProvisioningState() pulumi.StringOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) -} - -// A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. -func (o PrivateLinkServiceConnectionResponseOutput) RequestMessage() pulumi.StringPtrOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.RequestMessage }).(pulumi.StringPtrOutput) -} - -// The resource type. -func (o PrivateLinkServiceConnectionResponseOutput) Type() pulumi.StringOutput { - return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) string { return v.Type }).(pulumi.StringOutput) -} - -type PrivateLinkServiceConnectionResponseArrayOutput struct{ *pulumi.OutputState } - -func (PrivateLinkServiceConnectionResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]PrivateLinkServiceConnectionResponse)(nil)).Elem() -} - -func (o PrivateLinkServiceConnectionResponseArrayOutput) ToPrivateLinkServiceConnectionResponseArrayOutput() PrivateLinkServiceConnectionResponseArrayOutput { - return o -} - -func (o PrivateLinkServiceConnectionResponseArrayOutput) ToPrivateLinkServiceConnectionResponseArrayOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionResponseArrayOutput { - return o -} - -func (o PrivateLinkServiceConnectionResponseArrayOutput) Index(i pulumi.IntInput) PrivateLinkServiceConnectionResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateLinkServiceConnectionResponse { - return vs[0].([]PrivateLinkServiceConnectionResponse)[vs[1].(int)] - }).(PrivateLinkServiceConnectionResponseOutput) -} - func init() { pulumi.RegisterOutputType(ARecordOutput{}) pulumi.RegisterOutputType(ARecordArrayOutput{}) @@ -61908,6 +61366,8 @@ func init() { pulumi.RegisterOutputType(DnsConfigResponsePtrOutput{}) pulumi.RegisterOutputType(DnsResourceReferenceResponseOutput{}) pulumi.RegisterOutputType(DnsResourceReferenceResponseArrayOutput{}) + pulumi.RegisterOutputType(DnsSecurityRuleActionOutput{}) + pulumi.RegisterOutputType(DnsSecurityRuleActionResponseOutput{}) pulumi.RegisterOutputType(DnsSettingsOutput{}) pulumi.RegisterOutputType(DnsSettingsPtrOutput{}) pulumi.RegisterOutputType(DnsSettingsResponseOutput{}) @@ -62205,6 +61665,8 @@ func init() { pulumi.RegisterOutputType(IPConfigurationResponseOutput{}) pulumi.RegisterOutputType(IPConfigurationResponsePtrOutput{}) pulumi.RegisterOutputType(IPConfigurationResponseArrayOutput{}) + pulumi.RegisterOutputType(IPTrafficOutput{}) + pulumi.RegisterOutputType(IPTrafficResponseOutput{}) pulumi.RegisterOutputType(InboundEndpointIPConfigurationOutput{}) pulumi.RegisterOutputType(InboundEndpointIPConfigurationArrayOutput{}) pulumi.RegisterOutputType(InboundEndpointIPConfigurationResponseOutput{}) @@ -62217,6 +61679,7 @@ func init() { pulumi.RegisterOutputType(InboundNatRuleTypeArrayOutput{}) pulumi.RegisterOutputType(InboundNatRuleResponseOutput{}) pulumi.RegisterOutputType(InboundNatRuleResponseArrayOutput{}) + pulumi.RegisterOutputType(IntentContentResponseOutput{}) pulumi.RegisterOutputType(InterfaceEndpointResponseOutput{}) pulumi.RegisterOutputType(InterfaceEndpointResponsePtrOutput{}) pulumi.RegisterOutputType(InterfaceEndpointResponseArrayOutput{}) @@ -62224,6 +61687,9 @@ func init() { pulumi.RegisterOutputType(IpTagArrayOutput{}) pulumi.RegisterOutputType(IpTagResponseOutput{}) pulumi.RegisterOutputType(IpTagResponseArrayOutput{}) + pulumi.RegisterOutputType(IpamPoolPropertiesOutput{}) + pulumi.RegisterOutputType(IpamPoolPropertiesPtrOutput{}) + pulumi.RegisterOutputType(IpamPoolPropertiesResponseOutput{}) pulumi.RegisterOutputType(IpsecPolicyOutput{}) pulumi.RegisterOutputType(IpsecPolicyArrayOutput{}) pulumi.RegisterOutputType(IpsecPolicyResponseOutput{}) @@ -62346,6 +61812,10 @@ func init() { pulumi.RegisterOutputType(NetworkManagerDeploymentStatusResponseArrayOutput{}) pulumi.RegisterOutputType(NetworkManagerPropertiesNetworkManagerScopesOutput{}) pulumi.RegisterOutputType(NetworkManagerPropertiesResponseNetworkManagerScopesOutput{}) + pulumi.RegisterOutputType(NetworkManagerRoutingGroupItemOutput{}) + pulumi.RegisterOutputType(NetworkManagerRoutingGroupItemArrayOutput{}) + pulumi.RegisterOutputType(NetworkManagerRoutingGroupItemResponseOutput{}) + pulumi.RegisterOutputType(NetworkManagerRoutingGroupItemResponseArrayOutput{}) pulumi.RegisterOutputType(NetworkManagerSecurityGroupItemOutput{}) pulumi.RegisterOutputType(NetworkManagerSecurityGroupItemArrayOutput{}) pulumi.RegisterOutputType(NetworkManagerSecurityGroupItemResponseOutput{}) @@ -62436,22 +61906,4 @@ func init() { pulumi.RegisterOutputType(PolicySettingsResponsePtrOutput{}) pulumi.RegisterOutputType(PolicySettingsResponseLogScrubbingOutput{}) pulumi.RegisterOutputType(PolicySettingsResponseLogScrubbingPtrOutput{}) - pulumi.RegisterOutputType(PrivateDnsZoneConfigOutput{}) - pulumi.RegisterOutputType(PrivateDnsZoneConfigArrayOutput{}) - pulumi.RegisterOutputType(PrivateDnsZoneConfigResponseOutput{}) - pulumi.RegisterOutputType(PrivateDnsZoneConfigResponseArrayOutput{}) - pulumi.RegisterOutputType(PrivateEndpointConnectionResponseOutput{}) - pulumi.RegisterOutputType(PrivateEndpointConnectionResponseArrayOutput{}) - pulumi.RegisterOutputType(PrivateEndpointIPConfigurationOutput{}) - pulumi.RegisterOutputType(PrivateEndpointIPConfigurationArrayOutput{}) - pulumi.RegisterOutputType(PrivateEndpointIPConfigurationResponseOutput{}) - pulumi.RegisterOutputType(PrivateEndpointIPConfigurationResponseArrayOutput{}) - pulumi.RegisterOutputType(PrivateEndpointResponseOutput{}) - pulumi.RegisterOutputType(PrivateEndpointResponseArrayOutput{}) - pulumi.RegisterOutputType(PrivateLinkServiceTypeOutput{}) - pulumi.RegisterOutputType(PrivateLinkServiceTypePtrOutput{}) - pulumi.RegisterOutputType(PrivateLinkServiceConnectionOutput{}) - pulumi.RegisterOutputType(PrivateLinkServiceConnectionArrayOutput{}) - pulumi.RegisterOutputType(PrivateLinkServiceConnectionResponseOutput{}) - pulumi.RegisterOutputType(PrivateLinkServiceConnectionResponseArrayOutput{}) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes1.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes1.go index 5b9f750e1..e61fa9791 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes1.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/pulumiTypes1.go @@ -13,6 +13,1328 @@ import ( var _ = utilities.GetEnvOrDefault +// IpamPool association information. +type PoolAssociationResponse struct { + // List of assigned IP address prefixes in the IpamPool of the associated resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + // Creation time of the association. + CreatedAt string `pulumi:"createdAt"` + Description *string `pulumi:"description"` + // Total number of reserved IP addresses of the association. + NumberOfReservedIPAddresses string `pulumi:"numberOfReservedIPAddresses"` + // IpamPool id for which the resource is associated to. + PoolId *string `pulumi:"poolId"` + // Expire time for IP addresses reserved. + ReservationExpiresAt string `pulumi:"reservationExpiresAt"` + // List of reserved IP address prefixes in the IpamPool of the associated resource. + ReservedPrefixes []string `pulumi:"reservedPrefixes"` + // Resource id of the associated Azure resource. + ResourceId string `pulumi:"resourceId"` + // Total number of assigned IP addresses of the association. + TotalNumberOfIPAddresses string `pulumi:"totalNumberOfIPAddresses"` +} + +// IpamPool association information. +type PoolAssociationResponseOutput struct{ *pulumi.OutputState } + +func (PoolAssociationResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PoolAssociationResponse)(nil)).Elem() +} + +func (o PoolAssociationResponseOutput) ToPoolAssociationResponseOutput() PoolAssociationResponseOutput { + return o +} + +func (o PoolAssociationResponseOutput) ToPoolAssociationResponseOutputWithContext(ctx context.Context) PoolAssociationResponseOutput { + return o +} + +// List of assigned IP address prefixes in the IpamPool of the associated resource. +func (o PoolAssociationResponseOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v PoolAssociationResponse) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +// Creation time of the association. +func (o PoolAssociationResponseOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v PoolAssociationResponse) string { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o PoolAssociationResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v PoolAssociationResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Total number of reserved IP addresses of the association. +func (o PoolAssociationResponseOutput) NumberOfReservedIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v PoolAssociationResponse) string { return v.NumberOfReservedIPAddresses }).(pulumi.StringOutput) +} + +// IpamPool id for which the resource is associated to. +func (o PoolAssociationResponseOutput) PoolId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PoolAssociationResponse) *string { return v.PoolId }).(pulumi.StringPtrOutput) +} + +// Expire time for IP addresses reserved. +func (o PoolAssociationResponseOutput) ReservationExpiresAt() pulumi.StringOutput { + return o.ApplyT(func(v PoolAssociationResponse) string { return v.ReservationExpiresAt }).(pulumi.StringOutput) +} + +// List of reserved IP address prefixes in the IpamPool of the associated resource. +func (o PoolAssociationResponseOutput) ReservedPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v PoolAssociationResponse) []string { return v.ReservedPrefixes }).(pulumi.StringArrayOutput) +} + +// Resource id of the associated Azure resource. +func (o PoolAssociationResponseOutput) ResourceId() pulumi.StringOutput { + return o.ApplyT(func(v PoolAssociationResponse) string { return v.ResourceId }).(pulumi.StringOutput) +} + +// Total number of assigned IP addresses of the association. +func (o PoolAssociationResponseOutput) TotalNumberOfIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v PoolAssociationResponse) string { return v.TotalNumberOfIPAddresses }).(pulumi.StringOutput) +} + +type PoolAssociationResponseArrayOutput struct{ *pulumi.OutputState } + +func (PoolAssociationResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PoolAssociationResponse)(nil)).Elem() +} + +func (o PoolAssociationResponseArrayOutput) ToPoolAssociationResponseArrayOutput() PoolAssociationResponseArrayOutput { + return o +} + +func (o PoolAssociationResponseArrayOutput) ToPoolAssociationResponseArrayOutputWithContext(ctx context.Context) PoolAssociationResponseArrayOutput { + return o +} + +func (o PoolAssociationResponseArrayOutput) Index(i pulumi.IntInput) PoolAssociationResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PoolAssociationResponse { + return vs[0].([]PoolAssociationResponse)[vs[1].(int)] + }).(PoolAssociationResponseOutput) +} + +// PrivateDnsZoneConfig resource. +type PrivateDnsZoneConfig struct { + // Name of the resource that is unique within a resource group. This name can be used to access the resource. + Name *string `pulumi:"name"` + // The resource id of the private dns zone. + PrivateDnsZoneId *string `pulumi:"privateDnsZoneId"` +} + +// PrivateDnsZoneConfigInput is an input type that accepts PrivateDnsZoneConfigArgs and PrivateDnsZoneConfigOutput values. +// You can construct a concrete instance of `PrivateDnsZoneConfigInput` via: +// +// PrivateDnsZoneConfigArgs{...} +type PrivateDnsZoneConfigInput interface { + pulumi.Input + + ToPrivateDnsZoneConfigOutput() PrivateDnsZoneConfigOutput + ToPrivateDnsZoneConfigOutputWithContext(context.Context) PrivateDnsZoneConfigOutput +} + +// PrivateDnsZoneConfig resource. +type PrivateDnsZoneConfigArgs struct { + // Name of the resource that is unique within a resource group. This name can be used to access the resource. + Name pulumi.StringPtrInput `pulumi:"name"` + // The resource id of the private dns zone. + PrivateDnsZoneId pulumi.StringPtrInput `pulumi:"privateDnsZoneId"` +} + +func (PrivateDnsZoneConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateDnsZoneConfig)(nil)).Elem() +} + +func (i PrivateDnsZoneConfigArgs) ToPrivateDnsZoneConfigOutput() PrivateDnsZoneConfigOutput { + return i.ToPrivateDnsZoneConfigOutputWithContext(context.Background()) +} + +func (i PrivateDnsZoneConfigArgs) ToPrivateDnsZoneConfigOutputWithContext(ctx context.Context) PrivateDnsZoneConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateDnsZoneConfigOutput) +} + +// PrivateDnsZoneConfigArrayInput is an input type that accepts PrivateDnsZoneConfigArray and PrivateDnsZoneConfigArrayOutput values. +// You can construct a concrete instance of `PrivateDnsZoneConfigArrayInput` via: +// +// PrivateDnsZoneConfigArray{ PrivateDnsZoneConfigArgs{...} } +type PrivateDnsZoneConfigArrayInput interface { + pulumi.Input + + ToPrivateDnsZoneConfigArrayOutput() PrivateDnsZoneConfigArrayOutput + ToPrivateDnsZoneConfigArrayOutputWithContext(context.Context) PrivateDnsZoneConfigArrayOutput +} + +type PrivateDnsZoneConfigArray []PrivateDnsZoneConfigInput + +func (PrivateDnsZoneConfigArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateDnsZoneConfig)(nil)).Elem() +} + +func (i PrivateDnsZoneConfigArray) ToPrivateDnsZoneConfigArrayOutput() PrivateDnsZoneConfigArrayOutput { + return i.ToPrivateDnsZoneConfigArrayOutputWithContext(context.Background()) +} + +func (i PrivateDnsZoneConfigArray) ToPrivateDnsZoneConfigArrayOutputWithContext(ctx context.Context) PrivateDnsZoneConfigArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateDnsZoneConfigArrayOutput) +} + +// PrivateDnsZoneConfig resource. +type PrivateDnsZoneConfigOutput struct{ *pulumi.OutputState } + +func (PrivateDnsZoneConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateDnsZoneConfig)(nil)).Elem() +} + +func (o PrivateDnsZoneConfigOutput) ToPrivateDnsZoneConfigOutput() PrivateDnsZoneConfigOutput { + return o +} + +func (o PrivateDnsZoneConfigOutput) ToPrivateDnsZoneConfigOutputWithContext(ctx context.Context) PrivateDnsZoneConfigOutput { + return o +} + +// Name of the resource that is unique within a resource group. This name can be used to access the resource. +func (o PrivateDnsZoneConfigOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateDnsZoneConfig) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// The resource id of the private dns zone. +func (o PrivateDnsZoneConfigOutput) PrivateDnsZoneId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateDnsZoneConfig) *string { return v.PrivateDnsZoneId }).(pulumi.StringPtrOutput) +} + +type PrivateDnsZoneConfigArrayOutput struct{ *pulumi.OutputState } + +func (PrivateDnsZoneConfigArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateDnsZoneConfig)(nil)).Elem() +} + +func (o PrivateDnsZoneConfigArrayOutput) ToPrivateDnsZoneConfigArrayOutput() PrivateDnsZoneConfigArrayOutput { + return o +} + +func (o PrivateDnsZoneConfigArrayOutput) ToPrivateDnsZoneConfigArrayOutputWithContext(ctx context.Context) PrivateDnsZoneConfigArrayOutput { + return o +} + +func (o PrivateDnsZoneConfigArrayOutput) Index(i pulumi.IntInput) PrivateDnsZoneConfigOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateDnsZoneConfig { + return vs[0].([]PrivateDnsZoneConfig)[vs[1].(int)] + }).(PrivateDnsZoneConfigOutput) +} + +// PrivateDnsZoneConfig resource. +type PrivateDnsZoneConfigResponse struct { + // Name of the resource that is unique within a resource group. This name can be used to access the resource. + Name *string `pulumi:"name"` + // The resource id of the private dns zone. + PrivateDnsZoneId *string `pulumi:"privateDnsZoneId"` + // A collection of information regarding a recordSet, holding information to identify private resources. + RecordSets []RecordSetResponse `pulumi:"recordSets"` +} + +// PrivateDnsZoneConfig resource. +type PrivateDnsZoneConfigResponseOutput struct{ *pulumi.OutputState } + +func (PrivateDnsZoneConfigResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateDnsZoneConfigResponse)(nil)).Elem() +} + +func (o PrivateDnsZoneConfigResponseOutput) ToPrivateDnsZoneConfigResponseOutput() PrivateDnsZoneConfigResponseOutput { + return o +} + +func (o PrivateDnsZoneConfigResponseOutput) ToPrivateDnsZoneConfigResponseOutputWithContext(ctx context.Context) PrivateDnsZoneConfigResponseOutput { + return o +} + +// Name of the resource that is unique within a resource group. This name can be used to access the resource. +func (o PrivateDnsZoneConfigResponseOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateDnsZoneConfigResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// The resource id of the private dns zone. +func (o PrivateDnsZoneConfigResponseOutput) PrivateDnsZoneId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateDnsZoneConfigResponse) *string { return v.PrivateDnsZoneId }).(pulumi.StringPtrOutput) +} + +// A collection of information regarding a recordSet, holding information to identify private resources. +func (o PrivateDnsZoneConfigResponseOutput) RecordSets() RecordSetResponseArrayOutput { + return o.ApplyT(func(v PrivateDnsZoneConfigResponse) []RecordSetResponse { return v.RecordSets }).(RecordSetResponseArrayOutput) +} + +type PrivateDnsZoneConfigResponseArrayOutput struct{ *pulumi.OutputState } + +func (PrivateDnsZoneConfigResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateDnsZoneConfigResponse)(nil)).Elem() +} + +func (o PrivateDnsZoneConfigResponseArrayOutput) ToPrivateDnsZoneConfigResponseArrayOutput() PrivateDnsZoneConfigResponseArrayOutput { + return o +} + +func (o PrivateDnsZoneConfigResponseArrayOutput) ToPrivateDnsZoneConfigResponseArrayOutputWithContext(ctx context.Context) PrivateDnsZoneConfigResponseArrayOutput { + return o +} + +func (o PrivateDnsZoneConfigResponseArrayOutput) Index(i pulumi.IntInput) PrivateDnsZoneConfigResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateDnsZoneConfigResponse { + return vs[0].([]PrivateDnsZoneConfigResponse)[vs[1].(int)] + }).(PrivateDnsZoneConfigResponseOutput) +} + +// PrivateEndpointConnection resource. +type PrivateEndpointConnectionResponse struct { + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // Resource ID. + Id *string `pulumi:"id"` + // The consumer link id. + LinkIdentifier string `pulumi:"linkIdentifier"` + // The name of the resource that is unique within a resource group. This name can be used to access the resource. + Name *string `pulumi:"name"` + // The resource of private end point. + PrivateEndpoint PrivateEndpointResponse `pulumi:"privateEndpoint"` + // The location of the private endpoint. + PrivateEndpointLocation string `pulumi:"privateEndpointLocation"` + // A collection of information about the state of the connection between service consumer and provider. + PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionStateResponse `pulumi:"privateLinkServiceConnectionState"` + // The provisioning state of the private endpoint connection resource. + ProvisioningState string `pulumi:"provisioningState"` + // The resource type. + Type string `pulumi:"type"` +} + +// Defaults sets the appropriate defaults for PrivateEndpointConnectionResponse +func (val *PrivateEndpointConnectionResponse) Defaults() *PrivateEndpointConnectionResponse { + if val == nil { + return nil + } + tmp := *val + tmp.PrivateEndpoint = *tmp.PrivateEndpoint.Defaults() + + return &tmp +} + +// PrivateEndpointConnection resource. +type PrivateEndpointConnectionResponseOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointConnectionResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateEndpointConnectionResponse)(nil)).Elem() +} + +func (o PrivateEndpointConnectionResponseOutput) ToPrivateEndpointConnectionResponseOutput() PrivateEndpointConnectionResponseOutput { + return o +} + +func (o PrivateEndpointConnectionResponseOutput) ToPrivateEndpointConnectionResponseOutputWithContext(ctx context.Context) PrivateEndpointConnectionResponseOutput { + return o +} + +// A unique read-only string that changes whenever the resource is updated. +func (o PrivateEndpointConnectionResponseOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.Etag }).(pulumi.StringOutput) +} + +// Resource ID. +func (o PrivateEndpointConnectionResponseOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// The consumer link id. +func (o PrivateEndpointConnectionResponseOutput) LinkIdentifier() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.LinkIdentifier }).(pulumi.StringOutput) +} + +// The name of the resource that is unique within a resource group. This name can be used to access the resource. +func (o PrivateEndpointConnectionResponseOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// The resource of private end point. +func (o PrivateEndpointConnectionResponseOutput) PrivateEndpoint() PrivateEndpointResponseOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) PrivateEndpointResponse { return v.PrivateEndpoint }).(PrivateEndpointResponseOutput) +} + +// The location of the private endpoint. +func (o PrivateEndpointConnectionResponseOutput) PrivateEndpointLocation() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.PrivateEndpointLocation }).(pulumi.StringOutput) +} + +// A collection of information about the state of the connection between service consumer and provider. +func (o PrivateEndpointConnectionResponseOutput) PrivateLinkServiceConnectionState() PrivateLinkServiceConnectionStateResponsePtrOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) *PrivateLinkServiceConnectionStateResponse { + return v.PrivateLinkServiceConnectionState + }).(PrivateLinkServiceConnectionStateResponsePtrOutput) +} + +// The provisioning state of the private endpoint connection resource. +func (o PrivateEndpointConnectionResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The resource type. +func (o PrivateEndpointConnectionResponseOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointConnectionResponse) string { return v.Type }).(pulumi.StringOutput) +} + +type PrivateEndpointConnectionResponseArrayOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointConnectionResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateEndpointConnectionResponse)(nil)).Elem() +} + +func (o PrivateEndpointConnectionResponseArrayOutput) ToPrivateEndpointConnectionResponseArrayOutput() PrivateEndpointConnectionResponseArrayOutput { + return o +} + +func (o PrivateEndpointConnectionResponseArrayOutput) ToPrivateEndpointConnectionResponseArrayOutputWithContext(ctx context.Context) PrivateEndpointConnectionResponseArrayOutput { + return o +} + +func (o PrivateEndpointConnectionResponseArrayOutput) Index(i pulumi.IntInput) PrivateEndpointConnectionResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointConnectionResponse { + return vs[0].([]PrivateEndpointConnectionResponse)[vs[1].(int)] + }).(PrivateEndpointConnectionResponseOutput) +} + +// An IP Configuration of the private endpoint. +type PrivateEndpointIPConfiguration struct { + // The ID of a group obtained from the remote resource that this private endpoint should connect to. + GroupId *string `pulumi:"groupId"` + // The member name of a group obtained from the remote resource that this private endpoint should connect to. + MemberName *string `pulumi:"memberName"` + // The name of the resource that is unique within a resource group. + Name *string `pulumi:"name"` + // A private ip address obtained from the private endpoint's subnet. + PrivateIPAddress *string `pulumi:"privateIPAddress"` +} + +// PrivateEndpointIPConfigurationInput is an input type that accepts PrivateEndpointIPConfigurationArgs and PrivateEndpointIPConfigurationOutput values. +// You can construct a concrete instance of `PrivateEndpointIPConfigurationInput` via: +// +// PrivateEndpointIPConfigurationArgs{...} +type PrivateEndpointIPConfigurationInput interface { + pulumi.Input + + ToPrivateEndpointIPConfigurationOutput() PrivateEndpointIPConfigurationOutput + ToPrivateEndpointIPConfigurationOutputWithContext(context.Context) PrivateEndpointIPConfigurationOutput +} + +// An IP Configuration of the private endpoint. +type PrivateEndpointIPConfigurationArgs struct { + // The ID of a group obtained from the remote resource that this private endpoint should connect to. + GroupId pulumi.StringPtrInput `pulumi:"groupId"` + // The member name of a group obtained from the remote resource that this private endpoint should connect to. + MemberName pulumi.StringPtrInput `pulumi:"memberName"` + // The name of the resource that is unique within a resource group. + Name pulumi.StringPtrInput `pulumi:"name"` + // A private ip address obtained from the private endpoint's subnet. + PrivateIPAddress pulumi.StringPtrInput `pulumi:"privateIPAddress"` +} + +func (PrivateEndpointIPConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateEndpointIPConfiguration)(nil)).Elem() +} + +func (i PrivateEndpointIPConfigurationArgs) ToPrivateEndpointIPConfigurationOutput() PrivateEndpointIPConfigurationOutput { + return i.ToPrivateEndpointIPConfigurationOutputWithContext(context.Background()) +} + +func (i PrivateEndpointIPConfigurationArgs) ToPrivateEndpointIPConfigurationOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateEndpointIPConfigurationOutput) +} + +// PrivateEndpointIPConfigurationArrayInput is an input type that accepts PrivateEndpointIPConfigurationArray and PrivateEndpointIPConfigurationArrayOutput values. +// You can construct a concrete instance of `PrivateEndpointIPConfigurationArrayInput` via: +// +// PrivateEndpointIPConfigurationArray{ PrivateEndpointIPConfigurationArgs{...} } +type PrivateEndpointIPConfigurationArrayInput interface { + pulumi.Input + + ToPrivateEndpointIPConfigurationArrayOutput() PrivateEndpointIPConfigurationArrayOutput + ToPrivateEndpointIPConfigurationArrayOutputWithContext(context.Context) PrivateEndpointIPConfigurationArrayOutput +} + +type PrivateEndpointIPConfigurationArray []PrivateEndpointIPConfigurationInput + +func (PrivateEndpointIPConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateEndpointIPConfiguration)(nil)).Elem() +} + +func (i PrivateEndpointIPConfigurationArray) ToPrivateEndpointIPConfigurationArrayOutput() PrivateEndpointIPConfigurationArrayOutput { + return i.ToPrivateEndpointIPConfigurationArrayOutputWithContext(context.Background()) +} + +func (i PrivateEndpointIPConfigurationArray) ToPrivateEndpointIPConfigurationArrayOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateEndpointIPConfigurationArrayOutput) +} + +// An IP Configuration of the private endpoint. +type PrivateEndpointIPConfigurationOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointIPConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateEndpointIPConfiguration)(nil)).Elem() +} + +func (o PrivateEndpointIPConfigurationOutput) ToPrivateEndpointIPConfigurationOutput() PrivateEndpointIPConfigurationOutput { + return o +} + +func (o PrivateEndpointIPConfigurationOutput) ToPrivateEndpointIPConfigurationOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationOutput { + return o +} + +// The ID of a group obtained from the remote resource that this private endpoint should connect to. +func (o PrivateEndpointIPConfigurationOutput) GroupId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.GroupId }).(pulumi.StringPtrOutput) +} + +// The member name of a group obtained from the remote resource that this private endpoint should connect to. +func (o PrivateEndpointIPConfigurationOutput) MemberName() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.MemberName }).(pulumi.StringPtrOutput) +} + +// The name of the resource that is unique within a resource group. +func (o PrivateEndpointIPConfigurationOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// A private ip address obtained from the private endpoint's subnet. +func (o PrivateEndpointIPConfigurationOutput) PrivateIPAddress() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfiguration) *string { return v.PrivateIPAddress }).(pulumi.StringPtrOutput) +} + +type PrivateEndpointIPConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointIPConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateEndpointIPConfiguration)(nil)).Elem() +} + +func (o PrivateEndpointIPConfigurationArrayOutput) ToPrivateEndpointIPConfigurationArrayOutput() PrivateEndpointIPConfigurationArrayOutput { + return o +} + +func (o PrivateEndpointIPConfigurationArrayOutput) ToPrivateEndpointIPConfigurationArrayOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationArrayOutput { + return o +} + +func (o PrivateEndpointIPConfigurationArrayOutput) Index(i pulumi.IntInput) PrivateEndpointIPConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointIPConfiguration { + return vs[0].([]PrivateEndpointIPConfiguration)[vs[1].(int)] + }).(PrivateEndpointIPConfigurationOutput) +} + +// An IP Configuration of the private endpoint. +type PrivateEndpointIPConfigurationResponse struct { + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // The ID of a group obtained from the remote resource that this private endpoint should connect to. + GroupId *string `pulumi:"groupId"` + // The member name of a group obtained from the remote resource that this private endpoint should connect to. + MemberName *string `pulumi:"memberName"` + // The name of the resource that is unique within a resource group. + Name *string `pulumi:"name"` + // A private ip address obtained from the private endpoint's subnet. + PrivateIPAddress *string `pulumi:"privateIPAddress"` + // The resource type. + Type string `pulumi:"type"` +} + +// An IP Configuration of the private endpoint. +type PrivateEndpointIPConfigurationResponseOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointIPConfigurationResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateEndpointIPConfigurationResponse)(nil)).Elem() +} + +func (o PrivateEndpointIPConfigurationResponseOutput) ToPrivateEndpointIPConfigurationResponseOutput() PrivateEndpointIPConfigurationResponseOutput { + return o +} + +func (o PrivateEndpointIPConfigurationResponseOutput) ToPrivateEndpointIPConfigurationResponseOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationResponseOutput { + return o +} + +// A unique read-only string that changes whenever the resource is updated. +func (o PrivateEndpointIPConfigurationResponseOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) string { return v.Etag }).(pulumi.StringOutput) +} + +// The ID of a group obtained from the remote resource that this private endpoint should connect to. +func (o PrivateEndpointIPConfigurationResponseOutput) GroupId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.GroupId }).(pulumi.StringPtrOutput) +} + +// The member name of a group obtained from the remote resource that this private endpoint should connect to. +func (o PrivateEndpointIPConfigurationResponseOutput) MemberName() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.MemberName }).(pulumi.StringPtrOutput) +} + +// The name of the resource that is unique within a resource group. +func (o PrivateEndpointIPConfigurationResponseOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// A private ip address obtained from the private endpoint's subnet. +func (o PrivateEndpointIPConfigurationResponseOutput) PrivateIPAddress() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) *string { return v.PrivateIPAddress }).(pulumi.StringPtrOutput) +} + +// The resource type. +func (o PrivateEndpointIPConfigurationResponseOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointIPConfigurationResponse) string { return v.Type }).(pulumi.StringOutput) +} + +type PrivateEndpointIPConfigurationResponseArrayOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointIPConfigurationResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateEndpointIPConfigurationResponse)(nil)).Elem() +} + +func (o PrivateEndpointIPConfigurationResponseArrayOutput) ToPrivateEndpointIPConfigurationResponseArrayOutput() PrivateEndpointIPConfigurationResponseArrayOutput { + return o +} + +func (o PrivateEndpointIPConfigurationResponseArrayOutput) ToPrivateEndpointIPConfigurationResponseArrayOutputWithContext(ctx context.Context) PrivateEndpointIPConfigurationResponseArrayOutput { + return o +} + +func (o PrivateEndpointIPConfigurationResponseArrayOutput) Index(i pulumi.IntInput) PrivateEndpointIPConfigurationResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointIPConfigurationResponse { + return vs[0].([]PrivateEndpointIPConfigurationResponse)[vs[1].(int)] + }).(PrivateEndpointIPConfigurationResponseOutput) +} + +// Private endpoint resource. +type PrivateEndpointResponse struct { + // Application security groups in which the private endpoint IP configuration is included. + ApplicationSecurityGroups []ApplicationSecurityGroupResponse `pulumi:"applicationSecurityGroups"` + // An array of custom dns configurations. + CustomDnsConfigs []CustomDnsConfigPropertiesFormatResponse `pulumi:"customDnsConfigs"` + // The custom name of the network interface attached to the private endpoint. + CustomNetworkInterfaceName *string `pulumi:"customNetworkInterfaceName"` + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // The extended location of the load balancer. + ExtendedLocation *ExtendedLocationResponse `pulumi:"extendedLocation"` + // Resource ID. + Id *string `pulumi:"id"` + // A list of IP configurations of the private endpoint. This will be used to map to the First Party Service's endpoints. + IpConfigurations []PrivateEndpointIPConfigurationResponse `pulumi:"ipConfigurations"` + // Resource location. + Location *string `pulumi:"location"` + // A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource. + ManualPrivateLinkServiceConnections []PrivateLinkServiceConnectionResponse `pulumi:"manualPrivateLinkServiceConnections"` + // Resource name. + Name string `pulumi:"name"` + // An array of references to the network interfaces created for this private endpoint. + NetworkInterfaces []NetworkInterfaceResponse `pulumi:"networkInterfaces"` + // A grouping of information about the connection to the remote resource. + PrivateLinkServiceConnections []PrivateLinkServiceConnectionResponse `pulumi:"privateLinkServiceConnections"` + // The provisioning state of the private endpoint resource. + ProvisioningState string `pulumi:"provisioningState"` + // The ID of the subnet from which the private IP will be allocated. + Subnet *SubnetResponse `pulumi:"subnet"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // Resource type. + Type string `pulumi:"type"` +} + +// Defaults sets the appropriate defaults for PrivateEndpointResponse +func (val *PrivateEndpointResponse) Defaults() *PrivateEndpointResponse { + if val == nil { + return nil + } + tmp := *val + tmp.Subnet = tmp.Subnet.Defaults() + + return &tmp +} + +// Private endpoint resource. +type PrivateEndpointResponseOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateEndpointResponse)(nil)).Elem() +} + +func (o PrivateEndpointResponseOutput) ToPrivateEndpointResponseOutput() PrivateEndpointResponseOutput { + return o +} + +func (o PrivateEndpointResponseOutput) ToPrivateEndpointResponseOutputWithContext(ctx context.Context) PrivateEndpointResponseOutput { + return o +} + +// Application security groups in which the private endpoint IP configuration is included. +func (o PrivateEndpointResponseOutput) ApplicationSecurityGroups() ApplicationSecurityGroupResponseArrayOutput { + return o.ApplyT(func(v PrivateEndpointResponse) []ApplicationSecurityGroupResponse { return v.ApplicationSecurityGroups }).(ApplicationSecurityGroupResponseArrayOutput) +} + +// An array of custom dns configurations. +func (o PrivateEndpointResponseOutput) CustomDnsConfigs() CustomDnsConfigPropertiesFormatResponseArrayOutput { + return o.ApplyT(func(v PrivateEndpointResponse) []CustomDnsConfigPropertiesFormatResponse { return v.CustomDnsConfigs }).(CustomDnsConfigPropertiesFormatResponseArrayOutput) +} + +// The custom name of the network interface attached to the private endpoint. +func (o PrivateEndpointResponseOutput) CustomNetworkInterfaceName() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointResponse) *string { return v.CustomNetworkInterfaceName }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o PrivateEndpointResponseOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointResponse) string { return v.Etag }).(pulumi.StringOutput) +} + +// The extended location of the load balancer. +func (o PrivateEndpointResponseOutput) ExtendedLocation() ExtendedLocationResponsePtrOutput { + return o.ApplyT(func(v PrivateEndpointResponse) *ExtendedLocationResponse { return v.ExtendedLocation }).(ExtendedLocationResponsePtrOutput) +} + +// Resource ID. +func (o PrivateEndpointResponseOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointResponse) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// A list of IP configurations of the private endpoint. This will be used to map to the First Party Service's endpoints. +func (o PrivateEndpointResponseOutput) IpConfigurations() PrivateEndpointIPConfigurationResponseArrayOutput { + return o.ApplyT(func(v PrivateEndpointResponse) []PrivateEndpointIPConfigurationResponse { return v.IpConfigurations }).(PrivateEndpointIPConfigurationResponseArrayOutput) +} + +// Resource location. +func (o PrivateEndpointResponseOutput) Location() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateEndpointResponse) *string { return v.Location }).(pulumi.StringPtrOutput) +} + +// A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource. +func (o PrivateEndpointResponseOutput) ManualPrivateLinkServiceConnections() PrivateLinkServiceConnectionResponseArrayOutput { + return o.ApplyT(func(v PrivateEndpointResponse) []PrivateLinkServiceConnectionResponse { + return v.ManualPrivateLinkServiceConnections + }).(PrivateLinkServiceConnectionResponseArrayOutput) +} + +// Resource name. +func (o PrivateEndpointResponseOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointResponse) string { return v.Name }).(pulumi.StringOutput) +} + +// An array of references to the network interfaces created for this private endpoint. +func (o PrivateEndpointResponseOutput) NetworkInterfaces() NetworkInterfaceResponseArrayOutput { + return o.ApplyT(func(v PrivateEndpointResponse) []NetworkInterfaceResponse { return v.NetworkInterfaces }).(NetworkInterfaceResponseArrayOutput) +} + +// A grouping of information about the connection to the remote resource. +func (o PrivateEndpointResponseOutput) PrivateLinkServiceConnections() PrivateLinkServiceConnectionResponseArrayOutput { + return o.ApplyT(func(v PrivateEndpointResponse) []PrivateLinkServiceConnectionResponse { + return v.PrivateLinkServiceConnections + }).(PrivateLinkServiceConnectionResponseArrayOutput) +} + +// The provisioning state of the private endpoint resource. +func (o PrivateEndpointResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The ID of the subnet from which the private IP will be allocated. +func (o PrivateEndpointResponseOutput) Subnet() SubnetResponsePtrOutput { + return o.ApplyT(func(v PrivateEndpointResponse) *SubnetResponse { return v.Subnet }).(SubnetResponsePtrOutput) +} + +// Resource tags. +func (o PrivateEndpointResponseOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v PrivateEndpointResponse) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// Resource type. +func (o PrivateEndpointResponseOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v PrivateEndpointResponse) string { return v.Type }).(pulumi.StringOutput) +} + +type PrivateEndpointResponseArrayOutput struct{ *pulumi.OutputState } + +func (PrivateEndpointResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateEndpointResponse)(nil)).Elem() +} + +func (o PrivateEndpointResponseArrayOutput) ToPrivateEndpointResponseArrayOutput() PrivateEndpointResponseArrayOutput { + return o +} + +func (o PrivateEndpointResponseArrayOutput) ToPrivateEndpointResponseArrayOutputWithContext(ctx context.Context) PrivateEndpointResponseArrayOutput { + return o +} + +func (o PrivateEndpointResponseArrayOutput) Index(i pulumi.IntInput) PrivateEndpointResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateEndpointResponse { + return vs[0].([]PrivateEndpointResponse)[vs[1].(int)] + }).(PrivateEndpointResponseOutput) +} + +// Private link service resource. +type PrivateLinkServiceType struct { + // The auto-approval list of the private link service. + AutoApproval *PrivateLinkServicePropertiesAutoApproval `pulumi:"autoApproval"` + // Whether the private link service is enabled for proxy protocol or not. + EnableProxyProtocol *bool `pulumi:"enableProxyProtocol"` + // The extended location of the load balancer. + ExtendedLocation *ExtendedLocation `pulumi:"extendedLocation"` + // The list of Fqdn. + Fqdns []string `pulumi:"fqdns"` + // Resource ID. + Id *string `pulumi:"id"` + // An array of private link service IP configurations. + IpConfigurations []PrivateLinkServiceIpConfiguration `pulumi:"ipConfigurations"` + // An array of references to the load balancer IP configurations. + LoadBalancerFrontendIpConfigurations []FrontendIPConfiguration `pulumi:"loadBalancerFrontendIpConfigurations"` + // Resource location. + Location *string `pulumi:"location"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // The visibility list of the private link service. + Visibility *PrivateLinkServicePropertiesVisibility `pulumi:"visibility"` +} + +// PrivateLinkServiceTypeInput is an input type that accepts PrivateLinkServiceTypeArgs and PrivateLinkServiceTypeOutput values. +// You can construct a concrete instance of `PrivateLinkServiceTypeInput` via: +// +// PrivateLinkServiceTypeArgs{...} +type PrivateLinkServiceTypeInput interface { + pulumi.Input + + ToPrivateLinkServiceTypeOutput() PrivateLinkServiceTypeOutput + ToPrivateLinkServiceTypeOutputWithContext(context.Context) PrivateLinkServiceTypeOutput +} + +// Private link service resource. +type PrivateLinkServiceTypeArgs struct { + // The auto-approval list of the private link service. + AutoApproval PrivateLinkServicePropertiesAutoApprovalPtrInput `pulumi:"autoApproval"` + // Whether the private link service is enabled for proxy protocol or not. + EnableProxyProtocol pulumi.BoolPtrInput `pulumi:"enableProxyProtocol"` + // The extended location of the load balancer. + ExtendedLocation ExtendedLocationPtrInput `pulumi:"extendedLocation"` + // The list of Fqdn. + Fqdns pulumi.StringArrayInput `pulumi:"fqdns"` + // Resource ID. + Id pulumi.StringPtrInput `pulumi:"id"` + // An array of private link service IP configurations. + IpConfigurations PrivateLinkServiceIpConfigurationArrayInput `pulumi:"ipConfigurations"` + // An array of references to the load balancer IP configurations. + LoadBalancerFrontendIpConfigurations FrontendIPConfigurationArrayInput `pulumi:"loadBalancerFrontendIpConfigurations"` + // Resource location. + Location pulumi.StringPtrInput `pulumi:"location"` + // Resource tags. + Tags pulumi.StringMapInput `pulumi:"tags"` + // The visibility list of the private link service. + Visibility PrivateLinkServicePropertiesVisibilityPtrInput `pulumi:"visibility"` +} + +func (PrivateLinkServiceTypeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateLinkServiceType)(nil)).Elem() +} + +func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypeOutput() PrivateLinkServiceTypeOutput { + return i.ToPrivateLinkServiceTypeOutputWithContext(context.Background()) +} + +func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypeOutputWithContext(ctx context.Context) PrivateLinkServiceTypeOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceTypeOutput) +} + +func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { + return i.ToPrivateLinkServiceTypePtrOutputWithContext(context.Background()) +} + +func (i PrivateLinkServiceTypeArgs) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceTypeOutput).ToPrivateLinkServiceTypePtrOutputWithContext(ctx) +} + +// PrivateLinkServiceTypePtrInput is an input type that accepts PrivateLinkServiceTypeArgs, PrivateLinkServiceTypePtr and PrivateLinkServiceTypePtrOutput values. +// You can construct a concrete instance of `PrivateLinkServiceTypePtrInput` via: +// +// PrivateLinkServiceTypeArgs{...} +// +// or: +// +// nil +type PrivateLinkServiceTypePtrInput interface { + pulumi.Input + + ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput + ToPrivateLinkServiceTypePtrOutputWithContext(context.Context) PrivateLinkServiceTypePtrOutput +} + +type privateLinkServiceTypePtrType PrivateLinkServiceTypeArgs + +func PrivateLinkServiceTypePtr(v *PrivateLinkServiceTypeArgs) PrivateLinkServiceTypePtrInput { + return (*privateLinkServiceTypePtrType)(v) +} + +func (*privateLinkServiceTypePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**PrivateLinkServiceType)(nil)).Elem() +} + +func (i *privateLinkServiceTypePtrType) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { + return i.ToPrivateLinkServiceTypePtrOutputWithContext(context.Background()) +} + +func (i *privateLinkServiceTypePtrType) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceTypePtrOutput) +} + +// Private link service resource. +type PrivateLinkServiceTypeOutput struct{ *pulumi.OutputState } + +func (PrivateLinkServiceTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateLinkServiceType)(nil)).Elem() +} + +func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypeOutput() PrivateLinkServiceTypeOutput { + return o +} + +func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypeOutputWithContext(ctx context.Context) PrivateLinkServiceTypeOutput { + return o +} + +func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { + return o.ToPrivateLinkServiceTypePtrOutputWithContext(context.Background()) +} + +func (o PrivateLinkServiceTypeOutput) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v PrivateLinkServiceType) *PrivateLinkServiceType { + return &v + }).(PrivateLinkServiceTypePtrOutput) +} + +// The auto-approval list of the private link service. +func (o PrivateLinkServiceTypeOutput) AutoApproval() PrivateLinkServicePropertiesAutoApprovalPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceType) *PrivateLinkServicePropertiesAutoApproval { return v.AutoApproval }).(PrivateLinkServicePropertiesAutoApprovalPtrOutput) +} + +// Whether the private link service is enabled for proxy protocol or not. +func (o PrivateLinkServiceTypeOutput) EnableProxyProtocol() pulumi.BoolPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceType) *bool { return v.EnableProxyProtocol }).(pulumi.BoolPtrOutput) +} + +// The extended location of the load balancer. +func (o PrivateLinkServiceTypeOutput) ExtendedLocation() ExtendedLocationPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceType) *ExtendedLocation { return v.ExtendedLocation }).(ExtendedLocationPtrOutput) +} + +// The list of Fqdn. +func (o PrivateLinkServiceTypeOutput) Fqdns() pulumi.StringArrayOutput { + return o.ApplyT(func(v PrivateLinkServiceType) []string { return v.Fqdns }).(pulumi.StringArrayOutput) +} + +// Resource ID. +func (o PrivateLinkServiceTypeOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceType) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// An array of private link service IP configurations. +func (o PrivateLinkServiceTypeOutput) IpConfigurations() PrivateLinkServiceIpConfigurationArrayOutput { + return o.ApplyT(func(v PrivateLinkServiceType) []PrivateLinkServiceIpConfiguration { return v.IpConfigurations }).(PrivateLinkServiceIpConfigurationArrayOutput) +} + +// An array of references to the load balancer IP configurations. +func (o PrivateLinkServiceTypeOutput) LoadBalancerFrontendIpConfigurations() FrontendIPConfigurationArrayOutput { + return o.ApplyT(func(v PrivateLinkServiceType) []FrontendIPConfiguration { + return v.LoadBalancerFrontendIpConfigurations + }).(FrontendIPConfigurationArrayOutput) +} + +// Resource location. +func (o PrivateLinkServiceTypeOutput) Location() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceType) *string { return v.Location }).(pulumi.StringPtrOutput) +} + +// Resource tags. +func (o PrivateLinkServiceTypeOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v PrivateLinkServiceType) map[string]string { return v.Tags }).(pulumi.StringMapOutput) +} + +// The visibility list of the private link service. +func (o PrivateLinkServiceTypeOutput) Visibility() PrivateLinkServicePropertiesVisibilityPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceType) *PrivateLinkServicePropertiesVisibility { return v.Visibility }).(PrivateLinkServicePropertiesVisibilityPtrOutput) +} + +type PrivateLinkServiceTypePtrOutput struct{ *pulumi.OutputState } + +func (PrivateLinkServiceTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**PrivateLinkServiceType)(nil)).Elem() +} + +func (o PrivateLinkServiceTypePtrOutput) ToPrivateLinkServiceTypePtrOutput() PrivateLinkServiceTypePtrOutput { + return o +} + +func (o PrivateLinkServiceTypePtrOutput) ToPrivateLinkServiceTypePtrOutputWithContext(ctx context.Context) PrivateLinkServiceTypePtrOutput { + return o +} + +func (o PrivateLinkServiceTypePtrOutput) Elem() PrivateLinkServiceTypeOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) PrivateLinkServiceType { + if v != nil { + return *v + } + var ret PrivateLinkServiceType + return ret + }).(PrivateLinkServiceTypeOutput) +} + +// The auto-approval list of the private link service. +func (o PrivateLinkServiceTypePtrOutput) AutoApproval() PrivateLinkServicePropertiesAutoApprovalPtrOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) *PrivateLinkServicePropertiesAutoApproval { + if v == nil { + return nil + } + return v.AutoApproval + }).(PrivateLinkServicePropertiesAutoApprovalPtrOutput) +} + +// Whether the private link service is enabled for proxy protocol or not. +func (o PrivateLinkServiceTypePtrOutput) EnableProxyProtocol() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) *bool { + if v == nil { + return nil + } + return v.EnableProxyProtocol + }).(pulumi.BoolPtrOutput) +} + +// The extended location of the load balancer. +func (o PrivateLinkServiceTypePtrOutput) ExtendedLocation() ExtendedLocationPtrOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) *ExtendedLocation { + if v == nil { + return nil + } + return v.ExtendedLocation + }).(ExtendedLocationPtrOutput) +} + +// The list of Fqdn. +func (o PrivateLinkServiceTypePtrOutput) Fqdns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) []string { + if v == nil { + return nil + } + return v.Fqdns + }).(pulumi.StringArrayOutput) +} + +// Resource ID. +func (o PrivateLinkServiceTypePtrOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) *string { + if v == nil { + return nil + } + return v.Id + }).(pulumi.StringPtrOutput) +} + +// An array of private link service IP configurations. +func (o PrivateLinkServiceTypePtrOutput) IpConfigurations() PrivateLinkServiceIpConfigurationArrayOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) []PrivateLinkServiceIpConfiguration { + if v == nil { + return nil + } + return v.IpConfigurations + }).(PrivateLinkServiceIpConfigurationArrayOutput) +} + +// An array of references to the load balancer IP configurations. +func (o PrivateLinkServiceTypePtrOutput) LoadBalancerFrontendIpConfigurations() FrontendIPConfigurationArrayOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) []FrontendIPConfiguration { + if v == nil { + return nil + } + return v.LoadBalancerFrontendIpConfigurations + }).(FrontendIPConfigurationArrayOutput) +} + +// Resource location. +func (o PrivateLinkServiceTypePtrOutput) Location() pulumi.StringPtrOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) *string { + if v == nil { + return nil + } + return v.Location + }).(pulumi.StringPtrOutput) +} + +// Resource tags. +func (o PrivateLinkServiceTypePtrOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) map[string]string { + if v == nil { + return nil + } + return v.Tags + }).(pulumi.StringMapOutput) +} + +// The visibility list of the private link service. +func (o PrivateLinkServiceTypePtrOutput) Visibility() PrivateLinkServicePropertiesVisibilityPtrOutput { + return o.ApplyT(func(v *PrivateLinkServiceType) *PrivateLinkServicePropertiesVisibility { + if v == nil { + return nil + } + return v.Visibility + }).(PrivateLinkServicePropertiesVisibilityPtrOutput) +} + +// PrivateLinkServiceConnection resource. +type PrivateLinkServiceConnection struct { + // The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. + GroupIds []string `pulumi:"groupIds"` + // Resource ID. + Id *string `pulumi:"id"` + // The name of the resource that is unique within a resource group. This name can be used to access the resource. + Name *string `pulumi:"name"` + // A collection of read-only information about the state of the connection to the remote resource. + PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionState `pulumi:"privateLinkServiceConnectionState"` + // The resource id of private link service. + PrivateLinkServiceId *string `pulumi:"privateLinkServiceId"` + // A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. + RequestMessage *string `pulumi:"requestMessage"` +} + +// PrivateLinkServiceConnectionInput is an input type that accepts PrivateLinkServiceConnectionArgs and PrivateLinkServiceConnectionOutput values. +// You can construct a concrete instance of `PrivateLinkServiceConnectionInput` via: +// +// PrivateLinkServiceConnectionArgs{...} +type PrivateLinkServiceConnectionInput interface { + pulumi.Input + + ToPrivateLinkServiceConnectionOutput() PrivateLinkServiceConnectionOutput + ToPrivateLinkServiceConnectionOutputWithContext(context.Context) PrivateLinkServiceConnectionOutput +} + +// PrivateLinkServiceConnection resource. +type PrivateLinkServiceConnectionArgs struct { + // The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. + GroupIds pulumi.StringArrayInput `pulumi:"groupIds"` + // Resource ID. + Id pulumi.StringPtrInput `pulumi:"id"` + // The name of the resource that is unique within a resource group. This name can be used to access the resource. + Name pulumi.StringPtrInput `pulumi:"name"` + // A collection of read-only information about the state of the connection to the remote resource. + PrivateLinkServiceConnectionState PrivateLinkServiceConnectionStatePtrInput `pulumi:"privateLinkServiceConnectionState"` + // The resource id of private link service. + PrivateLinkServiceId pulumi.StringPtrInput `pulumi:"privateLinkServiceId"` + // A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. + RequestMessage pulumi.StringPtrInput `pulumi:"requestMessage"` +} + +func (PrivateLinkServiceConnectionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateLinkServiceConnection)(nil)).Elem() +} + +func (i PrivateLinkServiceConnectionArgs) ToPrivateLinkServiceConnectionOutput() PrivateLinkServiceConnectionOutput { + return i.ToPrivateLinkServiceConnectionOutputWithContext(context.Background()) +} + +func (i PrivateLinkServiceConnectionArgs) ToPrivateLinkServiceConnectionOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceConnectionOutput) +} + +// PrivateLinkServiceConnectionArrayInput is an input type that accepts PrivateLinkServiceConnectionArray and PrivateLinkServiceConnectionArrayOutput values. +// You can construct a concrete instance of `PrivateLinkServiceConnectionArrayInput` via: +// +// PrivateLinkServiceConnectionArray{ PrivateLinkServiceConnectionArgs{...} } +type PrivateLinkServiceConnectionArrayInput interface { + pulumi.Input + + ToPrivateLinkServiceConnectionArrayOutput() PrivateLinkServiceConnectionArrayOutput + ToPrivateLinkServiceConnectionArrayOutputWithContext(context.Context) PrivateLinkServiceConnectionArrayOutput +} + +type PrivateLinkServiceConnectionArray []PrivateLinkServiceConnectionInput + +func (PrivateLinkServiceConnectionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateLinkServiceConnection)(nil)).Elem() +} + +func (i PrivateLinkServiceConnectionArray) ToPrivateLinkServiceConnectionArrayOutput() PrivateLinkServiceConnectionArrayOutput { + return i.ToPrivateLinkServiceConnectionArrayOutputWithContext(context.Background()) +} + +func (i PrivateLinkServiceConnectionArray) ToPrivateLinkServiceConnectionArrayOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PrivateLinkServiceConnectionArrayOutput) +} + +// PrivateLinkServiceConnection resource. +type PrivateLinkServiceConnectionOutput struct{ *pulumi.OutputState } + +func (PrivateLinkServiceConnectionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateLinkServiceConnection)(nil)).Elem() +} + +func (o PrivateLinkServiceConnectionOutput) ToPrivateLinkServiceConnectionOutput() PrivateLinkServiceConnectionOutput { + return o +} + +func (o PrivateLinkServiceConnectionOutput) ToPrivateLinkServiceConnectionOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionOutput { + return o +} + +// The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. +func (o PrivateLinkServiceConnectionOutput) GroupIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v PrivateLinkServiceConnection) []string { return v.GroupIds }).(pulumi.StringArrayOutput) +} + +// Resource ID. +func (o PrivateLinkServiceConnectionOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// The name of the resource that is unique within a resource group. This name can be used to access the resource. +func (o PrivateLinkServiceConnectionOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// A collection of read-only information about the state of the connection to the remote resource. +func (o PrivateLinkServiceConnectionOutput) PrivateLinkServiceConnectionState() PrivateLinkServiceConnectionStatePtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnection) *PrivateLinkServiceConnectionState { + return v.PrivateLinkServiceConnectionState + }).(PrivateLinkServiceConnectionStatePtrOutput) +} + +// The resource id of private link service. +func (o PrivateLinkServiceConnectionOutput) PrivateLinkServiceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.PrivateLinkServiceId }).(pulumi.StringPtrOutput) +} + +// A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. +func (o PrivateLinkServiceConnectionOutput) RequestMessage() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnection) *string { return v.RequestMessage }).(pulumi.StringPtrOutput) +} + +type PrivateLinkServiceConnectionArrayOutput struct{ *pulumi.OutputState } + +func (PrivateLinkServiceConnectionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateLinkServiceConnection)(nil)).Elem() +} + +func (o PrivateLinkServiceConnectionArrayOutput) ToPrivateLinkServiceConnectionArrayOutput() PrivateLinkServiceConnectionArrayOutput { + return o +} + +func (o PrivateLinkServiceConnectionArrayOutput) ToPrivateLinkServiceConnectionArrayOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionArrayOutput { + return o +} + +func (o PrivateLinkServiceConnectionArrayOutput) Index(i pulumi.IntInput) PrivateLinkServiceConnectionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateLinkServiceConnection { + return vs[0].([]PrivateLinkServiceConnection)[vs[1].(int)] + }).(PrivateLinkServiceConnectionOutput) +} + +// PrivateLinkServiceConnection resource. +type PrivateLinkServiceConnectionResponse struct { + // A unique read-only string that changes whenever the resource is updated. + Etag string `pulumi:"etag"` + // The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. + GroupIds []string `pulumi:"groupIds"` + // Resource ID. + Id *string `pulumi:"id"` + // The name of the resource that is unique within a resource group. This name can be used to access the resource. + Name *string `pulumi:"name"` + // A collection of read-only information about the state of the connection to the remote resource. + PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionStateResponse `pulumi:"privateLinkServiceConnectionState"` + // The resource id of private link service. + PrivateLinkServiceId *string `pulumi:"privateLinkServiceId"` + // The provisioning state of the private link service connection resource. + ProvisioningState string `pulumi:"provisioningState"` + // A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. + RequestMessage *string `pulumi:"requestMessage"` + // The resource type. + Type string `pulumi:"type"` +} + +// PrivateLinkServiceConnection resource. +type PrivateLinkServiceConnectionResponseOutput struct{ *pulumi.OutputState } + +func (PrivateLinkServiceConnectionResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PrivateLinkServiceConnectionResponse)(nil)).Elem() +} + +func (o PrivateLinkServiceConnectionResponseOutput) ToPrivateLinkServiceConnectionResponseOutput() PrivateLinkServiceConnectionResponseOutput { + return o +} + +func (o PrivateLinkServiceConnectionResponseOutput) ToPrivateLinkServiceConnectionResponseOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionResponseOutput { + return o +} + +// A unique read-only string that changes whenever the resource is updated. +func (o PrivateLinkServiceConnectionResponseOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) string { return v.Etag }).(pulumi.StringOutput) +} + +// The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. +func (o PrivateLinkServiceConnectionResponseOutput) GroupIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) []string { return v.GroupIds }).(pulumi.StringArrayOutput) +} + +// Resource ID. +func (o PrivateLinkServiceConnectionResponseOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +// The name of the resource that is unique within a resource group. This name can be used to access the resource. +func (o PrivateLinkServiceConnectionResponseOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +// A collection of read-only information about the state of the connection to the remote resource. +func (o PrivateLinkServiceConnectionResponseOutput) PrivateLinkServiceConnectionState() PrivateLinkServiceConnectionStateResponsePtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *PrivateLinkServiceConnectionStateResponse { + return v.PrivateLinkServiceConnectionState + }).(PrivateLinkServiceConnectionStateResponsePtrOutput) +} + +// The resource id of private link service. +func (o PrivateLinkServiceConnectionResponseOutput) PrivateLinkServiceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.PrivateLinkServiceId }).(pulumi.StringPtrOutput) +} + +// The provisioning state of the private link service connection resource. +func (o PrivateLinkServiceConnectionResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. +func (o PrivateLinkServiceConnectionResponseOutput) RequestMessage() pulumi.StringPtrOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) *string { return v.RequestMessage }).(pulumi.StringPtrOutput) +} + +// The resource type. +func (o PrivateLinkServiceConnectionResponseOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v PrivateLinkServiceConnectionResponse) string { return v.Type }).(pulumi.StringOutput) +} + +type PrivateLinkServiceConnectionResponseArrayOutput struct{ *pulumi.OutputState } + +func (PrivateLinkServiceConnectionResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PrivateLinkServiceConnectionResponse)(nil)).Elem() +} + +func (o PrivateLinkServiceConnectionResponseArrayOutput) ToPrivateLinkServiceConnectionResponseArrayOutput() PrivateLinkServiceConnectionResponseArrayOutput { + return o +} + +func (o PrivateLinkServiceConnectionResponseArrayOutput) ToPrivateLinkServiceConnectionResponseArrayOutputWithContext(ctx context.Context) PrivateLinkServiceConnectionResponseArrayOutput { + return o +} + +func (o PrivateLinkServiceConnectionResponseArrayOutput) Index(i pulumi.IntInput) PrivateLinkServiceConnectionResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PrivateLinkServiceConnectionResponse { + return vs[0].([]PrivateLinkServiceConnectionResponse)[vs[1].(int)] + }).(PrivateLinkServiceConnectionResponseOutput) +} + // A collection of information about the state of the connection between service consumer and provider. type PrivateLinkServiceConnectionState struct { // A message indicating if changes on the service provider require any updates on the consumer. @@ -4414,54 +5736,301 @@ type RadiusServerResponse struct { RadiusServerSecret *string `pulumi:"radiusServerSecret"` } -// Radius Server Settings. -type RadiusServerResponseOutput struct{ *pulumi.OutputState } +// Radius Server Settings. +type RadiusServerResponseOutput struct{ *pulumi.OutputState } + +func (RadiusServerResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RadiusServerResponse)(nil)).Elem() +} + +func (o RadiusServerResponseOutput) ToRadiusServerResponseOutput() RadiusServerResponseOutput { + return o +} + +func (o RadiusServerResponseOutput) ToRadiusServerResponseOutputWithContext(ctx context.Context) RadiusServerResponseOutput { + return o +} + +// The address of this radius server. +func (o RadiusServerResponseOutput) RadiusServerAddress() pulumi.StringOutput { + return o.ApplyT(func(v RadiusServerResponse) string { return v.RadiusServerAddress }).(pulumi.StringOutput) +} + +// The initial score assigned to this radius server. +func (o RadiusServerResponseOutput) RadiusServerScore() pulumi.Float64PtrOutput { + return o.ApplyT(func(v RadiusServerResponse) *float64 { return v.RadiusServerScore }).(pulumi.Float64PtrOutput) +} + +// The secret used for this radius server. +func (o RadiusServerResponseOutput) RadiusServerSecret() pulumi.StringPtrOutput { + return o.ApplyT(func(v RadiusServerResponse) *string { return v.RadiusServerSecret }).(pulumi.StringPtrOutput) +} + +type RadiusServerResponseArrayOutput struct{ *pulumi.OutputState } + +func (RadiusServerResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RadiusServerResponse)(nil)).Elem() +} + +func (o RadiusServerResponseArrayOutput) ToRadiusServerResponseArrayOutput() RadiusServerResponseArrayOutput { + return o +} + +func (o RadiusServerResponseArrayOutput) ToRadiusServerResponseArrayOutputWithContext(ctx context.Context) RadiusServerResponseArrayOutput { + return o +} + +func (o RadiusServerResponseArrayOutput) Index(i pulumi.IntInput) RadiusServerResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RadiusServerResponse { + return vs[0].([]RadiusServerResponse)[vs[1].(int)] + }).(RadiusServerResponseOutput) +} + +// Represents the Reachability Analysis Intent properties. +type ReachabilityAnalysisIntentProperties struct { + Description *string `pulumi:"description"` + // Destination resource id to verify the reachability path of. + DestinationResourceId string `pulumi:"destinationResourceId"` + // IP traffic information. + IpTraffic IPTraffic `pulumi:"ipTraffic"` + // Source resource id to verify the reachability path of. + SourceResourceId string `pulumi:"sourceResourceId"` +} + +// ReachabilityAnalysisIntentPropertiesInput is an input type that accepts ReachabilityAnalysisIntentPropertiesArgs and ReachabilityAnalysisIntentPropertiesOutput values. +// You can construct a concrete instance of `ReachabilityAnalysisIntentPropertiesInput` via: +// +// ReachabilityAnalysisIntentPropertiesArgs{...} +type ReachabilityAnalysisIntentPropertiesInput interface { + pulumi.Input + + ToReachabilityAnalysisIntentPropertiesOutput() ReachabilityAnalysisIntentPropertiesOutput + ToReachabilityAnalysisIntentPropertiesOutputWithContext(context.Context) ReachabilityAnalysisIntentPropertiesOutput +} + +// Represents the Reachability Analysis Intent properties. +type ReachabilityAnalysisIntentPropertiesArgs struct { + Description pulumi.StringPtrInput `pulumi:"description"` + // Destination resource id to verify the reachability path of. + DestinationResourceId pulumi.StringInput `pulumi:"destinationResourceId"` + // IP traffic information. + IpTraffic IPTrafficInput `pulumi:"ipTraffic"` + // Source resource id to verify the reachability path of. + SourceResourceId pulumi.StringInput `pulumi:"sourceResourceId"` +} + +func (ReachabilityAnalysisIntentPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReachabilityAnalysisIntentProperties)(nil)).Elem() +} + +func (i ReachabilityAnalysisIntentPropertiesArgs) ToReachabilityAnalysisIntentPropertiesOutput() ReachabilityAnalysisIntentPropertiesOutput { + return i.ToReachabilityAnalysisIntentPropertiesOutputWithContext(context.Background()) +} + +func (i ReachabilityAnalysisIntentPropertiesArgs) ToReachabilityAnalysisIntentPropertiesOutputWithContext(ctx context.Context) ReachabilityAnalysisIntentPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReachabilityAnalysisIntentPropertiesOutput) +} + +// Represents the Reachability Analysis Intent properties. +type ReachabilityAnalysisIntentPropertiesOutput struct{ *pulumi.OutputState } + +func (ReachabilityAnalysisIntentPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReachabilityAnalysisIntentProperties)(nil)).Elem() +} + +func (o ReachabilityAnalysisIntentPropertiesOutput) ToReachabilityAnalysisIntentPropertiesOutput() ReachabilityAnalysisIntentPropertiesOutput { + return o +} + +func (o ReachabilityAnalysisIntentPropertiesOutput) ToReachabilityAnalysisIntentPropertiesOutputWithContext(ctx context.Context) ReachabilityAnalysisIntentPropertiesOutput { + return o +} + +func (o ReachabilityAnalysisIntentPropertiesOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentProperties) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Destination resource id to verify the reachability path of. +func (o ReachabilityAnalysisIntentPropertiesOutput) DestinationResourceId() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentProperties) string { return v.DestinationResourceId }).(pulumi.StringOutput) +} + +// IP traffic information. +func (o ReachabilityAnalysisIntentPropertiesOutput) IpTraffic() IPTrafficOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentProperties) IPTraffic { return v.IpTraffic }).(IPTrafficOutput) +} + +// Source resource id to verify the reachability path of. +func (o ReachabilityAnalysisIntentPropertiesOutput) SourceResourceId() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentProperties) string { return v.SourceResourceId }).(pulumi.StringOutput) +} + +// Represents the Reachability Analysis Intent properties. +type ReachabilityAnalysisIntentPropertiesResponse struct { + Description *string `pulumi:"description"` + // Destination resource id to verify the reachability path of. + DestinationResourceId string `pulumi:"destinationResourceId"` + // IP traffic information. + IpTraffic IPTrafficResponse `pulumi:"ipTraffic"` + // Provisioning states of a resource. + ProvisioningState string `pulumi:"provisioningState"` + // Source resource id to verify the reachability path of. + SourceResourceId string `pulumi:"sourceResourceId"` +} + +// Represents the Reachability Analysis Intent properties. +type ReachabilityAnalysisIntentPropertiesResponseOutput struct{ *pulumi.OutputState } + +func (ReachabilityAnalysisIntentPropertiesResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReachabilityAnalysisIntentPropertiesResponse)(nil)).Elem() +} + +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) ToReachabilityAnalysisIntentPropertiesResponseOutput() ReachabilityAnalysisIntentPropertiesResponseOutput { + return o +} + +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) ToReachabilityAnalysisIntentPropertiesResponseOutputWithContext(ctx context.Context) ReachabilityAnalysisIntentPropertiesResponseOutput { + return o +} + +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentPropertiesResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Destination resource id to verify the reachability path of. +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) DestinationResourceId() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentPropertiesResponse) string { return v.DestinationResourceId }).(pulumi.StringOutput) +} + +// IP traffic information. +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) IpTraffic() IPTrafficResponseOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentPropertiesResponse) IPTrafficResponse { return v.IpTraffic }).(IPTrafficResponseOutput) +} + +// Provisioning states of a resource. +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentPropertiesResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Source resource id to verify the reachability path of. +func (o ReachabilityAnalysisIntentPropertiesResponseOutput) SourceResourceId() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisIntentPropertiesResponse) string { return v.SourceResourceId }).(pulumi.StringOutput) +} + +// Represents the Reachability Analysis Run properties. +type ReachabilityAnalysisRunProperties struct { + Description *string `pulumi:"description"` + // Id of the intent resource to run analysis on. + IntentId string `pulumi:"intentId"` +} + +// ReachabilityAnalysisRunPropertiesInput is an input type that accepts ReachabilityAnalysisRunPropertiesArgs and ReachabilityAnalysisRunPropertiesOutput values. +// You can construct a concrete instance of `ReachabilityAnalysisRunPropertiesInput` via: +// +// ReachabilityAnalysisRunPropertiesArgs{...} +type ReachabilityAnalysisRunPropertiesInput interface { + pulumi.Input + + ToReachabilityAnalysisRunPropertiesOutput() ReachabilityAnalysisRunPropertiesOutput + ToReachabilityAnalysisRunPropertiesOutputWithContext(context.Context) ReachabilityAnalysisRunPropertiesOutput +} + +// Represents the Reachability Analysis Run properties. +type ReachabilityAnalysisRunPropertiesArgs struct { + Description pulumi.StringPtrInput `pulumi:"description"` + // Id of the intent resource to run analysis on. + IntentId pulumi.StringInput `pulumi:"intentId"` +} + +func (ReachabilityAnalysisRunPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ReachabilityAnalysisRunProperties)(nil)).Elem() +} + +func (i ReachabilityAnalysisRunPropertiesArgs) ToReachabilityAnalysisRunPropertiesOutput() ReachabilityAnalysisRunPropertiesOutput { + return i.ToReachabilityAnalysisRunPropertiesOutputWithContext(context.Background()) +} -func (RadiusServerResponseOutput) ElementType() reflect.Type { - return reflect.TypeOf((*RadiusServerResponse)(nil)).Elem() +func (i ReachabilityAnalysisRunPropertiesArgs) ToReachabilityAnalysisRunPropertiesOutputWithContext(ctx context.Context) ReachabilityAnalysisRunPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReachabilityAnalysisRunPropertiesOutput) } -func (o RadiusServerResponseOutput) ToRadiusServerResponseOutput() RadiusServerResponseOutput { +// Represents the Reachability Analysis Run properties. +type ReachabilityAnalysisRunPropertiesOutput struct{ *pulumi.OutputState } + +func (ReachabilityAnalysisRunPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReachabilityAnalysisRunProperties)(nil)).Elem() +} + +func (o ReachabilityAnalysisRunPropertiesOutput) ToReachabilityAnalysisRunPropertiesOutput() ReachabilityAnalysisRunPropertiesOutput { return o } -func (o RadiusServerResponseOutput) ToRadiusServerResponseOutputWithContext(ctx context.Context) RadiusServerResponseOutput { +func (o ReachabilityAnalysisRunPropertiesOutput) ToReachabilityAnalysisRunPropertiesOutputWithContext(ctx context.Context) ReachabilityAnalysisRunPropertiesOutput { return o } -// The address of this radius server. -func (o RadiusServerResponseOutput) RadiusServerAddress() pulumi.StringOutput { - return o.ApplyT(func(v RadiusServerResponse) string { return v.RadiusServerAddress }).(pulumi.StringOutput) +func (o ReachabilityAnalysisRunPropertiesOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunProperties) *string { return v.Description }).(pulumi.StringPtrOutput) } -// The initial score assigned to this radius server. -func (o RadiusServerResponseOutput) RadiusServerScore() pulumi.Float64PtrOutput { - return o.ApplyT(func(v RadiusServerResponse) *float64 { return v.RadiusServerScore }).(pulumi.Float64PtrOutput) +// Id of the intent resource to run analysis on. +func (o ReachabilityAnalysisRunPropertiesOutput) IntentId() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunProperties) string { return v.IntentId }).(pulumi.StringOutput) } -// The secret used for this radius server. -func (o RadiusServerResponseOutput) RadiusServerSecret() pulumi.StringPtrOutput { - return o.ApplyT(func(v RadiusServerResponse) *string { return v.RadiusServerSecret }).(pulumi.StringPtrOutput) +// Represents the Reachability Analysis Run properties. +type ReachabilityAnalysisRunPropertiesResponse struct { + AnalysisResult string `pulumi:"analysisResult"` + Description *string `pulumi:"description"` + ErrorMessage string `pulumi:"errorMessage"` + // Intent information. + IntentContent IntentContentResponse `pulumi:"intentContent"` + // Id of the intent resource to run analysis on. + IntentId string `pulumi:"intentId"` + // Provisioning states of a resource. + ProvisioningState string `pulumi:"provisioningState"` } -type RadiusServerResponseArrayOutput struct{ *pulumi.OutputState } +// Represents the Reachability Analysis Run properties. +type ReachabilityAnalysisRunPropertiesResponseOutput struct{ *pulumi.OutputState } -func (RadiusServerResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]RadiusServerResponse)(nil)).Elem() +func (ReachabilityAnalysisRunPropertiesResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ReachabilityAnalysisRunPropertiesResponse)(nil)).Elem() } -func (o RadiusServerResponseArrayOutput) ToRadiusServerResponseArrayOutput() RadiusServerResponseArrayOutput { +func (o ReachabilityAnalysisRunPropertiesResponseOutput) ToReachabilityAnalysisRunPropertiesResponseOutput() ReachabilityAnalysisRunPropertiesResponseOutput { return o } -func (o RadiusServerResponseArrayOutput) ToRadiusServerResponseArrayOutputWithContext(ctx context.Context) RadiusServerResponseArrayOutput { +func (o ReachabilityAnalysisRunPropertiesResponseOutput) ToReachabilityAnalysisRunPropertiesResponseOutputWithContext(ctx context.Context) ReachabilityAnalysisRunPropertiesResponseOutput { return o } -func (o RadiusServerResponseArrayOutput) Index(i pulumi.IntInput) RadiusServerResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) RadiusServerResponse { - return vs[0].([]RadiusServerResponse)[vs[1].(int)] - }).(RadiusServerResponseOutput) +func (o ReachabilityAnalysisRunPropertiesResponseOutput) AnalysisResult() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunPropertiesResponse) string { return v.AnalysisResult }).(pulumi.StringOutput) +} + +func (o ReachabilityAnalysisRunPropertiesResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunPropertiesResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o ReachabilityAnalysisRunPropertiesResponseOutput) ErrorMessage() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunPropertiesResponse) string { return v.ErrorMessage }).(pulumi.StringOutput) +} + +// Intent information. +func (o ReachabilityAnalysisRunPropertiesResponseOutput) IntentContent() IntentContentResponseOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunPropertiesResponse) IntentContentResponse { return v.IntentContent }).(IntentContentResponseOutput) +} + +// Id of the intent resource to run analysis on. +func (o ReachabilityAnalysisRunPropertiesResponseOutput) IntentId() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunPropertiesResponse) string { return v.IntentId }).(pulumi.StringOutput) +} + +// Provisioning states of a resource. +func (o ReachabilityAnalysisRunPropertiesResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v ReachabilityAnalysisRunPropertiesResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) } // A collective group of information about the record set information. @@ -5007,6 +6576,59 @@ func (o ReferencedPublicIpAddressResponseArrayOutput) Index(i pulumi.IntInput) R }).(ReferencedPublicIpAddressResponseOutput) } +// Representation of basic resource information. +type ResourceBasicsResponse struct { + // List of IP address prefixes of the resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + // ResourceId of the Azure resource. + ResourceId *string `pulumi:"resourceId"` +} + +// Representation of basic resource information. +type ResourceBasicsResponseOutput struct{ *pulumi.OutputState } + +func (ResourceBasicsResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ResourceBasicsResponse)(nil)).Elem() +} + +func (o ResourceBasicsResponseOutput) ToResourceBasicsResponseOutput() ResourceBasicsResponseOutput { + return o +} + +func (o ResourceBasicsResponseOutput) ToResourceBasicsResponseOutputWithContext(ctx context.Context) ResourceBasicsResponseOutput { + return o +} + +// List of IP address prefixes of the resource. +func (o ResourceBasicsResponseOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v ResourceBasicsResponse) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +// ResourceId of the Azure resource. +func (o ResourceBasicsResponseOutput) ResourceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v ResourceBasicsResponse) *string { return v.ResourceId }).(pulumi.StringPtrOutput) +} + +type ResourceBasicsResponseArrayOutput struct{ *pulumi.OutputState } + +func (ResourceBasicsResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ResourceBasicsResponse)(nil)).Elem() +} + +func (o ResourceBasicsResponseArrayOutput) ToResourceBasicsResponseArrayOutput() ResourceBasicsResponseArrayOutput { + return o +} + +func (o ResourceBasicsResponseArrayOutput) ToResourceBasicsResponseArrayOutputWithContext(ctx context.Context) ResourceBasicsResponseArrayOutput { + return o +} + +func (o ResourceBasicsResponseArrayOutput) Index(i pulumi.IntInput) ResourceBasicsResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ResourceBasicsResponse { + return vs[0].([]ResourceBasicsResponse)[vs[1].(int)] + }).(ResourceBasicsResponseOutput) +} + // ResourceNavigationLink resource. type ResourceNavigationLink struct { // Resource ID. @@ -5512,8 +7134,6 @@ type RouteType struct { AddressPrefix *string `pulumi:"addressPrefix"` // A unique read-only string that changes whenever the resource is updated. Etag *string `pulumi:"etag"` - // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride *bool `pulumi:"hasBgpOverride"` // Resource ID. Id *string `pulumi:"id"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. @@ -5545,8 +7165,6 @@ type RouteTypeArgs struct { AddressPrefix pulumi.StringPtrInput `pulumi:"addressPrefix"` // A unique read-only string that changes whenever the resource is updated. Etag pulumi.StringPtrInput `pulumi:"etag"` - // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride pulumi.BoolPtrInput `pulumi:"hasBgpOverride"` // Resource ID. Id pulumi.StringPtrInput `pulumi:"id"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. @@ -5623,11 +7241,6 @@ func (o RouteTypeOutput) Etag() pulumi.StringPtrOutput { return o.ApplyT(func(v RouteType) *string { return v.Etag }).(pulumi.StringPtrOutput) } -// A value indicating whether this route overrides overlapping BGP routes regardless of LPM. -func (o RouteTypeOutput) HasBgpOverride() pulumi.BoolPtrOutput { - return o.ApplyT(func(v RouteType) *bool { return v.HasBgpOverride }).(pulumi.BoolPtrOutput) -} - // Resource ID. func (o RouteTypeOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v RouteType) *string { return v.Id }).(pulumi.StringPtrOutput) @@ -6119,7 +7732,7 @@ type RouteResponse struct { // A unique read-only string that changes whenever the resource is updated. Etag string `pulumi:"etag"` // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride *bool `pulumi:"hasBgpOverride"` + HasBgpOverride bool `pulumi:"hasBgpOverride"` // Resource ID. Id *string `pulumi:"id"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. @@ -6160,8 +7773,8 @@ func (o RouteResponseOutput) Etag() pulumi.StringOutput { } // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. -func (o RouteResponseOutput) HasBgpOverride() pulumi.BoolPtrOutput { - return o.ApplyT(func(v RouteResponse) *bool { return v.HasBgpOverride }).(pulumi.BoolPtrOutput) +func (o RouteResponseOutput) HasBgpOverride() pulumi.BoolOutput { + return o.ApplyT(func(v RouteResponse) bool { return v.HasBgpOverride }).(pulumi.BoolOutput) } // Resource ID. @@ -7221,7 +8834,7 @@ func (o RoutingPolicyResponseArrayOutput) Index(i pulumi.IntInput) RoutingPolicy } // A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. -type RoutingRule struct { +type RoutingRuleType struct { // Protocol schemes to match for this rule AcceptedProtocols []string `pulumi:"acceptedProtocols"` // Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' @@ -7242,19 +8855,19 @@ type RoutingRule struct { WebApplicationFirewallPolicyLink *RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink `pulumi:"webApplicationFirewallPolicyLink"` } -// RoutingRuleInput is an input type that accepts RoutingRuleArgs and RoutingRuleOutput values. -// You can construct a concrete instance of `RoutingRuleInput` via: +// RoutingRuleTypeInput is an input type that accepts RoutingRuleTypeArgs and RoutingRuleTypeOutput values. +// You can construct a concrete instance of `RoutingRuleTypeInput` via: // -// RoutingRuleArgs{...} -type RoutingRuleInput interface { +// RoutingRuleTypeArgs{...} +type RoutingRuleTypeInput interface { pulumi.Input - ToRoutingRuleOutput() RoutingRuleOutput - ToRoutingRuleOutputWithContext(context.Context) RoutingRuleOutput + ToRoutingRuleTypeOutput() RoutingRuleTypeOutput + ToRoutingRuleTypeOutputWithContext(context.Context) RoutingRuleTypeOutput } // A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. -type RoutingRuleArgs struct { +type RoutingRuleTypeArgs struct { // Protocol schemes to match for this rule AcceptedProtocols pulumi.StringArrayInput `pulumi:"acceptedProtocols"` // Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' @@ -7275,123 +8888,123 @@ type RoutingRuleArgs struct { WebApplicationFirewallPolicyLink RoutingRuleUpdateParametersWebApplicationFirewallPolicyLinkPtrInput `pulumi:"webApplicationFirewallPolicyLink"` } -func (RoutingRuleArgs) ElementType() reflect.Type { - return reflect.TypeOf((*RoutingRule)(nil)).Elem() +func (RoutingRuleTypeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleType)(nil)).Elem() } -func (i RoutingRuleArgs) ToRoutingRuleOutput() RoutingRuleOutput { - return i.ToRoutingRuleOutputWithContext(context.Background()) +func (i RoutingRuleTypeArgs) ToRoutingRuleTypeOutput() RoutingRuleTypeOutput { + return i.ToRoutingRuleTypeOutputWithContext(context.Background()) } -func (i RoutingRuleArgs) ToRoutingRuleOutputWithContext(ctx context.Context) RoutingRuleOutput { - return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleOutput) +func (i RoutingRuleTypeArgs) ToRoutingRuleTypeOutputWithContext(ctx context.Context) RoutingRuleTypeOutput { + return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleTypeOutput) } -// RoutingRuleArrayInput is an input type that accepts RoutingRuleArray and RoutingRuleArrayOutput values. -// You can construct a concrete instance of `RoutingRuleArrayInput` via: +// RoutingRuleTypeArrayInput is an input type that accepts RoutingRuleTypeArray and RoutingRuleTypeArrayOutput values. +// You can construct a concrete instance of `RoutingRuleTypeArrayInput` via: // -// RoutingRuleArray{ RoutingRuleArgs{...} } -type RoutingRuleArrayInput interface { +// RoutingRuleTypeArray{ RoutingRuleTypeArgs{...} } +type RoutingRuleTypeArrayInput interface { pulumi.Input - ToRoutingRuleArrayOutput() RoutingRuleArrayOutput - ToRoutingRuleArrayOutputWithContext(context.Context) RoutingRuleArrayOutput + ToRoutingRuleTypeArrayOutput() RoutingRuleTypeArrayOutput + ToRoutingRuleTypeArrayOutputWithContext(context.Context) RoutingRuleTypeArrayOutput } -type RoutingRuleArray []RoutingRuleInput +type RoutingRuleTypeArray []RoutingRuleTypeInput -func (RoutingRuleArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]RoutingRule)(nil)).Elem() +func (RoutingRuleTypeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RoutingRuleType)(nil)).Elem() } -func (i RoutingRuleArray) ToRoutingRuleArrayOutput() RoutingRuleArrayOutput { - return i.ToRoutingRuleArrayOutputWithContext(context.Background()) +func (i RoutingRuleTypeArray) ToRoutingRuleTypeArrayOutput() RoutingRuleTypeArrayOutput { + return i.ToRoutingRuleTypeArrayOutputWithContext(context.Background()) } -func (i RoutingRuleArray) ToRoutingRuleArrayOutputWithContext(ctx context.Context) RoutingRuleArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleArrayOutput) +func (i RoutingRuleTypeArray) ToRoutingRuleTypeArrayOutputWithContext(ctx context.Context) RoutingRuleTypeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleTypeArrayOutput) } // A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. -type RoutingRuleOutput struct{ *pulumi.OutputState } +type RoutingRuleTypeOutput struct{ *pulumi.OutputState } -func (RoutingRuleOutput) ElementType() reflect.Type { - return reflect.TypeOf((*RoutingRule)(nil)).Elem() +func (RoutingRuleTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleType)(nil)).Elem() } -func (o RoutingRuleOutput) ToRoutingRuleOutput() RoutingRuleOutput { +func (o RoutingRuleTypeOutput) ToRoutingRuleTypeOutput() RoutingRuleTypeOutput { return o } -func (o RoutingRuleOutput) ToRoutingRuleOutputWithContext(ctx context.Context) RoutingRuleOutput { +func (o RoutingRuleTypeOutput) ToRoutingRuleTypeOutputWithContext(ctx context.Context) RoutingRuleTypeOutput { return o } // Protocol schemes to match for this rule -func (o RoutingRuleOutput) AcceptedProtocols() pulumi.StringArrayOutput { - return o.ApplyT(func(v RoutingRule) []string { return v.AcceptedProtocols }).(pulumi.StringArrayOutput) +func (o RoutingRuleTypeOutput) AcceptedProtocols() pulumi.StringArrayOutput { + return o.ApplyT(func(v RoutingRuleType) []string { return v.AcceptedProtocols }).(pulumi.StringArrayOutput) } // Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' -func (o RoutingRuleOutput) EnabledState() pulumi.StringPtrOutput { - return o.ApplyT(func(v RoutingRule) *string { return v.EnabledState }).(pulumi.StringPtrOutput) +func (o RoutingRuleTypeOutput) EnabledState() pulumi.StringPtrOutput { + return o.ApplyT(func(v RoutingRuleType) *string { return v.EnabledState }).(pulumi.StringPtrOutput) } // Frontend endpoints associated with this rule -func (o RoutingRuleOutput) FrontendEndpoints() SubResourceArrayOutput { - return o.ApplyT(func(v RoutingRule) []SubResource { return v.FrontendEndpoints }).(SubResourceArrayOutput) +func (o RoutingRuleTypeOutput) FrontendEndpoints() SubResourceArrayOutput { + return o.ApplyT(func(v RoutingRuleType) []SubResource { return v.FrontendEndpoints }).(SubResourceArrayOutput) } // Resource ID. -func (o RoutingRuleOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v RoutingRule) *string { return v.Id }).(pulumi.StringPtrOutput) +func (o RoutingRuleTypeOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v RoutingRuleType) *string { return v.Id }).(pulumi.StringPtrOutput) } // Resource name. -func (o RoutingRuleOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v RoutingRule) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o RoutingRuleTypeOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v RoutingRuleType) *string { return v.Name }).(pulumi.StringPtrOutput) } // The route patterns of the rule. -func (o RoutingRuleOutput) PatternsToMatch() pulumi.StringArrayOutput { - return o.ApplyT(func(v RoutingRule) []string { return v.PatternsToMatch }).(pulumi.StringArrayOutput) +func (o RoutingRuleTypeOutput) PatternsToMatch() pulumi.StringArrayOutput { + return o.ApplyT(func(v RoutingRuleType) []string { return v.PatternsToMatch }).(pulumi.StringArrayOutput) } // A reference to the routing configuration. -func (o RoutingRuleOutput) RouteConfiguration() pulumi.AnyOutput { - return o.ApplyT(func(v RoutingRule) interface{} { return v.RouteConfiguration }).(pulumi.AnyOutput) +func (o RoutingRuleTypeOutput) RouteConfiguration() pulumi.AnyOutput { + return o.ApplyT(func(v RoutingRuleType) interface{} { return v.RouteConfiguration }).(pulumi.AnyOutput) } // A reference to a specific Rules Engine Configuration to apply to this route. -func (o RoutingRuleOutput) RulesEngine() SubResourcePtrOutput { - return o.ApplyT(func(v RoutingRule) *SubResource { return v.RulesEngine }).(SubResourcePtrOutput) +func (o RoutingRuleTypeOutput) RulesEngine() SubResourcePtrOutput { + return o.ApplyT(func(v RoutingRuleType) *SubResource { return v.RulesEngine }).(SubResourcePtrOutput) } // Defines the Web Application Firewall policy for each routing rule (if applicable) -func (o RoutingRuleOutput) WebApplicationFirewallPolicyLink() RoutingRuleUpdateParametersWebApplicationFirewallPolicyLinkPtrOutput { - return o.ApplyT(func(v RoutingRule) *RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink { +func (o RoutingRuleTypeOutput) WebApplicationFirewallPolicyLink() RoutingRuleUpdateParametersWebApplicationFirewallPolicyLinkPtrOutput { + return o.ApplyT(func(v RoutingRuleType) *RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink { return v.WebApplicationFirewallPolicyLink }).(RoutingRuleUpdateParametersWebApplicationFirewallPolicyLinkPtrOutput) } -type RoutingRuleArrayOutput struct{ *pulumi.OutputState } +type RoutingRuleTypeArrayOutput struct{ *pulumi.OutputState } -func (RoutingRuleArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]RoutingRule)(nil)).Elem() +func (RoutingRuleTypeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RoutingRuleType)(nil)).Elem() } -func (o RoutingRuleArrayOutput) ToRoutingRuleArrayOutput() RoutingRuleArrayOutput { +func (o RoutingRuleTypeArrayOutput) ToRoutingRuleTypeArrayOutput() RoutingRuleTypeArrayOutput { return o } -func (o RoutingRuleArrayOutput) ToRoutingRuleArrayOutputWithContext(ctx context.Context) RoutingRuleArrayOutput { +func (o RoutingRuleTypeArrayOutput) ToRoutingRuleTypeArrayOutputWithContext(ctx context.Context) RoutingRuleTypeArrayOutput { return o } -func (o RoutingRuleArrayOutput) Index(i pulumi.IntInput) RoutingRuleOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) RoutingRule { - return vs[0].([]RoutingRule)[vs[1].(int)] - }).(RoutingRuleOutput) +func (o RoutingRuleTypeArrayOutput) Index(i pulumi.IntInput) RoutingRuleTypeOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RoutingRuleType { + return vs[0].([]RoutingRuleType)[vs[1].(int)] + }).(RoutingRuleTypeOutput) } // Defines the Resource ID for a Routing Rule. @@ -7440,6 +9053,103 @@ func (o RoutingRuleLinkResponseArrayOutput) Index(i pulumi.IntInput) RoutingRule }).(RoutingRuleLinkResponseOutput) } +// Next hop. +type RoutingRuleNextHop struct { + // Next hop address. Only required if the next hop type is VirtualAppliance. + NextHopAddress *string `pulumi:"nextHopAddress"` + // Next hop type. + NextHopType string `pulumi:"nextHopType"` +} + +// RoutingRuleNextHopInput is an input type that accepts RoutingRuleNextHopArgs and RoutingRuleNextHopOutput values. +// You can construct a concrete instance of `RoutingRuleNextHopInput` via: +// +// RoutingRuleNextHopArgs{...} +type RoutingRuleNextHopInput interface { + pulumi.Input + + ToRoutingRuleNextHopOutput() RoutingRuleNextHopOutput + ToRoutingRuleNextHopOutputWithContext(context.Context) RoutingRuleNextHopOutput +} + +// Next hop. +type RoutingRuleNextHopArgs struct { + // Next hop address. Only required if the next hop type is VirtualAppliance. + NextHopAddress pulumi.StringPtrInput `pulumi:"nextHopAddress"` + // Next hop type. + NextHopType pulumi.StringInput `pulumi:"nextHopType"` +} + +func (RoutingRuleNextHopArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleNextHop)(nil)).Elem() +} + +func (i RoutingRuleNextHopArgs) ToRoutingRuleNextHopOutput() RoutingRuleNextHopOutput { + return i.ToRoutingRuleNextHopOutputWithContext(context.Background()) +} + +func (i RoutingRuleNextHopArgs) ToRoutingRuleNextHopOutputWithContext(ctx context.Context) RoutingRuleNextHopOutput { + return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleNextHopOutput) +} + +// Next hop. +type RoutingRuleNextHopOutput struct{ *pulumi.OutputState } + +func (RoutingRuleNextHopOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleNextHop)(nil)).Elem() +} + +func (o RoutingRuleNextHopOutput) ToRoutingRuleNextHopOutput() RoutingRuleNextHopOutput { + return o +} + +func (o RoutingRuleNextHopOutput) ToRoutingRuleNextHopOutputWithContext(ctx context.Context) RoutingRuleNextHopOutput { + return o +} + +// Next hop address. Only required if the next hop type is VirtualAppliance. +func (o RoutingRuleNextHopOutput) NextHopAddress() pulumi.StringPtrOutput { + return o.ApplyT(func(v RoutingRuleNextHop) *string { return v.NextHopAddress }).(pulumi.StringPtrOutput) +} + +// Next hop type. +func (o RoutingRuleNextHopOutput) NextHopType() pulumi.StringOutput { + return o.ApplyT(func(v RoutingRuleNextHop) string { return v.NextHopType }).(pulumi.StringOutput) +} + +// Next hop. +type RoutingRuleNextHopResponse struct { + // Next hop address. Only required if the next hop type is VirtualAppliance. + NextHopAddress *string `pulumi:"nextHopAddress"` + // Next hop type. + NextHopType string `pulumi:"nextHopType"` +} + +// Next hop. +type RoutingRuleNextHopResponseOutput struct{ *pulumi.OutputState } + +func (RoutingRuleNextHopResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleNextHopResponse)(nil)).Elem() +} + +func (o RoutingRuleNextHopResponseOutput) ToRoutingRuleNextHopResponseOutput() RoutingRuleNextHopResponseOutput { + return o +} + +func (o RoutingRuleNextHopResponseOutput) ToRoutingRuleNextHopResponseOutputWithContext(ctx context.Context) RoutingRuleNextHopResponseOutput { + return o +} + +// Next hop address. Only required if the next hop type is VirtualAppliance. +func (o RoutingRuleNextHopResponseOutput) NextHopAddress() pulumi.StringPtrOutput { + return o.ApplyT(func(v RoutingRuleNextHopResponse) *string { return v.NextHopAddress }).(pulumi.StringPtrOutput) +} + +// Next hop type. +func (o RoutingRuleNextHopResponseOutput) NextHopType() pulumi.StringOutput { + return o.ApplyT(func(v RoutingRuleNextHopResponse) string { return v.NextHopType }).(pulumi.StringOutput) +} + // A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. type RoutingRuleResponse struct { // Protocol schemes to match for this rule @@ -7558,6 +9268,103 @@ func (o RoutingRuleResponseArrayOutput) Index(i pulumi.IntInput) RoutingRuleResp }).(RoutingRuleResponseOutput) } +// Route destination. +type RoutingRuleRouteDestination struct { + // Destination address. + DestinationAddress string `pulumi:"destinationAddress"` + // Destination type. + Type string `pulumi:"type"` +} + +// RoutingRuleRouteDestinationInput is an input type that accepts RoutingRuleRouteDestinationArgs and RoutingRuleRouteDestinationOutput values. +// You can construct a concrete instance of `RoutingRuleRouteDestinationInput` via: +// +// RoutingRuleRouteDestinationArgs{...} +type RoutingRuleRouteDestinationInput interface { + pulumi.Input + + ToRoutingRuleRouteDestinationOutput() RoutingRuleRouteDestinationOutput + ToRoutingRuleRouteDestinationOutputWithContext(context.Context) RoutingRuleRouteDestinationOutput +} + +// Route destination. +type RoutingRuleRouteDestinationArgs struct { + // Destination address. + DestinationAddress pulumi.StringInput `pulumi:"destinationAddress"` + // Destination type. + Type pulumi.StringInput `pulumi:"type"` +} + +func (RoutingRuleRouteDestinationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleRouteDestination)(nil)).Elem() +} + +func (i RoutingRuleRouteDestinationArgs) ToRoutingRuleRouteDestinationOutput() RoutingRuleRouteDestinationOutput { + return i.ToRoutingRuleRouteDestinationOutputWithContext(context.Background()) +} + +func (i RoutingRuleRouteDestinationArgs) ToRoutingRuleRouteDestinationOutputWithContext(ctx context.Context) RoutingRuleRouteDestinationOutput { + return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleRouteDestinationOutput) +} + +// Route destination. +type RoutingRuleRouteDestinationOutput struct{ *pulumi.OutputState } + +func (RoutingRuleRouteDestinationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleRouteDestination)(nil)).Elem() +} + +func (o RoutingRuleRouteDestinationOutput) ToRoutingRuleRouteDestinationOutput() RoutingRuleRouteDestinationOutput { + return o +} + +func (o RoutingRuleRouteDestinationOutput) ToRoutingRuleRouteDestinationOutputWithContext(ctx context.Context) RoutingRuleRouteDestinationOutput { + return o +} + +// Destination address. +func (o RoutingRuleRouteDestinationOutput) DestinationAddress() pulumi.StringOutput { + return o.ApplyT(func(v RoutingRuleRouteDestination) string { return v.DestinationAddress }).(pulumi.StringOutput) +} + +// Destination type. +func (o RoutingRuleRouteDestinationOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v RoutingRuleRouteDestination) string { return v.Type }).(pulumi.StringOutput) +} + +// Route destination. +type RoutingRuleRouteDestinationResponse struct { + // Destination address. + DestinationAddress string `pulumi:"destinationAddress"` + // Destination type. + Type string `pulumi:"type"` +} + +// Route destination. +type RoutingRuleRouteDestinationResponseOutput struct{ *pulumi.OutputState } + +func (RoutingRuleRouteDestinationResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RoutingRuleRouteDestinationResponse)(nil)).Elem() +} + +func (o RoutingRuleRouteDestinationResponseOutput) ToRoutingRuleRouteDestinationResponseOutput() RoutingRuleRouteDestinationResponseOutput { + return o +} + +func (o RoutingRuleRouteDestinationResponseOutput) ToRoutingRuleRouteDestinationResponseOutputWithContext(ctx context.Context) RoutingRuleRouteDestinationResponseOutput { + return o +} + +// Destination address. +func (o RoutingRuleRouteDestinationResponseOutput) DestinationAddress() pulumi.StringOutput { + return o.ApplyT(func(v RoutingRuleRouteDestinationResponse) string { return v.DestinationAddress }).(pulumi.StringOutput) +} + +// Destination type. +func (o RoutingRuleRouteDestinationResponseOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v RoutingRuleRouteDestinationResponse) string { return v.Type }).(pulumi.StringOutput) +} + // Defines the Web Application Firewall policy for each routing rule (if applicable) type RoutingRuleUpdateParametersResponseWebApplicationFirewallPolicyLink struct { // Resource ID. @@ -8839,46 +10646,192 @@ func (o SecurityRuleResponseOutput) SourceAddressPrefixes() pulumi.StringArrayOu return o.ApplyT(func(v SecurityRuleResponse) []string { return v.SourceAddressPrefixes }).(pulumi.StringArrayOutput) } -// The application security group specified as source. -func (o SecurityRuleResponseOutput) SourceApplicationSecurityGroups() ApplicationSecurityGroupResponseArrayOutput { - return o.ApplyT(func(v SecurityRuleResponse) []ApplicationSecurityGroupResponse { - return v.SourceApplicationSecurityGroups - }).(ApplicationSecurityGroupResponseArrayOutput) +// The application security group specified as source. +func (o SecurityRuleResponseOutput) SourceApplicationSecurityGroups() ApplicationSecurityGroupResponseArrayOutput { + return o.ApplyT(func(v SecurityRuleResponse) []ApplicationSecurityGroupResponse { + return v.SourceApplicationSecurityGroups + }).(ApplicationSecurityGroupResponseArrayOutput) +} + +// The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports. +func (o SecurityRuleResponseOutput) SourcePortRange() pulumi.StringPtrOutput { + return o.ApplyT(func(v SecurityRuleResponse) *string { return v.SourcePortRange }).(pulumi.StringPtrOutput) +} + +// The source port ranges. +func (o SecurityRuleResponseOutput) SourcePortRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v SecurityRuleResponse) []string { return v.SourcePortRanges }).(pulumi.StringArrayOutput) +} + +// The type of the resource. +func (o SecurityRuleResponseOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v SecurityRuleResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +} + +type SecurityRuleResponseArrayOutput struct{ *pulumi.OutputState } + +func (SecurityRuleResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SecurityRuleResponse)(nil)).Elem() +} + +func (o SecurityRuleResponseArrayOutput) ToSecurityRuleResponseArrayOutput() SecurityRuleResponseArrayOutput { + return o +} + +func (o SecurityRuleResponseArrayOutput) ToSecurityRuleResponseArrayOutputWithContext(ctx context.Context) SecurityRuleResponseArrayOutput { + return o +} + +func (o SecurityRuleResponseArrayOutput) Index(i pulumi.IntInput) SecurityRuleResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SecurityRuleResponse { + return vs[0].([]SecurityRuleResponse)[vs[1].(int)] + }).(SecurityRuleResponseOutput) +} + +// Network manager security user group item. +type SecurityUserGroupItem struct { + // Network manager group Id. + NetworkGroupId string `pulumi:"networkGroupId"` +} + +// SecurityUserGroupItemInput is an input type that accepts SecurityUserGroupItemArgs and SecurityUserGroupItemOutput values. +// You can construct a concrete instance of `SecurityUserGroupItemInput` via: +// +// SecurityUserGroupItemArgs{...} +type SecurityUserGroupItemInput interface { + pulumi.Input + + ToSecurityUserGroupItemOutput() SecurityUserGroupItemOutput + ToSecurityUserGroupItemOutputWithContext(context.Context) SecurityUserGroupItemOutput +} + +// Network manager security user group item. +type SecurityUserGroupItemArgs struct { + // Network manager group Id. + NetworkGroupId pulumi.StringInput `pulumi:"networkGroupId"` +} + +func (SecurityUserGroupItemArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SecurityUserGroupItem)(nil)).Elem() +} + +func (i SecurityUserGroupItemArgs) ToSecurityUserGroupItemOutput() SecurityUserGroupItemOutput { + return i.ToSecurityUserGroupItemOutputWithContext(context.Background()) +} + +func (i SecurityUserGroupItemArgs) ToSecurityUserGroupItemOutputWithContext(ctx context.Context) SecurityUserGroupItemOutput { + return pulumi.ToOutputWithContext(ctx, i).(SecurityUserGroupItemOutput) +} + +// SecurityUserGroupItemArrayInput is an input type that accepts SecurityUserGroupItemArray and SecurityUserGroupItemArrayOutput values. +// You can construct a concrete instance of `SecurityUserGroupItemArrayInput` via: +// +// SecurityUserGroupItemArray{ SecurityUserGroupItemArgs{...} } +type SecurityUserGroupItemArrayInput interface { + pulumi.Input + + ToSecurityUserGroupItemArrayOutput() SecurityUserGroupItemArrayOutput + ToSecurityUserGroupItemArrayOutputWithContext(context.Context) SecurityUserGroupItemArrayOutput +} + +type SecurityUserGroupItemArray []SecurityUserGroupItemInput + +func (SecurityUserGroupItemArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SecurityUserGroupItem)(nil)).Elem() +} + +func (i SecurityUserGroupItemArray) ToSecurityUserGroupItemArrayOutput() SecurityUserGroupItemArrayOutput { + return i.ToSecurityUserGroupItemArrayOutputWithContext(context.Background()) +} + +func (i SecurityUserGroupItemArray) ToSecurityUserGroupItemArrayOutputWithContext(ctx context.Context) SecurityUserGroupItemArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SecurityUserGroupItemArrayOutput) +} + +// Network manager security user group item. +type SecurityUserGroupItemOutput struct{ *pulumi.OutputState } + +func (SecurityUserGroupItemOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SecurityUserGroupItem)(nil)).Elem() +} + +func (o SecurityUserGroupItemOutput) ToSecurityUserGroupItemOutput() SecurityUserGroupItemOutput { + return o +} + +func (o SecurityUserGroupItemOutput) ToSecurityUserGroupItemOutputWithContext(ctx context.Context) SecurityUserGroupItemOutput { + return o +} + +// Network manager group Id. +func (o SecurityUserGroupItemOutput) NetworkGroupId() pulumi.StringOutput { + return o.ApplyT(func(v SecurityUserGroupItem) string { return v.NetworkGroupId }).(pulumi.StringOutput) +} + +type SecurityUserGroupItemArrayOutput struct{ *pulumi.OutputState } + +func (SecurityUserGroupItemArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SecurityUserGroupItem)(nil)).Elem() +} + +func (o SecurityUserGroupItemArrayOutput) ToSecurityUserGroupItemArrayOutput() SecurityUserGroupItemArrayOutput { + return o +} + +func (o SecurityUserGroupItemArrayOutput) ToSecurityUserGroupItemArrayOutputWithContext(ctx context.Context) SecurityUserGroupItemArrayOutput { + return o +} + +func (o SecurityUserGroupItemArrayOutput) Index(i pulumi.IntInput) SecurityUserGroupItemOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SecurityUserGroupItem { + return vs[0].([]SecurityUserGroupItem)[vs[1].(int)] + }).(SecurityUserGroupItemOutput) +} + +// Network manager security user group item. +type SecurityUserGroupItemResponse struct { + // Network manager group Id. + NetworkGroupId string `pulumi:"networkGroupId"` +} + +// Network manager security user group item. +type SecurityUserGroupItemResponseOutput struct{ *pulumi.OutputState } + +func (SecurityUserGroupItemResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SecurityUserGroupItemResponse)(nil)).Elem() } -// The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports. -func (o SecurityRuleResponseOutput) SourcePortRange() pulumi.StringPtrOutput { - return o.ApplyT(func(v SecurityRuleResponse) *string { return v.SourcePortRange }).(pulumi.StringPtrOutput) +func (o SecurityUserGroupItemResponseOutput) ToSecurityUserGroupItemResponseOutput() SecurityUserGroupItemResponseOutput { + return o } -// The source port ranges. -func (o SecurityRuleResponseOutput) SourcePortRanges() pulumi.StringArrayOutput { - return o.ApplyT(func(v SecurityRuleResponse) []string { return v.SourcePortRanges }).(pulumi.StringArrayOutput) +func (o SecurityUserGroupItemResponseOutput) ToSecurityUserGroupItemResponseOutputWithContext(ctx context.Context) SecurityUserGroupItemResponseOutput { + return o } -// The type of the resource. -func (o SecurityRuleResponseOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v SecurityRuleResponse) *string { return v.Type }).(pulumi.StringPtrOutput) +// Network manager group Id. +func (o SecurityUserGroupItemResponseOutput) NetworkGroupId() pulumi.StringOutput { + return o.ApplyT(func(v SecurityUserGroupItemResponse) string { return v.NetworkGroupId }).(pulumi.StringOutput) } -type SecurityRuleResponseArrayOutput struct{ *pulumi.OutputState } +type SecurityUserGroupItemResponseArrayOutput struct{ *pulumi.OutputState } -func (SecurityRuleResponseArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SecurityRuleResponse)(nil)).Elem() +func (SecurityUserGroupItemResponseArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SecurityUserGroupItemResponse)(nil)).Elem() } -func (o SecurityRuleResponseArrayOutput) ToSecurityRuleResponseArrayOutput() SecurityRuleResponseArrayOutput { +func (o SecurityUserGroupItemResponseArrayOutput) ToSecurityUserGroupItemResponseArrayOutput() SecurityUserGroupItemResponseArrayOutput { return o } -func (o SecurityRuleResponseArrayOutput) ToSecurityRuleResponseArrayOutputWithContext(ctx context.Context) SecurityRuleResponseArrayOutput { +func (o SecurityUserGroupItemResponseArrayOutput) ToSecurityUserGroupItemResponseArrayOutputWithContext(ctx context.Context) SecurityUserGroupItemResponseArrayOutput { return o } -func (o SecurityRuleResponseArrayOutput) Index(i pulumi.IntInput) SecurityRuleResponseOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SecurityRuleResponse { - return vs[0].([]SecurityRuleResponse)[vs[1].(int)] - }).(SecurityRuleResponseOutput) +func (o SecurityUserGroupItemResponseArrayOutput) Index(i pulumi.IntInput) SecurityUserGroupItemResponseOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SecurityUserGroupItemResponse { + return vs[0].([]SecurityUserGroupItemResponse)[vs[1].(int)] + }).(SecurityUserGroupItemResponseOutput) } // ServiceAssociationLink resource. @@ -9825,6 +11778,46 @@ func (o ServiceEndpointPropertiesFormatResponseArrayOutput) Index(i pulumi.IntIn }).(ServiceEndpointPropertiesFormatResponseOutput) } +// Parameters for SharedKey. +type SharedKeyPropertiesResponse struct { + // The provisioning state of the SharedKey resource. + ProvisioningState string `pulumi:"provisioningState"` + // The value of the shared key for the vpn link connection. + SharedKey *string `pulumi:"sharedKey"` + // The length of the shared key for the vpn link connection. + SharedKeyLength *int `pulumi:"sharedKeyLength"` +} + +// Parameters for SharedKey. +type SharedKeyPropertiesResponseOutput struct{ *pulumi.OutputState } + +func (SharedKeyPropertiesResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SharedKeyPropertiesResponse)(nil)).Elem() +} + +func (o SharedKeyPropertiesResponseOutput) ToSharedKeyPropertiesResponseOutput() SharedKeyPropertiesResponseOutput { + return o +} + +func (o SharedKeyPropertiesResponseOutput) ToSharedKeyPropertiesResponseOutputWithContext(ctx context.Context) SharedKeyPropertiesResponseOutput { + return o +} + +// The provisioning state of the SharedKey resource. +func (o SharedKeyPropertiesResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v SharedKeyPropertiesResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// The value of the shared key for the vpn link connection. +func (o SharedKeyPropertiesResponseOutput) SharedKey() pulumi.StringPtrOutput { + return o.ApplyT(func(v SharedKeyPropertiesResponse) *string { return v.SharedKey }).(pulumi.StringPtrOutput) +} + +// The length of the shared key for the vpn link connection. +func (o SharedKeyPropertiesResponseOutput) SharedKeyLength() pulumi.IntPtrOutput { + return o.ApplyT(func(v SharedKeyPropertiesResponse) *int { return v.SharedKeyLength }).(pulumi.IntPtrOutput) +} + type SingleQueryResultResponse struct { // Describes what is the signature enforces Description *string `pulumi:"description"` @@ -10749,6 +12742,232 @@ func (o SrvRecordResponseArrayOutput) Index(i pulumi.IntInput) SrvRecordResponse }).(SrvRecordResponseOutput) } +// Properties of static CIDR resource. +type StaticCidrProperties struct { + // List of IP address prefixes of the resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + Description *string `pulumi:"description"` + // Number of IP addresses to allocate for a static CIDR resource. The IP addresses will be assigned based on IpamPools available space. + NumberOfIPAddressesToAllocate *string `pulumi:"numberOfIPAddressesToAllocate"` +} + +// StaticCidrPropertiesInput is an input type that accepts StaticCidrPropertiesArgs and StaticCidrPropertiesOutput values. +// You can construct a concrete instance of `StaticCidrPropertiesInput` via: +// +// StaticCidrPropertiesArgs{...} +type StaticCidrPropertiesInput interface { + pulumi.Input + + ToStaticCidrPropertiesOutput() StaticCidrPropertiesOutput + ToStaticCidrPropertiesOutputWithContext(context.Context) StaticCidrPropertiesOutput +} + +// Properties of static CIDR resource. +type StaticCidrPropertiesArgs struct { + // List of IP address prefixes of the resource. + AddressPrefixes pulumi.StringArrayInput `pulumi:"addressPrefixes"` + Description pulumi.StringPtrInput `pulumi:"description"` + // Number of IP addresses to allocate for a static CIDR resource. The IP addresses will be assigned based on IpamPools available space. + NumberOfIPAddressesToAllocate pulumi.StringPtrInput `pulumi:"numberOfIPAddressesToAllocate"` +} + +func (StaticCidrPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*StaticCidrProperties)(nil)).Elem() +} + +func (i StaticCidrPropertiesArgs) ToStaticCidrPropertiesOutput() StaticCidrPropertiesOutput { + return i.ToStaticCidrPropertiesOutputWithContext(context.Background()) +} + +func (i StaticCidrPropertiesArgs) ToStaticCidrPropertiesOutputWithContext(ctx context.Context) StaticCidrPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(StaticCidrPropertiesOutput) +} + +func (i StaticCidrPropertiesArgs) ToStaticCidrPropertiesPtrOutput() StaticCidrPropertiesPtrOutput { + return i.ToStaticCidrPropertiesPtrOutputWithContext(context.Background()) +} + +func (i StaticCidrPropertiesArgs) ToStaticCidrPropertiesPtrOutputWithContext(ctx context.Context) StaticCidrPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(StaticCidrPropertiesOutput).ToStaticCidrPropertiesPtrOutputWithContext(ctx) +} + +// StaticCidrPropertiesPtrInput is an input type that accepts StaticCidrPropertiesArgs, StaticCidrPropertiesPtr and StaticCidrPropertiesPtrOutput values. +// You can construct a concrete instance of `StaticCidrPropertiesPtrInput` via: +// +// StaticCidrPropertiesArgs{...} +// +// or: +// +// nil +type StaticCidrPropertiesPtrInput interface { + pulumi.Input + + ToStaticCidrPropertiesPtrOutput() StaticCidrPropertiesPtrOutput + ToStaticCidrPropertiesPtrOutputWithContext(context.Context) StaticCidrPropertiesPtrOutput +} + +type staticCidrPropertiesPtrType StaticCidrPropertiesArgs + +func StaticCidrPropertiesPtr(v *StaticCidrPropertiesArgs) StaticCidrPropertiesPtrInput { + return (*staticCidrPropertiesPtrType)(v) +} + +func (*staticCidrPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**StaticCidrProperties)(nil)).Elem() +} + +func (i *staticCidrPropertiesPtrType) ToStaticCidrPropertiesPtrOutput() StaticCidrPropertiesPtrOutput { + return i.ToStaticCidrPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *staticCidrPropertiesPtrType) ToStaticCidrPropertiesPtrOutputWithContext(ctx context.Context) StaticCidrPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(StaticCidrPropertiesPtrOutput) +} + +// Properties of static CIDR resource. +type StaticCidrPropertiesOutput struct{ *pulumi.OutputState } + +func (StaticCidrPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*StaticCidrProperties)(nil)).Elem() +} + +func (o StaticCidrPropertiesOutput) ToStaticCidrPropertiesOutput() StaticCidrPropertiesOutput { + return o +} + +func (o StaticCidrPropertiesOutput) ToStaticCidrPropertiesOutputWithContext(ctx context.Context) StaticCidrPropertiesOutput { + return o +} + +func (o StaticCidrPropertiesOutput) ToStaticCidrPropertiesPtrOutput() StaticCidrPropertiesPtrOutput { + return o.ToStaticCidrPropertiesPtrOutputWithContext(context.Background()) +} + +func (o StaticCidrPropertiesOutput) ToStaticCidrPropertiesPtrOutputWithContext(ctx context.Context) StaticCidrPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v StaticCidrProperties) *StaticCidrProperties { + return &v + }).(StaticCidrPropertiesPtrOutput) +} + +// List of IP address prefixes of the resource. +func (o StaticCidrPropertiesOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v StaticCidrProperties) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +func (o StaticCidrPropertiesOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v StaticCidrProperties) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Number of IP addresses to allocate for a static CIDR resource. The IP addresses will be assigned based on IpamPools available space. +func (o StaticCidrPropertiesOutput) NumberOfIPAddressesToAllocate() pulumi.StringPtrOutput { + return o.ApplyT(func(v StaticCidrProperties) *string { return v.NumberOfIPAddressesToAllocate }).(pulumi.StringPtrOutput) +} + +type StaticCidrPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (StaticCidrPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**StaticCidrProperties)(nil)).Elem() +} + +func (o StaticCidrPropertiesPtrOutput) ToStaticCidrPropertiesPtrOutput() StaticCidrPropertiesPtrOutput { + return o +} + +func (o StaticCidrPropertiesPtrOutput) ToStaticCidrPropertiesPtrOutputWithContext(ctx context.Context) StaticCidrPropertiesPtrOutput { + return o +} + +func (o StaticCidrPropertiesPtrOutput) Elem() StaticCidrPropertiesOutput { + return o.ApplyT(func(v *StaticCidrProperties) StaticCidrProperties { + if v != nil { + return *v + } + var ret StaticCidrProperties + return ret + }).(StaticCidrPropertiesOutput) +} + +// List of IP address prefixes of the resource. +func (o StaticCidrPropertiesPtrOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *StaticCidrProperties) []string { + if v == nil { + return nil + } + return v.AddressPrefixes + }).(pulumi.StringArrayOutput) +} + +func (o StaticCidrPropertiesPtrOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *StaticCidrProperties) *string { + if v == nil { + return nil + } + return v.Description + }).(pulumi.StringPtrOutput) +} + +// Number of IP addresses to allocate for a static CIDR resource. The IP addresses will be assigned based on IpamPools available space. +func (o StaticCidrPropertiesPtrOutput) NumberOfIPAddressesToAllocate() pulumi.StringPtrOutput { + return o.ApplyT(func(v *StaticCidrProperties) *string { + if v == nil { + return nil + } + return v.NumberOfIPAddressesToAllocate + }).(pulumi.StringPtrOutput) +} + +// Properties of static CIDR resource. +type StaticCidrPropertiesResponse struct { + // List of IP address prefixes of the resource. + AddressPrefixes []string `pulumi:"addressPrefixes"` + Description *string `pulumi:"description"` + // Number of IP addresses to allocate for a static CIDR resource. The IP addresses will be assigned based on IpamPools available space. + NumberOfIPAddressesToAllocate *string `pulumi:"numberOfIPAddressesToAllocate"` + // Provisioning states of a resource. + ProvisioningState string `pulumi:"provisioningState"` + // Total number of IP addresses allocated for the static CIDR resource. + TotalNumberOfIPAddresses string `pulumi:"totalNumberOfIPAddresses"` +} + +// Properties of static CIDR resource. +type StaticCidrPropertiesResponseOutput struct{ *pulumi.OutputState } + +func (StaticCidrPropertiesResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*StaticCidrPropertiesResponse)(nil)).Elem() +} + +func (o StaticCidrPropertiesResponseOutput) ToStaticCidrPropertiesResponseOutput() StaticCidrPropertiesResponseOutput { + return o +} + +func (o StaticCidrPropertiesResponseOutput) ToStaticCidrPropertiesResponseOutputWithContext(ctx context.Context) StaticCidrPropertiesResponseOutput { + return o +} + +// List of IP address prefixes of the resource. +func (o StaticCidrPropertiesResponseOutput) AddressPrefixes() pulumi.StringArrayOutput { + return o.ApplyT(func(v StaticCidrPropertiesResponse) []string { return v.AddressPrefixes }).(pulumi.StringArrayOutput) +} + +func (o StaticCidrPropertiesResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v StaticCidrPropertiesResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Number of IP addresses to allocate for a static CIDR resource. The IP addresses will be assigned based on IpamPools available space. +func (o StaticCidrPropertiesResponseOutput) NumberOfIPAddressesToAllocate() pulumi.StringPtrOutput { + return o.ApplyT(func(v StaticCidrPropertiesResponse) *string { return v.NumberOfIPAddressesToAllocate }).(pulumi.StringPtrOutput) +} + +// Provisioning states of a resource. +func (o StaticCidrPropertiesResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v StaticCidrPropertiesResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Total number of IP addresses allocated for the static CIDR resource. +func (o StaticCidrPropertiesResponseOutput) TotalNumberOfIPAddresses() pulumi.StringOutput { + return o.ApplyT(func(v StaticCidrPropertiesResponse) string { return v.TotalNumberOfIPAddresses }).(pulumi.StringOutput) +} + // List of all Static Routes. type StaticRoute struct { // List of all address prefixes. @@ -13927,6 +16146,173 @@ func (o VMResponseOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v VMResponse) string { return v.Type }).(pulumi.StringOutput) } +// Properties of Verifier Workspace resource. +type VerifierWorkspaceProperties struct { + Description *string `pulumi:"description"` +} + +// VerifierWorkspacePropertiesInput is an input type that accepts VerifierWorkspacePropertiesArgs and VerifierWorkspacePropertiesOutput values. +// You can construct a concrete instance of `VerifierWorkspacePropertiesInput` via: +// +// VerifierWorkspacePropertiesArgs{...} +type VerifierWorkspacePropertiesInput interface { + pulumi.Input + + ToVerifierWorkspacePropertiesOutput() VerifierWorkspacePropertiesOutput + ToVerifierWorkspacePropertiesOutputWithContext(context.Context) VerifierWorkspacePropertiesOutput +} + +// Properties of Verifier Workspace resource. +type VerifierWorkspacePropertiesArgs struct { + Description pulumi.StringPtrInput `pulumi:"description"` +} + +func (VerifierWorkspacePropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*VerifierWorkspaceProperties)(nil)).Elem() +} + +func (i VerifierWorkspacePropertiesArgs) ToVerifierWorkspacePropertiesOutput() VerifierWorkspacePropertiesOutput { + return i.ToVerifierWorkspacePropertiesOutputWithContext(context.Background()) +} + +func (i VerifierWorkspacePropertiesArgs) ToVerifierWorkspacePropertiesOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(VerifierWorkspacePropertiesOutput) +} + +func (i VerifierWorkspacePropertiesArgs) ToVerifierWorkspacePropertiesPtrOutput() VerifierWorkspacePropertiesPtrOutput { + return i.ToVerifierWorkspacePropertiesPtrOutputWithContext(context.Background()) +} + +func (i VerifierWorkspacePropertiesArgs) ToVerifierWorkspacePropertiesPtrOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(VerifierWorkspacePropertiesOutput).ToVerifierWorkspacePropertiesPtrOutputWithContext(ctx) +} + +// VerifierWorkspacePropertiesPtrInput is an input type that accepts VerifierWorkspacePropertiesArgs, VerifierWorkspacePropertiesPtr and VerifierWorkspacePropertiesPtrOutput values. +// You can construct a concrete instance of `VerifierWorkspacePropertiesPtrInput` via: +// +// VerifierWorkspacePropertiesArgs{...} +// +// or: +// +// nil +type VerifierWorkspacePropertiesPtrInput interface { + pulumi.Input + + ToVerifierWorkspacePropertiesPtrOutput() VerifierWorkspacePropertiesPtrOutput + ToVerifierWorkspacePropertiesPtrOutputWithContext(context.Context) VerifierWorkspacePropertiesPtrOutput +} + +type verifierWorkspacePropertiesPtrType VerifierWorkspacePropertiesArgs + +func VerifierWorkspacePropertiesPtr(v *VerifierWorkspacePropertiesArgs) VerifierWorkspacePropertiesPtrInput { + return (*verifierWorkspacePropertiesPtrType)(v) +} + +func (*verifierWorkspacePropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**VerifierWorkspaceProperties)(nil)).Elem() +} + +func (i *verifierWorkspacePropertiesPtrType) ToVerifierWorkspacePropertiesPtrOutput() VerifierWorkspacePropertiesPtrOutput { + return i.ToVerifierWorkspacePropertiesPtrOutputWithContext(context.Background()) +} + +func (i *verifierWorkspacePropertiesPtrType) ToVerifierWorkspacePropertiesPtrOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(VerifierWorkspacePropertiesPtrOutput) +} + +// Properties of Verifier Workspace resource. +type VerifierWorkspacePropertiesOutput struct{ *pulumi.OutputState } + +func (VerifierWorkspacePropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*VerifierWorkspaceProperties)(nil)).Elem() +} + +func (o VerifierWorkspacePropertiesOutput) ToVerifierWorkspacePropertiesOutput() VerifierWorkspacePropertiesOutput { + return o +} + +func (o VerifierWorkspacePropertiesOutput) ToVerifierWorkspacePropertiesOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesOutput { + return o +} + +func (o VerifierWorkspacePropertiesOutput) ToVerifierWorkspacePropertiesPtrOutput() VerifierWorkspacePropertiesPtrOutput { + return o.ToVerifierWorkspacePropertiesPtrOutputWithContext(context.Background()) +} + +func (o VerifierWorkspacePropertiesOutput) ToVerifierWorkspacePropertiesPtrOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v VerifierWorkspaceProperties) *VerifierWorkspaceProperties { + return &v + }).(VerifierWorkspacePropertiesPtrOutput) +} + +func (o VerifierWorkspacePropertiesOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v VerifierWorkspaceProperties) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +type VerifierWorkspacePropertiesPtrOutput struct{ *pulumi.OutputState } + +func (VerifierWorkspacePropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**VerifierWorkspaceProperties)(nil)).Elem() +} + +func (o VerifierWorkspacePropertiesPtrOutput) ToVerifierWorkspacePropertiesPtrOutput() VerifierWorkspacePropertiesPtrOutput { + return o +} + +func (o VerifierWorkspacePropertiesPtrOutput) ToVerifierWorkspacePropertiesPtrOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesPtrOutput { + return o +} + +func (o VerifierWorkspacePropertiesPtrOutput) Elem() VerifierWorkspacePropertiesOutput { + return o.ApplyT(func(v *VerifierWorkspaceProperties) VerifierWorkspaceProperties { + if v != nil { + return *v + } + var ret VerifierWorkspaceProperties + return ret + }).(VerifierWorkspacePropertiesOutput) +} + +func (o VerifierWorkspacePropertiesPtrOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VerifierWorkspaceProperties) *string { + if v == nil { + return nil + } + return v.Description + }).(pulumi.StringPtrOutput) +} + +// Properties of Verifier Workspace resource. +type VerifierWorkspacePropertiesResponse struct { + Description *string `pulumi:"description"` + // Provisioning states of a resource. + ProvisioningState string `pulumi:"provisioningState"` +} + +// Properties of Verifier Workspace resource. +type VerifierWorkspacePropertiesResponseOutput struct{ *pulumi.OutputState } + +func (VerifierWorkspacePropertiesResponseOutput) ElementType() reflect.Type { + return reflect.TypeOf((*VerifierWorkspacePropertiesResponse)(nil)).Elem() +} + +func (o VerifierWorkspacePropertiesResponseOutput) ToVerifierWorkspacePropertiesResponseOutput() VerifierWorkspacePropertiesResponseOutput { + return o +} + +func (o VerifierWorkspacePropertiesResponseOutput) ToVerifierWorkspacePropertiesResponseOutputWithContext(ctx context.Context) VerifierWorkspacePropertiesResponseOutput { + return o +} + +func (o VerifierWorkspacePropertiesResponseOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v VerifierWorkspacePropertiesResponse) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// Provisioning states of a resource. +func (o VerifierWorkspacePropertiesResponseOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v VerifierWorkspacePropertiesResponse) string { return v.ProvisioningState }).(pulumi.StringOutput) +} + // Network Virtual Appliance Additional NIC properties. type VirtualApplianceAdditionalNicProperties struct { // Flag (true or false) for Intent for Public Ip on additional nic @@ -24569,6 +26955,26 @@ func (o WebApplicationFirewallScrubbingRulesResponseArrayOutput) Index(i pulumi. } func init() { + pulumi.RegisterOutputType(PoolAssociationResponseOutput{}) + pulumi.RegisterOutputType(PoolAssociationResponseArrayOutput{}) + pulumi.RegisterOutputType(PrivateDnsZoneConfigOutput{}) + pulumi.RegisterOutputType(PrivateDnsZoneConfigArrayOutput{}) + pulumi.RegisterOutputType(PrivateDnsZoneConfigResponseOutput{}) + pulumi.RegisterOutputType(PrivateDnsZoneConfigResponseArrayOutput{}) + pulumi.RegisterOutputType(PrivateEndpointConnectionResponseOutput{}) + pulumi.RegisterOutputType(PrivateEndpointConnectionResponseArrayOutput{}) + pulumi.RegisterOutputType(PrivateEndpointIPConfigurationOutput{}) + pulumi.RegisterOutputType(PrivateEndpointIPConfigurationArrayOutput{}) + pulumi.RegisterOutputType(PrivateEndpointIPConfigurationResponseOutput{}) + pulumi.RegisterOutputType(PrivateEndpointIPConfigurationResponseArrayOutput{}) + pulumi.RegisterOutputType(PrivateEndpointResponseOutput{}) + pulumi.RegisterOutputType(PrivateEndpointResponseArrayOutput{}) + pulumi.RegisterOutputType(PrivateLinkServiceTypeOutput{}) + pulumi.RegisterOutputType(PrivateLinkServiceTypePtrOutput{}) + pulumi.RegisterOutputType(PrivateLinkServiceConnectionOutput{}) + pulumi.RegisterOutputType(PrivateLinkServiceConnectionArrayOutput{}) + pulumi.RegisterOutputType(PrivateLinkServiceConnectionResponseOutput{}) + pulumi.RegisterOutputType(PrivateLinkServiceConnectionResponseArrayOutput{}) pulumi.RegisterOutputType(PrivateLinkServiceConnectionStateOutput{}) pulumi.RegisterOutputType(PrivateLinkServiceConnectionStatePtrOutput{}) pulumi.RegisterOutputType(PrivateLinkServiceConnectionStateResponseOutput{}) @@ -24631,6 +27037,10 @@ func init() { pulumi.RegisterOutputType(RadiusServerArrayOutput{}) pulumi.RegisterOutputType(RadiusServerResponseOutput{}) pulumi.RegisterOutputType(RadiusServerResponseArrayOutput{}) + pulumi.RegisterOutputType(ReachabilityAnalysisIntentPropertiesOutput{}) + pulumi.RegisterOutputType(ReachabilityAnalysisIntentPropertiesResponseOutput{}) + pulumi.RegisterOutputType(ReachabilityAnalysisRunPropertiesOutput{}) + pulumi.RegisterOutputType(ReachabilityAnalysisRunPropertiesResponseOutput{}) pulumi.RegisterOutputType(RecordSetResponseOutput{}) pulumi.RegisterOutputType(RecordSetResponseArrayOutput{}) pulumi.RegisterOutputType(RedirectConfigurationOutput{}) @@ -24639,6 +27049,8 @@ func init() { pulumi.RegisterOutputType(RedirectConfigurationResponsePtrOutput{}) pulumi.RegisterOutputType(ReferencedPublicIpAddressResponseOutput{}) pulumi.RegisterOutputType(ReferencedPublicIpAddressResponseArrayOutput{}) + pulumi.RegisterOutputType(ResourceBasicsResponseOutput{}) + pulumi.RegisterOutputType(ResourceBasicsResponseArrayOutput{}) pulumi.RegisterOutputType(ResourceNavigationLinkOutput{}) pulumi.RegisterOutputType(ResourceNavigationLinkArrayOutput{}) pulumi.RegisterOutputType(ResourceNavigationLinkResponseOutput{}) @@ -24671,12 +27083,16 @@ func init() { pulumi.RegisterOutputType(RoutingPolicyArrayOutput{}) pulumi.RegisterOutputType(RoutingPolicyResponseOutput{}) pulumi.RegisterOutputType(RoutingPolicyResponseArrayOutput{}) - pulumi.RegisterOutputType(RoutingRuleOutput{}) - pulumi.RegisterOutputType(RoutingRuleArrayOutput{}) + pulumi.RegisterOutputType(RoutingRuleTypeOutput{}) + pulumi.RegisterOutputType(RoutingRuleTypeArrayOutput{}) pulumi.RegisterOutputType(RoutingRuleLinkResponseOutput{}) pulumi.RegisterOutputType(RoutingRuleLinkResponseArrayOutput{}) + pulumi.RegisterOutputType(RoutingRuleNextHopOutput{}) + pulumi.RegisterOutputType(RoutingRuleNextHopResponseOutput{}) pulumi.RegisterOutputType(RoutingRuleResponseOutput{}) pulumi.RegisterOutputType(RoutingRuleResponseArrayOutput{}) + pulumi.RegisterOutputType(RoutingRuleRouteDestinationOutput{}) + pulumi.RegisterOutputType(RoutingRuleRouteDestinationResponseOutput{}) pulumi.RegisterOutputType(RoutingRuleUpdateParametersResponseWebApplicationFirewallPolicyLinkOutput{}) pulumi.RegisterOutputType(RoutingRuleUpdateParametersResponseWebApplicationFirewallPolicyLinkPtrOutput{}) pulumi.RegisterOutputType(RoutingRuleUpdateParametersWebApplicationFirewallPolicyLinkOutput{}) @@ -24699,6 +27115,10 @@ func init() { pulumi.RegisterOutputType(SecurityRuleTypeArrayOutput{}) pulumi.RegisterOutputType(SecurityRuleResponseOutput{}) pulumi.RegisterOutputType(SecurityRuleResponseArrayOutput{}) + pulumi.RegisterOutputType(SecurityUserGroupItemOutput{}) + pulumi.RegisterOutputType(SecurityUserGroupItemArrayOutput{}) + pulumi.RegisterOutputType(SecurityUserGroupItemResponseOutput{}) + pulumi.RegisterOutputType(SecurityUserGroupItemResponseArrayOutput{}) pulumi.RegisterOutputType(ServiceAssociationLinkOutput{}) pulumi.RegisterOutputType(ServiceAssociationLinkArrayOutput{}) pulumi.RegisterOutputType(ServiceAssociationLinkResponseOutput{}) @@ -24715,6 +27135,7 @@ func init() { pulumi.RegisterOutputType(ServiceEndpointPropertiesFormatArrayOutput{}) pulumi.RegisterOutputType(ServiceEndpointPropertiesFormatResponseOutput{}) pulumi.RegisterOutputType(ServiceEndpointPropertiesFormatResponseArrayOutput{}) + pulumi.RegisterOutputType(SharedKeyPropertiesResponseOutput{}) pulumi.RegisterOutputType(SingleQueryResultResponseOutput{}) pulumi.RegisterOutputType(SingleQueryResultResponseArrayOutput{}) pulumi.RegisterOutputType(SkuOutput{}) @@ -24729,6 +27150,9 @@ func init() { pulumi.RegisterOutputType(SrvRecordArrayOutput{}) pulumi.RegisterOutputType(SrvRecordResponseOutput{}) pulumi.RegisterOutputType(SrvRecordResponseArrayOutput{}) + pulumi.RegisterOutputType(StaticCidrPropertiesOutput{}) + pulumi.RegisterOutputType(StaticCidrPropertiesPtrOutput{}) + pulumi.RegisterOutputType(StaticCidrPropertiesResponseOutput{}) pulumi.RegisterOutputType(StaticRouteOutput{}) pulumi.RegisterOutputType(StaticRouteArrayOutput{}) pulumi.RegisterOutputType(StaticRouteResponseOutput{}) @@ -24778,6 +27202,9 @@ func init() { pulumi.RegisterOutputType(TxtRecordResponseArrayOutput{}) pulumi.RegisterOutputType(VMOutput{}) pulumi.RegisterOutputType(VMResponseOutput{}) + pulumi.RegisterOutputType(VerifierWorkspacePropertiesOutput{}) + pulumi.RegisterOutputType(VerifierWorkspacePropertiesPtrOutput{}) + pulumi.RegisterOutputType(VerifierWorkspacePropertiesResponseOutput{}) pulumi.RegisterOutputType(VirtualApplianceAdditionalNicPropertiesOutput{}) pulumi.RegisterOutputType(VirtualApplianceAdditionalNicPropertiesArrayOutput{}) pulumi.RegisterOutputType(VirtualApplianceAdditionalNicPropertiesResponseOutput{}) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisIntent.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisIntent.go new file mode 100644 index 000000000..f4e4fcb38 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisIntent.go @@ -0,0 +1,175 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Configuration information or intent on which to do the analysis on. +// Azure REST API version: 2024-01-01-preview. +type ReachabilityAnalysisIntent struct { + pulumi.CustomResourceState + + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // Represents the Reachability Analysis Intent properties. + Properties ReachabilityAnalysisIntentPropertiesResponseOutput `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewReachabilityAnalysisIntent registers a new resource with the given unique name, arguments, and options. +func NewReachabilityAnalysisIntent(ctx *pulumi.Context, + name string, args *ReachabilityAnalysisIntentArgs, opts ...pulumi.ResourceOption) (*ReachabilityAnalysisIntent, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.Properties == nil { + return nil, errors.New("invalid value for required argument 'Properties'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + if args.WorkspaceName == nil { + return nil, errors.New("invalid value for required argument 'WorkspaceName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240101preview:ReachabilityAnalysisIntent"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource ReachabilityAnalysisIntent + err := ctx.RegisterResource("azure-native:network:ReachabilityAnalysisIntent", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetReachabilityAnalysisIntent gets an existing ReachabilityAnalysisIntent resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetReachabilityAnalysisIntent(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ReachabilityAnalysisIntentState, opts ...pulumi.ResourceOption) (*ReachabilityAnalysisIntent, error) { + var resource ReachabilityAnalysisIntent + err := ctx.ReadResource("azure-native:network:ReachabilityAnalysisIntent", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ReachabilityAnalysisIntent resources. +type reachabilityAnalysisIntentState struct { +} + +type ReachabilityAnalysisIntentState struct { +} + +func (ReachabilityAnalysisIntentState) ElementType() reflect.Type { + return reflect.TypeOf((*reachabilityAnalysisIntentState)(nil)).Elem() +} + +type reachabilityAnalysisIntentArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Represents the Reachability Analysis Intent properties. + Properties ReachabilityAnalysisIntentProperties `pulumi:"properties"` + // Reachability Analysis Intent name. + ReachabilityAnalysisIntentName *string `pulumi:"reachabilityAnalysisIntentName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName string `pulumi:"workspaceName"` +} + +// The set of arguments for constructing a ReachabilityAnalysisIntent resource. +type ReachabilityAnalysisIntentArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // Represents the Reachability Analysis Intent properties. + Properties ReachabilityAnalysisIntentPropertiesInput + // Reachability Analysis Intent name. + ReachabilityAnalysisIntentName pulumi.StringPtrInput + // The name of the resource group. + ResourceGroupName pulumi.StringInput + // Workspace name. + WorkspaceName pulumi.StringInput +} + +func (ReachabilityAnalysisIntentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*reachabilityAnalysisIntentArgs)(nil)).Elem() +} + +type ReachabilityAnalysisIntentInput interface { + pulumi.Input + + ToReachabilityAnalysisIntentOutput() ReachabilityAnalysisIntentOutput + ToReachabilityAnalysisIntentOutputWithContext(ctx context.Context) ReachabilityAnalysisIntentOutput +} + +func (*ReachabilityAnalysisIntent) ElementType() reflect.Type { + return reflect.TypeOf((**ReachabilityAnalysisIntent)(nil)).Elem() +} + +func (i *ReachabilityAnalysisIntent) ToReachabilityAnalysisIntentOutput() ReachabilityAnalysisIntentOutput { + return i.ToReachabilityAnalysisIntentOutputWithContext(context.Background()) +} + +func (i *ReachabilityAnalysisIntent) ToReachabilityAnalysisIntentOutputWithContext(ctx context.Context) ReachabilityAnalysisIntentOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReachabilityAnalysisIntentOutput) +} + +type ReachabilityAnalysisIntentOutput struct{ *pulumi.OutputState } + +func (ReachabilityAnalysisIntentOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ReachabilityAnalysisIntent)(nil)).Elem() +} + +func (o ReachabilityAnalysisIntentOutput) ToReachabilityAnalysisIntentOutput() ReachabilityAnalysisIntentOutput { + return o +} + +func (o ReachabilityAnalysisIntentOutput) ToReachabilityAnalysisIntentOutputWithContext(ctx context.Context) ReachabilityAnalysisIntentOutput { + return o +} + +// The name of the resource +func (o ReachabilityAnalysisIntentOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *ReachabilityAnalysisIntent) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Represents the Reachability Analysis Intent properties. +func (o ReachabilityAnalysisIntentOutput) Properties() ReachabilityAnalysisIntentPropertiesResponseOutput { + return o.ApplyT(func(v *ReachabilityAnalysisIntent) ReachabilityAnalysisIntentPropertiesResponseOutput { + return v.Properties + }).(ReachabilityAnalysisIntentPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o ReachabilityAnalysisIntentOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *ReachabilityAnalysisIntent) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o ReachabilityAnalysisIntentOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *ReachabilityAnalysisIntent) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(ReachabilityAnalysisIntentOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisRun.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisRun.go new file mode 100644 index 000000000..0cb6c02d0 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/reachabilityAnalysisRun.go @@ -0,0 +1,173 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Configuration information for analysis run. +// Azure REST API version: 2024-01-01-preview. +type ReachabilityAnalysisRun struct { + pulumi.CustomResourceState + + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // Represents the Reachability Analysis Run properties. + Properties ReachabilityAnalysisRunPropertiesResponseOutput `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewReachabilityAnalysisRun registers a new resource with the given unique name, arguments, and options. +func NewReachabilityAnalysisRun(ctx *pulumi.Context, + name string, args *ReachabilityAnalysisRunArgs, opts ...pulumi.ResourceOption) (*ReachabilityAnalysisRun, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.Properties == nil { + return nil, errors.New("invalid value for required argument 'Properties'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + if args.WorkspaceName == nil { + return nil, errors.New("invalid value for required argument 'WorkspaceName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240101preview:ReachabilityAnalysisRun"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource ReachabilityAnalysisRun + err := ctx.RegisterResource("azure-native:network:ReachabilityAnalysisRun", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetReachabilityAnalysisRun gets an existing ReachabilityAnalysisRun resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetReachabilityAnalysisRun(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ReachabilityAnalysisRunState, opts ...pulumi.ResourceOption) (*ReachabilityAnalysisRun, error) { + var resource ReachabilityAnalysisRun + err := ctx.ReadResource("azure-native:network:ReachabilityAnalysisRun", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering ReachabilityAnalysisRun resources. +type reachabilityAnalysisRunState struct { +} + +type ReachabilityAnalysisRunState struct { +} + +func (ReachabilityAnalysisRunState) ElementType() reflect.Type { + return reflect.TypeOf((*reachabilityAnalysisRunState)(nil)).Elem() +} + +type reachabilityAnalysisRunArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Represents the Reachability Analysis Run properties. + Properties ReachabilityAnalysisRunProperties `pulumi:"properties"` + // Reachability Analysis Run name. + ReachabilityAnalysisRunName *string `pulumi:"reachabilityAnalysisRunName"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Workspace name. + WorkspaceName string `pulumi:"workspaceName"` +} + +// The set of arguments for constructing a ReachabilityAnalysisRun resource. +type ReachabilityAnalysisRunArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // Represents the Reachability Analysis Run properties. + Properties ReachabilityAnalysisRunPropertiesInput + // Reachability Analysis Run name. + ReachabilityAnalysisRunName pulumi.StringPtrInput + // The name of the resource group. + ResourceGroupName pulumi.StringInput + // Workspace name. + WorkspaceName pulumi.StringInput +} + +func (ReachabilityAnalysisRunArgs) ElementType() reflect.Type { + return reflect.TypeOf((*reachabilityAnalysisRunArgs)(nil)).Elem() +} + +type ReachabilityAnalysisRunInput interface { + pulumi.Input + + ToReachabilityAnalysisRunOutput() ReachabilityAnalysisRunOutput + ToReachabilityAnalysisRunOutputWithContext(ctx context.Context) ReachabilityAnalysisRunOutput +} + +func (*ReachabilityAnalysisRun) ElementType() reflect.Type { + return reflect.TypeOf((**ReachabilityAnalysisRun)(nil)).Elem() +} + +func (i *ReachabilityAnalysisRun) ToReachabilityAnalysisRunOutput() ReachabilityAnalysisRunOutput { + return i.ToReachabilityAnalysisRunOutputWithContext(context.Background()) +} + +func (i *ReachabilityAnalysisRun) ToReachabilityAnalysisRunOutputWithContext(ctx context.Context) ReachabilityAnalysisRunOutput { + return pulumi.ToOutputWithContext(ctx, i).(ReachabilityAnalysisRunOutput) +} + +type ReachabilityAnalysisRunOutput struct{ *pulumi.OutputState } + +func (ReachabilityAnalysisRunOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ReachabilityAnalysisRun)(nil)).Elem() +} + +func (o ReachabilityAnalysisRunOutput) ToReachabilityAnalysisRunOutput() ReachabilityAnalysisRunOutput { + return o +} + +func (o ReachabilityAnalysisRunOutput) ToReachabilityAnalysisRunOutputWithContext(ctx context.Context) ReachabilityAnalysisRunOutput { + return o +} + +// The name of the resource +func (o ReachabilityAnalysisRunOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *ReachabilityAnalysisRun) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Represents the Reachability Analysis Run properties. +func (o ReachabilityAnalysisRunOutput) Properties() ReachabilityAnalysisRunPropertiesResponseOutput { + return o.ApplyT(func(v *ReachabilityAnalysisRun) ReachabilityAnalysisRunPropertiesResponseOutput { return v.Properties }).(ReachabilityAnalysisRunPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o ReachabilityAnalysisRunOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *ReachabilityAnalysisRun) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o ReachabilityAnalysisRunOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *ReachabilityAnalysisRun) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(ReachabilityAnalysisRunOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/route.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/route.go index eeb1fc2d8..99bdb1109 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/route.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/route.go @@ -15,7 +15,7 @@ import ( // Route resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type Route struct { pulumi.CustomResourceState @@ -24,7 +24,7 @@ type Route struct { // A unique read-only string that changes whenever the resource is updated. Etag pulumi.StringOutput `pulumi:"etag"` // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride pulumi.BoolPtrOutput `pulumi:"hasBgpOverride"` + HasBgpOverride pulumi.BoolOutput `pulumi:"hasBgpOverride"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. Name pulumi.StringPtrOutput `pulumi:"name"` // The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. @@ -207,6 +207,12 @@ func NewRoute(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:Route"), }, + { + Type: pulumi.String("azure-native:network/v20240101:Route"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:Route"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) @@ -244,8 +250,6 @@ func (RouteState) ElementType() reflect.Type { type routeArgs struct { // The destination CIDR to which the route applies. AddressPrefix *string `pulumi:"addressPrefix"` - // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride *bool `pulumi:"hasBgpOverride"` // Resource ID. Id *string `pulumi:"id"` // The name of the resource that is unique within a resource group. This name can be used to access the resource. @@ -268,8 +272,6 @@ type routeArgs struct { type RouteArgs struct { // The destination CIDR to which the route applies. AddressPrefix pulumi.StringPtrInput - // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. - HasBgpOverride pulumi.BoolPtrInput // Resource ID. Id pulumi.StringPtrInput // The name of the resource that is unique within a resource group. This name can be used to access the resource. @@ -336,8 +338,8 @@ func (o RouteOutput) Etag() pulumi.StringOutput { } // A value indicating whether this route overrides overlapping BGP routes regardless of LPM. -func (o RouteOutput) HasBgpOverride() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *Route) pulumi.BoolPtrOutput { return v.HasBgpOverride }).(pulumi.BoolPtrOutput) +func (o RouteOutput) HasBgpOverride() pulumi.BoolOutput { + return o.ApplyT(func(v *Route) pulumi.BoolOutput { return v.HasBgpOverride }).(pulumi.BoolOutput) } // The name of the resource that is unique within a resource group. This name can be used to access the resource. diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilter.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilter.go index 633529d5a..169612494 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilter.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilter.go @@ -15,7 +15,7 @@ import ( // Route Filter Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type RouteFilter struct { pulumi.CustomResourceState @@ -188,6 +188,12 @@ func NewRouteFilter(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:RouteFilter"), }, + { + Type: pulumi.String("azure-native:network/v20240101:RouteFilter"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:RouteFilter"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilterRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilterRule.go index 54d039dfc..3ea976622 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilterRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeFilterRule.go @@ -15,7 +15,7 @@ import ( // Route Filter Rule Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2017-03-01, 2017-10-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2017-03-01, 2017-10-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type RouteFilterRule struct { pulumi.CustomResourceState @@ -196,6 +196,12 @@ func NewRouteFilterRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:RouteFilterRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:RouteFilterRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:RouteFilterRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeMap.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeMap.go index 9e165f743..1714a5b0c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeMap.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeMap.go @@ -15,7 +15,7 @@ import ( // The RouteMap child resource of a Virtual hub. // Azure REST API version: 2023-02-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type RouteMap struct { pulumi.CustomResourceState @@ -79,6 +79,12 @@ func NewRouteMap(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:RouteMap"), }, + { + Type: pulumi.String("azure-native:network/v20240101:RouteMap"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:RouteMap"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeTable.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeTable.go index 17e6de0f9..59504720f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeTable.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routeTable.go @@ -15,7 +15,7 @@ import ( // Route table resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type RouteTable struct { pulumi.CustomResourceState @@ -205,6 +205,12 @@ func NewRouteTable(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:RouteTable"), }, + { + Type: pulumi.String("azure-native:network/v20240101:RouteTable"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:RouteTable"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingIntent.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingIntent.go index e2176bda8..c7d03201e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingIntent.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingIntent.go @@ -15,7 +15,7 @@ import ( // The routing intent child resource of a Virtual hub. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-01-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type RoutingIntent struct { pulumi.CustomResourceState @@ -84,6 +84,12 @@ func NewRoutingIntent(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:RoutingIntent"), }, + { + Type: pulumi.String("azure-native:network/v20240101:RoutingIntent"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:RoutingIntent"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRule.go new file mode 100644 index 000000000..de4350e76 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRule.go @@ -0,0 +1,226 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Network routing rule. +// Azure REST API version: 2024-03-01. +type RoutingRule struct { + pulumi.CustomResourceState + + // A description for this rule. + Description pulumi.StringPtrOutput `pulumi:"description"` + // Indicates the destination for this particular rule. + Destination RoutingRuleRouteDestinationResponseOutput `pulumi:"destination"` + // A unique read-only string that changes whenever the resource is updated. + Etag pulumi.StringOutput `pulumi:"etag"` + // Resource name. + Name pulumi.StringOutput `pulumi:"name"` + // Indicates the next hop for this particular rule. + NextHop RoutingRuleNextHopResponseOutput `pulumi:"nextHop"` + // The provisioning state of the resource. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource type. + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewRoutingRule registers a new resource with the given unique name, arguments, and options. +func NewRoutingRule(ctx *pulumi.Context, + name string, args *RoutingRuleArgs, opts ...pulumi.ResourceOption) (*RoutingRule, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.ConfigurationName == nil { + return nil, errors.New("invalid value for required argument 'ConfigurationName'") + } + if args.Destination == nil { + return nil, errors.New("invalid value for required argument 'Destination'") + } + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.NextHop == nil { + return nil, errors.New("invalid value for required argument 'NextHop'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + if args.RuleCollectionName == nil { + return nil, errors.New("invalid value for required argument 'RuleCollectionName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240301:RoutingRule"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource RoutingRule + err := ctx.RegisterResource("azure-native:network:RoutingRule", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetRoutingRule gets an existing RoutingRule resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetRoutingRule(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *RoutingRuleState, opts ...pulumi.ResourceOption) (*RoutingRule, error) { + var resource RoutingRule + err := ctx.ReadResource("azure-native:network:RoutingRule", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering RoutingRule resources. +type routingRuleState struct { +} + +type RoutingRuleState struct { +} + +func (RoutingRuleState) ElementType() reflect.Type { + return reflect.TypeOf((*routingRuleState)(nil)).Elem() +} + +type routingRuleArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName string `pulumi:"configurationName"` + // A description for this rule. + Description *string `pulumi:"description"` + // Indicates the destination for this particular rule. + Destination RoutingRuleRouteDestination `pulumi:"destination"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Indicates the next hop for this particular rule. + NextHop RoutingRuleNextHop `pulumi:"nextHop"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager routing Configuration rule collection. + RuleCollectionName string `pulumi:"ruleCollectionName"` + // The name of the rule. + RuleName *string `pulumi:"ruleName"` +} + +// The set of arguments for constructing a RoutingRule resource. +type RoutingRuleArgs struct { + // The name of the network manager Routing Configuration. + ConfigurationName pulumi.StringInput + // A description for this rule. + Description pulumi.StringPtrInput + // Indicates the destination for this particular rule. + Destination RoutingRuleRouteDestinationInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // Indicates the next hop for this particular rule. + NextHop RoutingRuleNextHopInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // The name of the network manager routing Configuration rule collection. + RuleCollectionName pulumi.StringInput + // The name of the rule. + RuleName pulumi.StringPtrInput +} + +func (RoutingRuleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*routingRuleArgs)(nil)).Elem() +} + +type RoutingRuleInput interface { + pulumi.Input + + ToRoutingRuleOutput() RoutingRuleOutput + ToRoutingRuleOutputWithContext(ctx context.Context) RoutingRuleOutput +} + +func (*RoutingRule) ElementType() reflect.Type { + return reflect.TypeOf((**RoutingRule)(nil)).Elem() +} + +func (i *RoutingRule) ToRoutingRuleOutput() RoutingRuleOutput { + return i.ToRoutingRuleOutputWithContext(context.Background()) +} + +func (i *RoutingRule) ToRoutingRuleOutputWithContext(ctx context.Context) RoutingRuleOutput { + return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleOutput) +} + +type RoutingRuleOutput struct{ *pulumi.OutputState } + +func (RoutingRuleOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RoutingRule)(nil)).Elem() +} + +func (o RoutingRuleOutput) ToRoutingRuleOutput() RoutingRuleOutput { + return o +} + +func (o RoutingRuleOutput) ToRoutingRuleOutputWithContext(ctx context.Context) RoutingRuleOutput { + return o +} + +// A description for this rule. +func (o RoutingRuleOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RoutingRule) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// Indicates the destination for this particular rule. +func (o RoutingRuleOutput) Destination() RoutingRuleRouteDestinationResponseOutput { + return o.ApplyT(func(v *RoutingRule) RoutingRuleRouteDestinationResponseOutput { return v.Destination }).(RoutingRuleRouteDestinationResponseOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o RoutingRuleOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRule) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// Resource name. +func (o RoutingRuleOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRule) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Indicates the next hop for this particular rule. +func (o RoutingRuleOutput) NextHop() RoutingRuleNextHopResponseOutput { + return o.ApplyT(func(v *RoutingRule) RoutingRuleNextHopResponseOutput { return v.NextHop }).(RoutingRuleNextHopResponseOutput) +} + +// The provisioning state of the resource. +func (o RoutingRuleOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRule) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o RoutingRuleOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRule) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o RoutingRuleOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *RoutingRule) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o RoutingRuleOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRule) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(RoutingRuleOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRuleCollection.go new file mode 100644 index 000000000..83e274ecc --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/routingRuleCollection.go @@ -0,0 +1,216 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Defines the routing rule collection. +// Azure REST API version: 2024-03-01. +type RoutingRuleCollection struct { + pulumi.CustomResourceState + + // Groups for configuration + AppliesTo NetworkManagerRoutingGroupItemResponseArrayOutput `pulumi:"appliesTo"` + // A description of the routing rule collection. + Description pulumi.StringPtrOutput `pulumi:"description"` + // Determines whether BGP route propagation is enabled. Defaults to true. + DisableBgpRoutePropagation pulumi.StringPtrOutput `pulumi:"disableBgpRoutePropagation"` + // A unique read-only string that changes whenever the resource is updated. + Etag pulumi.StringOutput `pulumi:"etag"` + // Resource name. + Name pulumi.StringOutput `pulumi:"name"` + // The provisioning state of the resource. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource type. + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewRoutingRuleCollection registers a new resource with the given unique name, arguments, and options. +func NewRoutingRuleCollection(ctx *pulumi.Context, + name string, args *RoutingRuleCollectionArgs, opts ...pulumi.ResourceOption) (*RoutingRuleCollection, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AppliesTo == nil { + return nil, errors.New("invalid value for required argument 'AppliesTo'") + } + if args.ConfigurationName == nil { + return nil, errors.New("invalid value for required argument 'ConfigurationName'") + } + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240301:RoutingRuleCollection"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource RoutingRuleCollection + err := ctx.RegisterResource("azure-native:network:RoutingRuleCollection", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetRoutingRuleCollection gets an existing RoutingRuleCollection resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetRoutingRuleCollection(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *RoutingRuleCollectionState, opts ...pulumi.ResourceOption) (*RoutingRuleCollection, error) { + var resource RoutingRuleCollection + err := ctx.ReadResource("azure-native:network:RoutingRuleCollection", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering RoutingRuleCollection resources. +type routingRuleCollectionState struct { +} + +type RoutingRuleCollectionState struct { +} + +func (RoutingRuleCollectionState) ElementType() reflect.Type { + return reflect.TypeOf((*routingRuleCollectionState)(nil)).Elem() +} + +type routingRuleCollectionArgs struct { + // Groups for configuration + AppliesTo []NetworkManagerRoutingGroupItem `pulumi:"appliesTo"` + // The name of the network manager Routing Configuration. + ConfigurationName string `pulumi:"configurationName"` + // A description of the routing rule collection. + Description *string `pulumi:"description"` + // Determines whether BGP route propagation is enabled. Defaults to true. + DisableBgpRoutePropagation *string `pulumi:"disableBgpRoutePropagation"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager routing Configuration rule collection. + RuleCollectionName *string `pulumi:"ruleCollectionName"` +} + +// The set of arguments for constructing a RoutingRuleCollection resource. +type RoutingRuleCollectionArgs struct { + // Groups for configuration + AppliesTo NetworkManagerRoutingGroupItemArrayInput + // The name of the network manager Routing Configuration. + ConfigurationName pulumi.StringInput + // A description of the routing rule collection. + Description pulumi.StringPtrInput + // Determines whether BGP route propagation is enabled. Defaults to true. + DisableBgpRoutePropagation pulumi.StringPtrInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // The name of the network manager routing Configuration rule collection. + RuleCollectionName pulumi.StringPtrInput +} + +func (RoutingRuleCollectionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*routingRuleCollectionArgs)(nil)).Elem() +} + +type RoutingRuleCollectionInput interface { + pulumi.Input + + ToRoutingRuleCollectionOutput() RoutingRuleCollectionOutput + ToRoutingRuleCollectionOutputWithContext(ctx context.Context) RoutingRuleCollectionOutput +} + +func (*RoutingRuleCollection) ElementType() reflect.Type { + return reflect.TypeOf((**RoutingRuleCollection)(nil)).Elem() +} + +func (i *RoutingRuleCollection) ToRoutingRuleCollectionOutput() RoutingRuleCollectionOutput { + return i.ToRoutingRuleCollectionOutputWithContext(context.Background()) +} + +func (i *RoutingRuleCollection) ToRoutingRuleCollectionOutputWithContext(ctx context.Context) RoutingRuleCollectionOutput { + return pulumi.ToOutputWithContext(ctx, i).(RoutingRuleCollectionOutput) +} + +type RoutingRuleCollectionOutput struct{ *pulumi.OutputState } + +func (RoutingRuleCollectionOutput) ElementType() reflect.Type { + return reflect.TypeOf((**RoutingRuleCollection)(nil)).Elem() +} + +func (o RoutingRuleCollectionOutput) ToRoutingRuleCollectionOutput() RoutingRuleCollectionOutput { + return o +} + +func (o RoutingRuleCollectionOutput) ToRoutingRuleCollectionOutputWithContext(ctx context.Context) RoutingRuleCollectionOutput { + return o +} + +// Groups for configuration +func (o RoutingRuleCollectionOutput) AppliesTo() NetworkManagerRoutingGroupItemResponseArrayOutput { + return o.ApplyT(func(v *RoutingRuleCollection) NetworkManagerRoutingGroupItemResponseArrayOutput { return v.AppliesTo }).(NetworkManagerRoutingGroupItemResponseArrayOutput) +} + +// A description of the routing rule collection. +func (o RoutingRuleCollectionOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// Determines whether BGP route propagation is enabled. Defaults to true. +func (o RoutingRuleCollectionOutput) DisableBgpRoutePropagation() pulumi.StringPtrOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringPtrOutput { return v.DisableBgpRoutePropagation }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o RoutingRuleCollectionOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// Resource name. +func (o RoutingRuleCollectionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The provisioning state of the resource. +func (o RoutingRuleCollectionOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o RoutingRuleCollectionOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o RoutingRuleCollectionOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *RoutingRuleCollection) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o RoutingRuleCollectionOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *RoutingRuleCollection) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(RoutingRuleCollectionOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/scopeConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/scopeConnection.go index c66d1e576..7949d249a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/scopeConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/scopeConnection.go @@ -15,7 +15,7 @@ import ( // The Scope Connections resource // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-02-01-preview. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ScopeConnection struct { pulumi.CustomResourceState @@ -91,6 +91,12 @@ func NewScopeConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ScopeConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ScopeConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ScopeConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityAdminConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityAdminConfiguration.go index ff84f8351..cc4f043af 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityAdminConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityAdminConfiguration.go @@ -15,7 +15,7 @@ import ( // Defines the security admin configuration // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2021-05-01-preview, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-01-01-preview, 2024-03-01. type SecurityAdminConfiguration struct { pulumi.CustomResourceState @@ -96,6 +96,15 @@ func NewSecurityAdminConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:SecurityAdminConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240101:SecurityAdminConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240101preview:SecurityAdminConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:SecurityAdminConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityPartnerProvider.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityPartnerProvider.go index 0b4ec676b..f0bf938ab 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityPartnerProvider.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityPartnerProvider.go @@ -15,7 +15,7 @@ import ( // Security Partner Provider resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type SecurityPartnerProvider struct { pulumi.CustomResourceState @@ -116,6 +116,12 @@ func NewSecurityPartnerProvider(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:SecurityPartnerProvider"), }, + { + Type: pulumi.String("azure-native:network/v20240101:SecurityPartnerProvider"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:SecurityPartnerProvider"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityRule.go index cb0edd490..4f162182d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityRule.go @@ -15,7 +15,7 @@ import ( // Network security rule. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2017-03-01, 2019-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2017-03-01, 2019-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type SecurityRule struct { pulumi.CustomResourceState @@ -238,6 +238,12 @@ func NewSecurityRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:SecurityRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:SecurityRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:SecurityRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserConfiguration.go index 0e65c4918..241837fdf 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserConfiguration.go @@ -15,7 +15,7 @@ import ( // Defines the security user configuration // Azure REST API version: 2022-04-01-preview. Prior API version in Azure Native 1.x: 2021-02-01-preview. // -// Other available API versions: 2021-05-01-preview. +// Other available API versions: 2021-05-01-preview, 2024-03-01. type SecurityUserConfiguration struct { pulumi.CustomResourceState @@ -61,6 +61,9 @@ func NewSecurityUserConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220401preview:SecurityUserConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240301:SecurityUserConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRule.go new file mode 100644 index 000000000..3a1c8e53c --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRule.go @@ -0,0 +1,282 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Network security user rule. +// Azure REST API version: 2024-03-01. +type SecurityUserRule struct { + pulumi.CustomResourceState + + // A description for this rule. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The destination port ranges. + DestinationPortRanges pulumi.StringArrayOutput `pulumi:"destinationPortRanges"` + // The destination address prefixes. CIDR or destination IP ranges. + Destinations AddressPrefixItemResponseArrayOutput `pulumi:"destinations"` + // Indicates if the traffic matched against the rule in inbound or outbound. + Direction pulumi.StringOutput `pulumi:"direction"` + // A unique read-only string that changes whenever the resource is updated. + Etag pulumi.StringOutput `pulumi:"etag"` + // Resource name. + Name pulumi.StringOutput `pulumi:"name"` + // Network protocol this rule applies to. + Protocol pulumi.StringOutput `pulumi:"protocol"` + // The provisioning state of the security configuration user rule resource. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // The source port ranges. + SourcePortRanges pulumi.StringArrayOutput `pulumi:"sourcePortRanges"` + // The CIDR or source IP ranges. + Sources AddressPrefixItemResponseArrayOutput `pulumi:"sources"` + // The system metadata related to this resource. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource type. + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewSecurityUserRule registers a new resource with the given unique name, arguments, and options. +func NewSecurityUserRule(ctx *pulumi.Context, + name string, args *SecurityUserRuleArgs, opts ...pulumi.ResourceOption) (*SecurityUserRule, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.ConfigurationName == nil { + return nil, errors.New("invalid value for required argument 'ConfigurationName'") + } + if args.Direction == nil { + return nil, errors.New("invalid value for required argument 'Direction'") + } + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.Protocol == nil { + return nil, errors.New("invalid value for required argument 'Protocol'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + if args.RuleCollectionName == nil { + return nil, errors.New("invalid value for required argument 'RuleCollectionName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20210201preview:SecurityUserRule"), + }, + { + Type: pulumi.String("azure-native:network/v20210501preview:SecurityUserRule"), + }, + { + Type: pulumi.String("azure-native:network/v20220201preview:SecurityUserRule"), + }, + { + Type: pulumi.String("azure-native:network/v20220401preview:SecurityUserRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:SecurityUserRule"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource SecurityUserRule + err := ctx.RegisterResource("azure-native:network:SecurityUserRule", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetSecurityUserRule gets an existing SecurityUserRule resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetSecurityUserRule(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *SecurityUserRuleState, opts ...pulumi.ResourceOption) (*SecurityUserRule, error) { + var resource SecurityUserRule + err := ctx.ReadResource("azure-native:network:SecurityUserRule", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering SecurityUserRule resources. +type securityUserRuleState struct { +} + +type SecurityUserRuleState struct { +} + +func (SecurityUserRuleState) ElementType() reflect.Type { + return reflect.TypeOf((*securityUserRuleState)(nil)).Elem() +} + +type securityUserRuleArgs struct { + // The name of the network manager Security Configuration. + ConfigurationName string `pulumi:"configurationName"` + // A description for this rule. + Description *string `pulumi:"description"` + // The destination port ranges. + DestinationPortRanges []string `pulumi:"destinationPortRanges"` + // The destination address prefixes. CIDR or destination IP ranges. + Destinations []AddressPrefixItem `pulumi:"destinations"` + // Indicates if the traffic matched against the rule in inbound or outbound. + Direction string `pulumi:"direction"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Network protocol this rule applies to. + Protocol string `pulumi:"protocol"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager security Configuration rule collection. + RuleCollectionName string `pulumi:"ruleCollectionName"` + // The name of the rule. + RuleName *string `pulumi:"ruleName"` + // The source port ranges. + SourcePortRanges []string `pulumi:"sourcePortRanges"` + // The CIDR or source IP ranges. + Sources []AddressPrefixItem `pulumi:"sources"` +} + +// The set of arguments for constructing a SecurityUserRule resource. +type SecurityUserRuleArgs struct { + // The name of the network manager Security Configuration. + ConfigurationName pulumi.StringInput + // A description for this rule. + Description pulumi.StringPtrInput + // The destination port ranges. + DestinationPortRanges pulumi.StringArrayInput + // The destination address prefixes. CIDR or destination IP ranges. + Destinations AddressPrefixItemArrayInput + // Indicates if the traffic matched against the rule in inbound or outbound. + Direction pulumi.StringInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // Network protocol this rule applies to. + Protocol pulumi.StringInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // The name of the network manager security Configuration rule collection. + RuleCollectionName pulumi.StringInput + // The name of the rule. + RuleName pulumi.StringPtrInput + // The source port ranges. + SourcePortRanges pulumi.StringArrayInput + // The CIDR or source IP ranges. + Sources AddressPrefixItemArrayInput +} + +func (SecurityUserRuleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*securityUserRuleArgs)(nil)).Elem() +} + +type SecurityUserRuleInput interface { + pulumi.Input + + ToSecurityUserRuleOutput() SecurityUserRuleOutput + ToSecurityUserRuleOutputWithContext(ctx context.Context) SecurityUserRuleOutput +} + +func (*SecurityUserRule) ElementType() reflect.Type { + return reflect.TypeOf((**SecurityUserRule)(nil)).Elem() +} + +func (i *SecurityUserRule) ToSecurityUserRuleOutput() SecurityUserRuleOutput { + return i.ToSecurityUserRuleOutputWithContext(context.Background()) +} + +func (i *SecurityUserRule) ToSecurityUserRuleOutputWithContext(ctx context.Context) SecurityUserRuleOutput { + return pulumi.ToOutputWithContext(ctx, i).(SecurityUserRuleOutput) +} + +type SecurityUserRuleOutput struct{ *pulumi.OutputState } + +func (SecurityUserRuleOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SecurityUserRule)(nil)).Elem() +} + +func (o SecurityUserRuleOutput) ToSecurityUserRuleOutput() SecurityUserRuleOutput { + return o +} + +func (o SecurityUserRuleOutput) ToSecurityUserRuleOutputWithContext(ctx context.Context) SecurityUserRuleOutput { + return o +} + +// A description for this rule. +func (o SecurityUserRuleOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// The destination port ranges. +func (o SecurityUserRuleOutput) DestinationPortRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringArrayOutput { return v.DestinationPortRanges }).(pulumi.StringArrayOutput) +} + +// The destination address prefixes. CIDR or destination IP ranges. +func (o SecurityUserRuleOutput) Destinations() AddressPrefixItemResponseArrayOutput { + return o.ApplyT(func(v *SecurityUserRule) AddressPrefixItemResponseArrayOutput { return v.Destinations }).(AddressPrefixItemResponseArrayOutput) +} + +// Indicates if the traffic matched against the rule in inbound or outbound. +func (o SecurityUserRuleOutput) Direction() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.Direction }).(pulumi.StringOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o SecurityUserRuleOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// Resource name. +func (o SecurityUserRuleOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Network protocol this rule applies to. +func (o SecurityUserRuleOutput) Protocol() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.Protocol }).(pulumi.StringOutput) +} + +// The provisioning state of the security configuration user rule resource. +func (o SecurityUserRuleOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o SecurityUserRuleOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The source port ranges. +func (o SecurityUserRuleOutput) SourcePortRanges() pulumi.StringArrayOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringArrayOutput { return v.SourcePortRanges }).(pulumi.StringArrayOutput) +} + +// The CIDR or source IP ranges. +func (o SecurityUserRuleOutput) Sources() AddressPrefixItemResponseArrayOutput { + return o.ApplyT(func(v *SecurityUserRule) AddressPrefixItemResponseArrayOutput { return v.Sources }).(AddressPrefixItemResponseArrayOutput) +} + +// The system metadata related to this resource. +func (o SecurityUserRuleOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *SecurityUserRule) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o SecurityUserRuleOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRule) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(SecurityUserRuleOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRuleCollection.go new file mode 100644 index 000000000..e3cb19dd3 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/securityUserRuleCollection.go @@ -0,0 +1,217 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Defines the security user rule collection. +// Azure REST API version: 2024-03-01. +type SecurityUserRuleCollection struct { + pulumi.CustomResourceState + + // Groups for configuration + AppliesToGroups SecurityUserGroupItemResponseArrayOutput `pulumi:"appliesToGroups"` + // A description of the security user rule collection. + Description pulumi.StringPtrOutput `pulumi:"description"` + // A unique read-only string that changes whenever the resource is updated. + Etag pulumi.StringOutput `pulumi:"etag"` + // Resource name. + Name pulumi.StringOutput `pulumi:"name"` + // The provisioning state of the resource. + ProvisioningState pulumi.StringOutput `pulumi:"provisioningState"` + // Unique identifier for this resource. + ResourceGuid pulumi.StringOutput `pulumi:"resourceGuid"` + // The system metadata related to this resource. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource type. + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewSecurityUserRuleCollection registers a new resource with the given unique name, arguments, and options. +func NewSecurityUserRuleCollection(ctx *pulumi.Context, + name string, args *SecurityUserRuleCollectionArgs, opts ...pulumi.ResourceOption) (*SecurityUserRuleCollection, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AppliesToGroups == nil { + return nil, errors.New("invalid value for required argument 'AppliesToGroups'") + } + if args.ConfigurationName == nil { + return nil, errors.New("invalid value for required argument 'ConfigurationName'") + } + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20210201preview:SecurityUserRuleCollection"), + }, + { + Type: pulumi.String("azure-native:network/v20210501preview:SecurityUserRuleCollection"), + }, + { + Type: pulumi.String("azure-native:network/v20220201preview:SecurityUserRuleCollection"), + }, + { + Type: pulumi.String("azure-native:network/v20220401preview:SecurityUserRuleCollection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:SecurityUserRuleCollection"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource SecurityUserRuleCollection + err := ctx.RegisterResource("azure-native:network:SecurityUserRuleCollection", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetSecurityUserRuleCollection gets an existing SecurityUserRuleCollection resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetSecurityUserRuleCollection(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *SecurityUserRuleCollectionState, opts ...pulumi.ResourceOption) (*SecurityUserRuleCollection, error) { + var resource SecurityUserRuleCollection + err := ctx.ReadResource("azure-native:network:SecurityUserRuleCollection", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering SecurityUserRuleCollection resources. +type securityUserRuleCollectionState struct { +} + +type SecurityUserRuleCollectionState struct { +} + +func (SecurityUserRuleCollectionState) ElementType() reflect.Type { + return reflect.TypeOf((*securityUserRuleCollectionState)(nil)).Elem() +} + +type securityUserRuleCollectionArgs struct { + // Groups for configuration + AppliesToGroups []SecurityUserGroupItem `pulumi:"appliesToGroups"` + // The name of the network manager Security Configuration. + ConfigurationName string `pulumi:"configurationName"` + // A description of the security user rule collection. + Description *string `pulumi:"description"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // The name of the resource group. The name is case insensitive. + ResourceGroupName string `pulumi:"resourceGroupName"` + // The name of the network manager security Configuration rule collection. + RuleCollectionName *string `pulumi:"ruleCollectionName"` +} + +// The set of arguments for constructing a SecurityUserRuleCollection resource. +type SecurityUserRuleCollectionArgs struct { + // Groups for configuration + AppliesToGroups SecurityUserGroupItemArrayInput + // The name of the network manager Security Configuration. + ConfigurationName pulumi.StringInput + // A description of the security user rule collection. + Description pulumi.StringPtrInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // The name of the resource group. The name is case insensitive. + ResourceGroupName pulumi.StringInput + // The name of the network manager security Configuration rule collection. + RuleCollectionName pulumi.StringPtrInput +} + +func (SecurityUserRuleCollectionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*securityUserRuleCollectionArgs)(nil)).Elem() +} + +type SecurityUserRuleCollectionInput interface { + pulumi.Input + + ToSecurityUserRuleCollectionOutput() SecurityUserRuleCollectionOutput + ToSecurityUserRuleCollectionOutputWithContext(ctx context.Context) SecurityUserRuleCollectionOutput +} + +func (*SecurityUserRuleCollection) ElementType() reflect.Type { + return reflect.TypeOf((**SecurityUserRuleCollection)(nil)).Elem() +} + +func (i *SecurityUserRuleCollection) ToSecurityUserRuleCollectionOutput() SecurityUserRuleCollectionOutput { + return i.ToSecurityUserRuleCollectionOutputWithContext(context.Background()) +} + +func (i *SecurityUserRuleCollection) ToSecurityUserRuleCollectionOutputWithContext(ctx context.Context) SecurityUserRuleCollectionOutput { + return pulumi.ToOutputWithContext(ctx, i).(SecurityUserRuleCollectionOutput) +} + +type SecurityUserRuleCollectionOutput struct{ *pulumi.OutputState } + +func (SecurityUserRuleCollectionOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SecurityUserRuleCollection)(nil)).Elem() +} + +func (o SecurityUserRuleCollectionOutput) ToSecurityUserRuleCollectionOutput() SecurityUserRuleCollectionOutput { + return o +} + +func (o SecurityUserRuleCollectionOutput) ToSecurityUserRuleCollectionOutputWithContext(ctx context.Context) SecurityUserRuleCollectionOutput { + return o +} + +// Groups for configuration +func (o SecurityUserRuleCollectionOutput) AppliesToGroups() SecurityUserGroupItemResponseArrayOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) SecurityUserGroupItemResponseArrayOutput { return v.AppliesToGroups }).(SecurityUserGroupItemResponseArrayOutput) +} + +// A description of the security user rule collection. +func (o SecurityUserRuleCollectionOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// A unique read-only string that changes whenever the resource is updated. +func (o SecurityUserRuleCollectionOutput) Etag() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) pulumi.StringOutput { return v.Etag }).(pulumi.StringOutput) +} + +// Resource name. +func (o SecurityUserRuleCollectionOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The provisioning state of the resource. +func (o SecurityUserRuleCollectionOutput) ProvisioningState() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) pulumi.StringOutput { return v.ProvisioningState }).(pulumi.StringOutput) +} + +// Unique identifier for this resource. +func (o SecurityUserRuleCollectionOutput) ResourceGuid() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) pulumi.StringOutput { return v.ResourceGuid }).(pulumi.StringOutput) +} + +// The system metadata related to this resource. +func (o SecurityUserRuleCollectionOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource type. +func (o SecurityUserRuleCollectionOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *SecurityUserRuleCollection) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(SecurityUserRuleCollectionOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicy.go index d12e3ff83..0e526ed97 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicy.go @@ -15,7 +15,7 @@ import ( // Service End point policy resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ServiceEndpointPolicy struct { pulumi.CustomResourceState @@ -161,6 +161,12 @@ func NewServiceEndpointPolicy(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ServiceEndpointPolicy"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ServiceEndpointPolicy"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ServiceEndpointPolicy"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicyDefinition.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicyDefinition.go index 0ab369687..f82d5e82c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicyDefinition.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/serviceEndpointPolicyDefinition.go @@ -15,7 +15,7 @@ import ( // Service Endpoint policy definitions. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type ServiceEndpointPolicyDefinition struct { pulumi.CustomResourceState @@ -154,6 +154,12 @@ func NewServiceEndpointPolicyDefinition(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:ServiceEndpointPolicyDefinition"), }, + { + Type: pulumi.String("azure-native:network/v20240101:ServiceEndpointPolicyDefinition"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:ServiceEndpointPolicyDefinition"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticCidr.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticCidr.go new file mode 100644 index 000000000..bf83201a1 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticCidr.go @@ -0,0 +1,170 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Instance of StaticCidr resource. +// Azure REST API version: 2024-01-01-preview. +type StaticCidr struct { + pulumi.CustomResourceState + + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // Properties of static CIDR resource. + Properties StaticCidrPropertiesResponseOutput `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewStaticCidr registers a new resource with the given unique name, arguments, and options. +func NewStaticCidr(ctx *pulumi.Context, + name string, args *StaticCidrArgs, opts ...pulumi.ResourceOption) (*StaticCidr, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.PoolName == nil { + return nil, errors.New("invalid value for required argument 'PoolName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240101preview:StaticCidr"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource StaticCidr + err := ctx.RegisterResource("azure-native:network:StaticCidr", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetStaticCidr gets an existing StaticCidr resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetStaticCidr(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *StaticCidrState, opts ...pulumi.ResourceOption) (*StaticCidr, error) { + var resource StaticCidr + err := ctx.ReadResource("azure-native:network:StaticCidr", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering StaticCidr resources. +type staticCidrState struct { +} + +type StaticCidrState struct { +} + +func (StaticCidrState) ElementType() reflect.Type { + return reflect.TypeOf((*staticCidrState)(nil)).Elem() +} + +type staticCidrArgs struct { + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // IP Address Manager Pool resource name. + PoolName string `pulumi:"poolName"` + // Properties of static CIDR resource. + Properties *StaticCidrProperties `pulumi:"properties"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Static Cidr allocation name. + StaticCidrName *string `pulumi:"staticCidrName"` +} + +// The set of arguments for constructing a StaticCidr resource. +type StaticCidrArgs struct { + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // IP Address Manager Pool resource name. + PoolName pulumi.StringInput + // Properties of static CIDR resource. + Properties StaticCidrPropertiesPtrInput + // The name of the resource group. + ResourceGroupName pulumi.StringInput + // Static Cidr allocation name. + StaticCidrName pulumi.StringPtrInput +} + +func (StaticCidrArgs) ElementType() reflect.Type { + return reflect.TypeOf((*staticCidrArgs)(nil)).Elem() +} + +type StaticCidrInput interface { + pulumi.Input + + ToStaticCidrOutput() StaticCidrOutput + ToStaticCidrOutputWithContext(ctx context.Context) StaticCidrOutput +} + +func (*StaticCidr) ElementType() reflect.Type { + return reflect.TypeOf((**StaticCidr)(nil)).Elem() +} + +func (i *StaticCidr) ToStaticCidrOutput() StaticCidrOutput { + return i.ToStaticCidrOutputWithContext(context.Background()) +} + +func (i *StaticCidr) ToStaticCidrOutputWithContext(ctx context.Context) StaticCidrOutput { + return pulumi.ToOutputWithContext(ctx, i).(StaticCidrOutput) +} + +type StaticCidrOutput struct{ *pulumi.OutputState } + +func (StaticCidrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**StaticCidr)(nil)).Elem() +} + +func (o StaticCidrOutput) ToStaticCidrOutput() StaticCidrOutput { + return o +} + +func (o StaticCidrOutput) ToStaticCidrOutputWithContext(ctx context.Context) StaticCidrOutput { + return o +} + +// The name of the resource +func (o StaticCidrOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *StaticCidr) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Properties of static CIDR resource. +func (o StaticCidrOutput) Properties() StaticCidrPropertiesResponseOutput { + return o.ApplyT(func(v *StaticCidr) StaticCidrPropertiesResponseOutput { return v.Properties }).(StaticCidrPropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o StaticCidrOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *StaticCidr) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o StaticCidrOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *StaticCidr) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(StaticCidrOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticMember.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticMember.go index 8828a46b6..1792e26b7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticMember.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/staticMember.go @@ -15,7 +15,7 @@ import ( // StaticMember Item. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-02-01-preview. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type StaticMember struct { pulumi.CustomResourceState @@ -94,6 +94,12 @@ func NewStaticMember(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:StaticMember"), }, + { + Type: pulumi.String("azure-native:network/v20240101:StaticMember"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:StaticMember"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subnet.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subnet.go index f3ca7db0a..261859c02 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subnet.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subnet.go @@ -15,7 +15,7 @@ import ( // Subnet in a virtual network resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-02-01, 2019-06-01, 2019-08-01, 2020-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2016-03-30, 2019-02-01, 2019-06-01, 2019-08-01, 2020-06-01, 2022-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type Subnet struct { pulumi.CustomResourceState @@ -238,6 +238,12 @@ func NewSubnet(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:Subnet"), }, + { + Type: pulumi.String("azure-native:network/v20240101:Subnet"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:Subnet"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subscriptionNetworkManagerConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subscriptionNetworkManagerConnection.go index bb7a74f2c..6f5cd9d99 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subscriptionNetworkManagerConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/subscriptionNetworkManagerConnection.go @@ -14,7 +14,7 @@ import ( // The Network Manager Connection resource // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-02-01-preview. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type SubscriptionNetworkManagerConnection struct { pulumi.CustomResourceState @@ -82,6 +82,12 @@ func NewSubscriptionNetworkManagerConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:SubscriptionNetworkManagerConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:SubscriptionNetworkManagerConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:SubscriptionNetworkManagerConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRule.go index 5120c9a1c..19547ffdc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRule.go @@ -90,6 +90,9 @@ func NewUserRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220401preview:UserRule"), }, + { + Type: pulumi.String("azure-native:network/v20240301:UserRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRuleCollection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRuleCollection.go index e374abc80..1673770b8 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRuleCollection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/userRuleCollection.go @@ -67,6 +67,9 @@ func NewUserRuleCollection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20220401preview:UserRuleCollection"), }, + { + Type: pulumi.String("azure-native:network/v20240301:UserRuleCollection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/verifierWorkspace.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/verifierWorkspace.go new file mode 100644 index 000000000..40f109d14 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/verifierWorkspace.go @@ -0,0 +1,185 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package network + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-azure-native-sdk/v2/utilities" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +// Instance of Verifier Workspace. +// Azure REST API version: 2024-01-01-preview. +type VerifierWorkspace struct { + pulumi.CustomResourceState + + // The geo-location where the resource lives + Location pulumi.StringOutput `pulumi:"location"` + // The name of the resource + Name pulumi.StringOutput `pulumi:"name"` + // Properties of Verifier Workspace resource. + Properties VerifierWorkspacePropertiesResponseOutput `pulumi:"properties"` + // Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData SystemDataResponseOutput `pulumi:"systemData"` + // Resource tags. + Tags pulumi.StringMapOutput `pulumi:"tags"` + // The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type pulumi.StringOutput `pulumi:"type"` +} + +// NewVerifierWorkspace registers a new resource with the given unique name, arguments, and options. +func NewVerifierWorkspace(ctx *pulumi.Context, + name string, args *VerifierWorkspaceArgs, opts ...pulumi.ResourceOption) (*VerifierWorkspace, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.NetworkManagerName == nil { + return nil, errors.New("invalid value for required argument 'NetworkManagerName'") + } + if args.ResourceGroupName == nil { + return nil, errors.New("invalid value for required argument 'ResourceGroupName'") + } + aliases := pulumi.Aliases([]pulumi.Alias{ + { + Type: pulumi.String("azure-native:network/v20240101preview:VerifierWorkspace"), + }, + }) + opts = append(opts, aliases) + opts = utilities.PkgResourceDefaultOpts(opts) + var resource VerifierWorkspace + err := ctx.RegisterResource("azure-native:network:VerifierWorkspace", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetVerifierWorkspace gets an existing VerifierWorkspace resource's state with the given name, ID, and optional +// state properties that are used to uniquely qualify the lookup (nil if not required). +func GetVerifierWorkspace(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *VerifierWorkspaceState, opts ...pulumi.ResourceOption) (*VerifierWorkspace, error) { + var resource VerifierWorkspace + err := ctx.ReadResource("azure-native:network:VerifierWorkspace", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering VerifierWorkspace resources. +type verifierWorkspaceState struct { +} + +type VerifierWorkspaceState struct { +} + +func (VerifierWorkspaceState) ElementType() reflect.Type { + return reflect.TypeOf((*verifierWorkspaceState)(nil)).Elem() +} + +type verifierWorkspaceArgs struct { + // The geo-location where the resource lives + Location *string `pulumi:"location"` + // The name of the network manager. + NetworkManagerName string `pulumi:"networkManagerName"` + // Properties of Verifier Workspace resource. + Properties *VerifierWorkspaceProperties `pulumi:"properties"` + // The name of the resource group. + ResourceGroupName string `pulumi:"resourceGroupName"` + // Resource tags. + Tags map[string]string `pulumi:"tags"` + // Workspace name. + WorkspaceName *string `pulumi:"workspaceName"` +} + +// The set of arguments for constructing a VerifierWorkspace resource. +type VerifierWorkspaceArgs struct { + // The geo-location where the resource lives + Location pulumi.StringPtrInput + // The name of the network manager. + NetworkManagerName pulumi.StringInput + // Properties of Verifier Workspace resource. + Properties VerifierWorkspacePropertiesPtrInput + // The name of the resource group. + ResourceGroupName pulumi.StringInput + // Resource tags. + Tags pulumi.StringMapInput + // Workspace name. + WorkspaceName pulumi.StringPtrInput +} + +func (VerifierWorkspaceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*verifierWorkspaceArgs)(nil)).Elem() +} + +type VerifierWorkspaceInput interface { + pulumi.Input + + ToVerifierWorkspaceOutput() VerifierWorkspaceOutput + ToVerifierWorkspaceOutputWithContext(ctx context.Context) VerifierWorkspaceOutput +} + +func (*VerifierWorkspace) ElementType() reflect.Type { + return reflect.TypeOf((**VerifierWorkspace)(nil)).Elem() +} + +func (i *VerifierWorkspace) ToVerifierWorkspaceOutput() VerifierWorkspaceOutput { + return i.ToVerifierWorkspaceOutputWithContext(context.Background()) +} + +func (i *VerifierWorkspace) ToVerifierWorkspaceOutputWithContext(ctx context.Context) VerifierWorkspaceOutput { + return pulumi.ToOutputWithContext(ctx, i).(VerifierWorkspaceOutput) +} + +type VerifierWorkspaceOutput struct{ *pulumi.OutputState } + +func (VerifierWorkspaceOutput) ElementType() reflect.Type { + return reflect.TypeOf((**VerifierWorkspace)(nil)).Elem() +} + +func (o VerifierWorkspaceOutput) ToVerifierWorkspaceOutput() VerifierWorkspaceOutput { + return o +} + +func (o VerifierWorkspaceOutput) ToVerifierWorkspaceOutputWithContext(ctx context.Context) VerifierWorkspaceOutput { + return o +} + +// The geo-location where the resource lives +func (o VerifierWorkspaceOutput) Location() pulumi.StringOutput { + return o.ApplyT(func(v *VerifierWorkspace) pulumi.StringOutput { return v.Location }).(pulumi.StringOutput) +} + +// The name of the resource +func (o VerifierWorkspaceOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *VerifierWorkspace) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// Properties of Verifier Workspace resource. +func (o VerifierWorkspaceOutput) Properties() VerifierWorkspacePropertiesResponseOutput { + return o.ApplyT(func(v *VerifierWorkspace) VerifierWorkspacePropertiesResponseOutput { return v.Properties }).(VerifierWorkspacePropertiesResponseOutput) +} + +// Azure Resource Manager metadata containing createdBy and modifiedBy information. +func (o VerifierWorkspaceOutput) SystemData() SystemDataResponseOutput { + return o.ApplyT(func(v *VerifierWorkspace) SystemDataResponseOutput { return v.SystemData }).(SystemDataResponseOutput) +} + +// Resource tags. +func (o VerifierWorkspaceOutput) Tags() pulumi.StringMapOutput { + return o.ApplyT(func(v *VerifierWorkspace) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) +} + +// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" +func (o VerifierWorkspaceOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v *VerifierWorkspace) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterOutputType(VerifierWorkspaceOutput{}) +} diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualApplianceSite.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualApplianceSite.go index e7107d60a..f1eecc947 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualApplianceSite.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualApplianceSite.go @@ -15,7 +15,7 @@ import ( // Virtual Appliance Site resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualApplianceSite struct { pulumi.CustomResourceState @@ -107,6 +107,12 @@ func NewVirtualApplianceSite(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualApplianceSite"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualApplianceSite"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualApplianceSite"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHub.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHub.go index d14230e05..6219d98a7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHub.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHub.go @@ -15,7 +15,7 @@ import ( // VirtualHub Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-07-01, 2020-04-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2020-04-01, 2020-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualHub struct { pulumi.CustomResourceState @@ -199,6 +199,12 @@ func NewVirtualHub(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualHub"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualHub"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualHub"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubBgpConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubBgpConnection.go index 12aa33a47..e49db2aea 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubBgpConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubBgpConnection.go @@ -15,7 +15,7 @@ import ( // Virtual Appliance Site resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualHubBgpConnection struct { pulumi.CustomResourceState @@ -111,6 +111,12 @@ func NewVirtualHubBgpConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualHubBgpConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualHubBgpConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualHubBgpConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubIpConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubIpConfiguration.go index 1da268a64..68a45a294 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubIpConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubIpConfiguration.go @@ -15,7 +15,7 @@ import ( // IpConfigurations. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualHubIpConfiguration struct { pulumi.CustomResourceState @@ -114,6 +114,12 @@ func NewVirtualHubIpConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualHubIpConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualHubIpConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualHubIpConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubRouteTableV2.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubRouteTableV2.go index 1c22068df..9aa987b0d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubRouteTableV2.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualHubRouteTableV2.go @@ -15,7 +15,7 @@ import ( // VirtualHubRouteTableV2 Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualHubRouteTableV2 struct { pulumi.CustomResourceState @@ -120,6 +120,12 @@ func NewVirtualHubRouteTableV2(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualHubRouteTableV2"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualHubRouteTableV2"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualHubRouteTableV2"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetwork.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetwork.go index 3b474705a..6be294d2d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetwork.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetwork.go @@ -15,7 +15,7 @@ import ( // Virtual Network resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2015-05-01-preview, 2019-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualNetwork struct { pulumi.CustomResourceState @@ -231,6 +231,12 @@ func NewVirtualNetwork(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualNetwork"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualNetwork"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualNetwork"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGateway.go index 4eba7ce43..81a08516d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGateway.go @@ -15,7 +15,7 @@ import ( // A common class for general resource information. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-06-01, 2016-09-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualNetworkGateway struct { pulumi.CustomResourceState @@ -242,6 +242,12 @@ func NewVirtualNetworkGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualNetworkGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualNetworkGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualNetworkGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayConnection.go index d769e8e1a..a9818c815 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayConnection.go @@ -15,7 +15,7 @@ import ( // A common class for general resource information. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2016-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2016-06-01, 2019-08-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualNetworkGatewayConnection struct { pulumi.CustomResourceState @@ -252,6 +252,12 @@ func NewVirtualNetworkGatewayConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualNetworkGatewayConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualNetworkGatewayConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualNetworkGatewayConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayNatRule.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayNatRule.go index b39f995e0..1138c4a48 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayNatRule.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkGatewayNatRule.go @@ -15,7 +15,7 @@ import ( // VirtualNetworkGatewayNatRule Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-03-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualNetworkGatewayNatRule struct { pulumi.CustomResourceState @@ -96,6 +96,12 @@ func NewVirtualNetworkGatewayNatRule(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualNetworkGatewayNatRule"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualNetworkGatewayNatRule"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualNetworkGatewayNatRule"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkLink.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkLink.go index 881aece89..21de26ad4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkLink.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkLink.go @@ -14,6 +14,8 @@ import ( // Describes a link to virtual network for a Private DNS zone. // Azure REST API version: 2020-06-01. Prior API version in Azure Native 1.x: 2020-06-01. +// +// Other available API versions: 2024-06-01. type VirtualNetworkLink struct { pulumi.CustomResourceState @@ -60,6 +62,9 @@ func NewVirtualNetworkLink(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20200601:VirtualNetworkLink"), }, + { + Type: pulumi.String("azure-native:network/v20240601:VirtualNetworkLink"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkPeering.go index e9f084dcf..c8148a0cc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkPeering.go @@ -15,7 +15,7 @@ import ( // Peerings in a virtual network resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-06-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualNetworkPeering struct { pulumi.CustomResourceState @@ -213,6 +213,12 @@ func NewVirtualNetworkPeering(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualNetworkPeering"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualNetworkPeering"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualNetworkPeering"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkTap.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkTap.go index 8f3b6fa7f..d6f404545 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkTap.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualNetworkTap.go @@ -15,7 +15,7 @@ import ( // Virtual Network Tap resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualNetworkTap struct { pulumi.CustomResourceState @@ -162,6 +162,12 @@ func NewVirtualNetworkTap(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualNetworkTap"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualNetworkTap"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualNetworkTap"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouter.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouter.go index 4689be4ae..d173c905a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouter.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouter.go @@ -15,7 +15,7 @@ import ( // VirtualRouter Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-01-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualRouter struct { pulumi.CustomResourceState @@ -135,6 +135,12 @@ func NewVirtualRouter(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualRouter"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualRouter"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualRouter"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouterPeering.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouterPeering.go index d0c56fa5b..32971cc6c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouterPeering.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualRouterPeering.go @@ -15,7 +15,7 @@ import ( // Virtual Router Peering resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2022-01-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualRouterPeering struct { pulumi.CustomResourceState @@ -128,6 +128,12 @@ func NewVirtualRouterPeering(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualRouterPeering"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualRouterPeering"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualRouterPeering"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualWan.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualWan.go index 92eaa9e07..e841b3ad1 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualWan.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/virtualWan.go @@ -15,7 +15,7 @@ import ( // VirtualWAN Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VirtualWan struct { pulumi.CustomResourceState @@ -167,6 +167,12 @@ func NewVirtualWan(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VirtualWan"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VirtualWan"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VirtualWan"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnConnection.go index 87963da74..206e5c3d2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnConnection.go @@ -15,7 +15,7 @@ import ( // VpnConnection Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-04-01, 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-04-01, 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VpnConnection struct { pulumi.CustomResourceState @@ -188,6 +188,12 @@ func NewVpnConnection(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VpnConnection"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VpnConnection"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VpnConnection"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnGateway.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnGateway.go index 3e079d2ed..43ed6813d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnGateway.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnGateway.go @@ -15,7 +15,7 @@ import ( // VpnGateway Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VpnGateway struct { pulumi.CustomResourceState @@ -171,6 +171,12 @@ func NewVpnGateway(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VpnGateway"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VpnGateway"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VpnGateway"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnServerConfiguration.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnServerConfiguration.go index c4b292d30..70cb9742d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnServerConfiguration.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnServerConfiguration.go @@ -15,7 +15,7 @@ import ( // VpnServerConfiguration Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VpnServerConfiguration struct { pulumi.CustomResourceState @@ -148,6 +148,12 @@ func NewVpnServerConfiguration(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VpnServerConfiguration"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VpnServerConfiguration"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VpnServerConfiguration"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnSite.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnSite.go index 4b4f6568c..cbd8b6ab0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnSite.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/vpnSite.go @@ -15,7 +15,7 @@ import ( // VpnSite Resource. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2018-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type VpnSite struct { pulumi.CustomResourceState @@ -173,6 +173,12 @@ func NewVpnSite(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:VpnSite"), }, + { + Type: pulumi.String("azure-native:network/v20240101:VpnSite"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:VpnSite"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/webApplicationFirewallPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/webApplicationFirewallPolicy.go index 3054ef8ed..0d1e63b6e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/webApplicationFirewallPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/network/v2/webApplicationFirewallPolicy.go @@ -15,7 +15,7 @@ import ( // Defines web application firewall policy. // Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2020-11-01. // -// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01. +// Other available API versions: 2019-07-01, 2023-04-01, 2023-05-01, 2023-06-01, 2023-09-01, 2023-11-01, 2024-01-01, 2024-03-01. type WebApplicationFirewallPolicy struct { pulumi.CustomResourceState @@ -157,6 +157,12 @@ func NewWebApplicationFirewallPolicy(ctx *pulumi.Context, { Type: pulumi.String("azure-native:network/v20231101:WebApplicationFirewallPolicy"), }, + { + Type: pulumi.String("azure-native:network/v20240101:WebApplicationFirewallPolicy"), + }, + { + Type: pulumi.String("azure-native:network/v20240301:WebApplicationFirewallPolicy"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deployment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deployment.go index 5fae44207..e5e460cfb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deployment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deployment.go @@ -15,7 +15,7 @@ import ( // Deployment information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2021-01-01. // -// Other available API versions: 2016-07-01, 2023-07-01, 2024-03-01. +// Other available API versions: 2016-07-01, 2023-07-01, 2024-03-01, 2024-07-01. type Deployment struct { pulumi.CustomResourceState @@ -108,6 +108,9 @@ func NewDeployment(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:Deployment"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:Deployment"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtManagementGroupScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtManagementGroupScope.go index c416efa57..6058924cb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtManagementGroupScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtManagementGroupScope.go @@ -15,7 +15,7 @@ import ( // Deployment information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2021-01-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. type DeploymentAtManagementGroupScope struct { pulumi.CustomResourceState @@ -84,6 +84,9 @@ func NewDeploymentAtManagementGroupScope(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:DeploymentAtManagementGroupScope"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:DeploymentAtManagementGroupScope"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtScope.go index f9ae6d117..620ee846e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtScope.go @@ -15,7 +15,7 @@ import ( // Deployment information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2021-01-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. type DeploymentAtScope struct { pulumi.CustomResourceState @@ -78,6 +78,9 @@ func NewDeploymentAtScope(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:DeploymentAtScope"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:DeploymentAtScope"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtSubscriptionScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtSubscriptionScope.go index a181e2dd4..fa1731169 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtSubscriptionScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtSubscriptionScope.go @@ -15,7 +15,7 @@ import ( // Deployment information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2021-01-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. type DeploymentAtSubscriptionScope struct { pulumi.CustomResourceState @@ -87,6 +87,9 @@ func NewDeploymentAtSubscriptionScope(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:DeploymentAtSubscriptionScope"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:DeploymentAtSubscriptionScope"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtTenantScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtTenantScope.go index 061a80154..030a82bee 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtTenantScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/deploymentAtTenantScope.go @@ -15,7 +15,7 @@ import ( // Deployment information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2021-01-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. type DeploymentAtTenantScope struct { pulumi.CustomResourceState @@ -75,6 +75,9 @@ func NewDeploymentAtTenantScope(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:DeploymentAtTenantScope"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:DeploymentAtTenantScope"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzureCliScript.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzureCliScript.go index cb0cea738..a97eccbb4 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzureCliScript.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzureCliScript.go @@ -100,14 +100,20 @@ func (val *LookupAzureCliScriptResult) Defaults() *LookupAzureCliScriptResult { func LookupAzureCliScriptOutput(ctx *pulumi.Context, args LookupAzureCliScriptOutputArgs, opts ...pulumi.InvokeOption) LookupAzureCliScriptResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAzureCliScriptResult, error) { + ApplyT(func(v interface{}) (LookupAzureCliScriptResultOutput, error) { args := v.(LookupAzureCliScriptArgs) - r, err := LookupAzureCliScript(ctx, &args, opts...) - var s LookupAzureCliScriptResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAzureCliScriptResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getAzureCliScript", args, &rv, "", opts...) + if err != nil { + return LookupAzureCliScriptResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAzureCliScriptResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAzureCliScriptResultOutput), nil + } + return output, nil }).(LookupAzureCliScriptResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzurePowerShellScript.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzurePowerShellScript.go index b37f11501..bbd37ce02 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzurePowerShellScript.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getAzurePowerShellScript.go @@ -100,14 +100,20 @@ func (val *LookupAzurePowerShellScriptResult) Defaults() *LookupAzurePowerShellS func LookupAzurePowerShellScriptOutput(ctx *pulumi.Context, args LookupAzurePowerShellScriptOutputArgs, opts ...pulumi.InvokeOption) LookupAzurePowerShellScriptResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupAzurePowerShellScriptResult, error) { + ApplyT(func(v interface{}) (LookupAzurePowerShellScriptResultOutput, error) { args := v.(LookupAzurePowerShellScriptArgs) - r, err := LookupAzurePowerShellScript(ctx, &args, opts...) - var s LookupAzurePowerShellScriptResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupAzurePowerShellScriptResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getAzurePowerShellScript", args, &rv, "", opts...) + if err != nil { + return LookupAzurePowerShellScriptResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupAzurePowerShellScriptResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupAzurePowerShellScriptResultOutput), nil + } + return output, nil }).(LookupAzurePowerShellScriptResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeployment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeployment.go index 944948ca2..5ce25f556 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeployment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeployment.go @@ -14,7 +14,7 @@ import ( // Gets a deployment. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2016-07-01, 2023-07-01, 2024-03-01. +// Other available API versions: 2016-07-01, 2023-07-01, 2024-03-01, 2024-07-01. func LookupDeployment(ctx *pulumi.Context, args *LookupDeploymentArgs, opts ...pulumi.InvokeOption) (*LookupDeploymentResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDeploymentResult @@ -50,14 +50,20 @@ type LookupDeploymentResult struct { func LookupDeploymentOutput(ctx *pulumi.Context, args LookupDeploymentOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentResultOutput, error) { args := v.(LookupDeploymentArgs) - r, err := LookupDeployment(ctx, &args, opts...) - var s LookupDeploymentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeployment", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentResultOutput), nil + } + return output, nil }).(LookupDeploymentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtManagementGroupScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtManagementGroupScope.go index 3043b565b..c84a5dd0d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtManagementGroupScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtManagementGroupScope.go @@ -14,7 +14,7 @@ import ( // Gets a deployment. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. func LookupDeploymentAtManagementGroupScope(ctx *pulumi.Context, args *LookupDeploymentAtManagementGroupScopeArgs, opts ...pulumi.InvokeOption) (*LookupDeploymentAtManagementGroupScopeResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDeploymentAtManagementGroupScopeResult @@ -50,14 +50,20 @@ type LookupDeploymentAtManagementGroupScopeResult struct { func LookupDeploymentAtManagementGroupScopeOutput(ctx *pulumi.Context, args LookupDeploymentAtManagementGroupScopeOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentAtManagementGroupScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentAtManagementGroupScopeResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentAtManagementGroupScopeResultOutput, error) { args := v.(LookupDeploymentAtManagementGroupScopeArgs) - r, err := LookupDeploymentAtManagementGroupScope(ctx, &args, opts...) - var s LookupDeploymentAtManagementGroupScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentAtManagementGroupScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentAtManagementGroupScope", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentAtManagementGroupScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentAtManagementGroupScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentAtManagementGroupScopeResultOutput), nil + } + return output, nil }).(LookupDeploymentAtManagementGroupScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtScope.go index a7d4fd293..e16a22bfb 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtScope.go @@ -14,7 +14,7 @@ import ( // Gets a deployment. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. func LookupDeploymentAtScope(ctx *pulumi.Context, args *LookupDeploymentAtScopeArgs, opts ...pulumi.InvokeOption) (*LookupDeploymentAtScopeResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDeploymentAtScopeResult @@ -50,14 +50,20 @@ type LookupDeploymentAtScopeResult struct { func LookupDeploymentAtScopeOutput(ctx *pulumi.Context, args LookupDeploymentAtScopeOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentAtScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentAtScopeResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentAtScopeResultOutput, error) { args := v.(LookupDeploymentAtScopeArgs) - r, err := LookupDeploymentAtScope(ctx, &args, opts...) - var s LookupDeploymentAtScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentAtScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentAtScope", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentAtScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentAtScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentAtScopeResultOutput), nil + } + return output, nil }).(LookupDeploymentAtScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtSubscriptionScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtSubscriptionScope.go index 9d33f430a..828d7b65d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtSubscriptionScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtSubscriptionScope.go @@ -14,7 +14,7 @@ import ( // Gets a deployment. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. func LookupDeploymentAtSubscriptionScope(ctx *pulumi.Context, args *LookupDeploymentAtSubscriptionScopeArgs, opts ...pulumi.InvokeOption) (*LookupDeploymentAtSubscriptionScopeResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDeploymentAtSubscriptionScopeResult @@ -48,14 +48,20 @@ type LookupDeploymentAtSubscriptionScopeResult struct { func LookupDeploymentAtSubscriptionScopeOutput(ctx *pulumi.Context, args LookupDeploymentAtSubscriptionScopeOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentAtSubscriptionScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentAtSubscriptionScopeResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentAtSubscriptionScopeResultOutput, error) { args := v.(LookupDeploymentAtSubscriptionScopeArgs) - r, err := LookupDeploymentAtSubscriptionScope(ctx, &args, opts...) - var s LookupDeploymentAtSubscriptionScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentAtSubscriptionScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentAtSubscriptionScope", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentAtSubscriptionScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentAtSubscriptionScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentAtSubscriptionScopeResultOutput), nil + } + return output, nil }).(LookupDeploymentAtSubscriptionScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtTenantScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtTenantScope.go index 472a9998a..e9616628a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtTenantScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentAtTenantScope.go @@ -14,7 +14,7 @@ import ( // Gets a deployment. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. func LookupDeploymentAtTenantScope(ctx *pulumi.Context, args *LookupDeploymentAtTenantScopeArgs, opts ...pulumi.InvokeOption) (*LookupDeploymentAtTenantScopeResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupDeploymentAtTenantScopeResult @@ -48,14 +48,20 @@ type LookupDeploymentAtTenantScopeResult struct { func LookupDeploymentAtTenantScopeOutput(ctx *pulumi.Context, args LookupDeploymentAtTenantScopeOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentAtTenantScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentAtTenantScopeResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentAtTenantScopeResultOutput, error) { args := v.(LookupDeploymentAtTenantScopeArgs) - r, err := LookupDeploymentAtTenantScope(ctx, &args, opts...) - var s LookupDeploymentAtTenantScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentAtTenantScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentAtTenantScope", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentAtTenantScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentAtTenantScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentAtTenantScopeResultOutput), nil + } + return output, nil }).(LookupDeploymentAtTenantScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtManagementGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtManagementGroup.go index 6e8e897bf..bcbcec8fc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtManagementGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtManagementGroup.go @@ -82,14 +82,20 @@ type LookupDeploymentStackAtManagementGroupResult struct { func LookupDeploymentStackAtManagementGroupOutput(ctx *pulumi.Context, args LookupDeploymentStackAtManagementGroupOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentStackAtManagementGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentStackAtManagementGroupResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentStackAtManagementGroupResultOutput, error) { args := v.(LookupDeploymentStackAtManagementGroupArgs) - r, err := LookupDeploymentStackAtManagementGroup(ctx, &args, opts...) - var s LookupDeploymentStackAtManagementGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentStackAtManagementGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentStackAtManagementGroup", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentStackAtManagementGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentStackAtManagementGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentStackAtManagementGroupResultOutput), nil + } + return output, nil }).(LookupDeploymentStackAtManagementGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtResourceGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtResourceGroup.go index b19d0da87..a4a0c31e6 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtResourceGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtResourceGroup.go @@ -82,14 +82,20 @@ type LookupDeploymentStackAtResourceGroupResult struct { func LookupDeploymentStackAtResourceGroupOutput(ctx *pulumi.Context, args LookupDeploymentStackAtResourceGroupOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentStackAtResourceGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentStackAtResourceGroupResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentStackAtResourceGroupResultOutput, error) { args := v.(LookupDeploymentStackAtResourceGroupArgs) - r, err := LookupDeploymentStackAtResourceGroup(ctx, &args, opts...) - var s LookupDeploymentStackAtResourceGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentStackAtResourceGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentStackAtResourceGroup", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentStackAtResourceGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentStackAtResourceGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentStackAtResourceGroupResultOutput), nil + } + return output, nil }).(LookupDeploymentStackAtResourceGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtSubscription.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtSubscription.go index 3ff2cc85f..a6ba7ed11 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtSubscription.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getDeploymentStackAtSubscription.go @@ -80,14 +80,20 @@ type LookupDeploymentStackAtSubscriptionResult struct { func LookupDeploymentStackAtSubscriptionOutput(ctx *pulumi.Context, args LookupDeploymentStackAtSubscriptionOutputArgs, opts ...pulumi.InvokeOption) LookupDeploymentStackAtSubscriptionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupDeploymentStackAtSubscriptionResult, error) { + ApplyT(func(v interface{}) (LookupDeploymentStackAtSubscriptionResultOutput, error) { args := v.(LookupDeploymentStackAtSubscriptionArgs) - r, err := LookupDeploymentStackAtSubscription(ctx, &args, opts...) - var s LookupDeploymentStackAtSubscriptionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupDeploymentStackAtSubscriptionResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getDeploymentStackAtSubscription", args, &rv, "", opts...) + if err != nil { + return LookupDeploymentStackAtSubscriptionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupDeploymentStackAtSubscriptionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupDeploymentStackAtSubscriptionResultOutput), nil + } + return output, nil }).(LookupDeploymentStackAtSubscriptionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResource.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResource.go index ba0f012b6..907ac89cd 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResource.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResource.go @@ -14,7 +14,7 @@ import ( // Gets a resource. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2015-11-01, 2023-07-01, 2024-03-01. +// Other available API versions: 2015-11-01, 2023-07-01, 2024-03-01, 2024-07-01. func LookupResource(ctx *pulumi.Context, args *LookupResourceArgs, opts ...pulumi.InvokeOption) (*LookupResourceResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupResourceResult @@ -68,14 +68,20 @@ type LookupResourceResult struct { func LookupResourceOutput(ctx *pulumi.Context, args LookupResourceOutputArgs, opts ...pulumi.InvokeOption) LookupResourceResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupResourceResult, error) { + ApplyT(func(v interface{}) (LookupResourceResultOutput, error) { args := v.(LookupResourceArgs) - r, err := LookupResource(ctx, &args, opts...) - var s LookupResourceResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupResourceResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getResource", args, &rv, "", opts...) + if err != nil { + return LookupResourceResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupResourceResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupResourceResultOutput), nil + } + return output, nil }).(LookupResourceResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResourceGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResourceGroup.go index 68faa8937..21b7674d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResourceGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getResourceGroup.go @@ -14,7 +14,7 @@ import ( // Gets a resource group. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2018-02-01, 2023-07-01, 2024-03-01. +// Other available API versions: 2018-02-01, 2023-07-01, 2024-03-01, 2024-07-01. func LookupResourceGroup(ctx *pulumi.Context, args *LookupResourceGroupArgs, opts ...pulumi.InvokeOption) (*LookupResourceGroupResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupResourceGroupResult @@ -50,14 +50,20 @@ type LookupResourceGroupResult struct { func LookupResourceGroupOutput(ctx *pulumi.Context, args LookupResourceGroupOutputArgs, opts ...pulumi.InvokeOption) LookupResourceGroupResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupResourceGroupResult, error) { + ApplyT(func(v interface{}) (LookupResourceGroupResultOutput, error) { args := v.(LookupResourceGroupArgs) - r, err := LookupResourceGroup(ctx, &args, opts...) - var s LookupResourceGroupResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupResourceGroupResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getResourceGroup", args, &rv, "", opts...) + if err != nil { + return LookupResourceGroupResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupResourceGroupResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupResourceGroupResultOutput), nil + } + return output, nil }).(LookupResourceGroupResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTagAtScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTagAtScope.go index 6afaaecc2..9bba52ee0 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTagAtScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTagAtScope.go @@ -14,7 +14,7 @@ import ( // Wrapper resource for tags API requests and responses. // Azure REST API version: 2022-09-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. func LookupTagAtScope(ctx *pulumi.Context, args *LookupTagAtScopeArgs, opts ...pulumi.InvokeOption) (*LookupTagAtScopeResult, error) { opts = utilities.PkgInvokeDefaultOpts(opts) var rv LookupTagAtScopeResult @@ -44,14 +44,20 @@ type LookupTagAtScopeResult struct { func LookupTagAtScopeOutput(ctx *pulumi.Context, args LookupTagAtScopeOutputArgs, opts ...pulumi.InvokeOption) LookupTagAtScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTagAtScopeResult, error) { + ApplyT(func(v interface{}) (LookupTagAtScopeResultOutput, error) { args := v.(LookupTagAtScopeArgs) - r, err := LookupTagAtScope(ctx, &args, opts...) - var s LookupTagAtScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTagAtScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getTagAtScope", args, &rv, "", opts...) + if err != nil { + return LookupTagAtScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTagAtScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTagAtScopeResultOutput), nil + } + return output, nil }).(LookupTagAtScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpec.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpec.go index 314d5fedf..9fa64acf7 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpec.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpec.go @@ -58,14 +58,20 @@ type LookupTemplateSpecResult struct { func LookupTemplateSpecOutput(ctx *pulumi.Context, args LookupTemplateSpecOutputArgs, opts ...pulumi.InvokeOption) LookupTemplateSpecResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTemplateSpecResult, error) { + ApplyT(func(v interface{}) (LookupTemplateSpecResultOutput, error) { args := v.(LookupTemplateSpecArgs) - r, err := LookupTemplateSpec(ctx, &args, opts...) - var s LookupTemplateSpecResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTemplateSpecResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getTemplateSpec", args, &rv, "", opts...) + if err != nil { + return LookupTemplateSpecResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTemplateSpecResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTemplateSpecResultOutput), nil + } + return output, nil }).(LookupTemplateSpecResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpecVersion.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpecVersion.go index 720f6ab23..78e85717d 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpecVersion.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/getTemplateSpecVersion.go @@ -62,14 +62,20 @@ type LookupTemplateSpecVersionResult struct { func LookupTemplateSpecVersionOutput(ctx *pulumi.Context, args LookupTemplateSpecVersionOutputArgs, opts ...pulumi.InvokeOption) LookupTemplateSpecVersionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTemplateSpecVersionResult, error) { + ApplyT(func(v interface{}) (LookupTemplateSpecVersionResultOutput, error) { args := v.(LookupTemplateSpecVersionArgs) - r, err := LookupTemplateSpecVersion(ctx, &args, opts...) - var s LookupTemplateSpecVersionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTemplateSpecVersionResult + secret, err := ctx.InvokePackageRaw("azure-native:resources:getTemplateSpecVersion", args, &rv, "", opts...) + if err != nil { + return LookupTemplateSpecVersionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTemplateSpecVersionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTemplateSpecVersionResultOutput), nil + } + return output, nil }).(LookupTemplateSpecVersionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/pulumi-plugin.json b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/pulumi-plugin.json index 021d33318..3825324d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/pulumi-plugin.json +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azure-native", - "version": "2.45.0" + "version": "2.64.2" } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resource.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resource.go index 01073e318..eeb539f5f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resource.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resource.go @@ -15,7 +15,7 @@ import ( // Resource information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2019-05-01. // -// Other available API versions: 2015-11-01, 2023-07-01, 2024-03-01. +// Other available API versions: 2015-11-01, 2023-07-01, 2024-03-01, 2024-07-01. type Resource struct { pulumi.CustomResourceState @@ -126,6 +126,9 @@ func NewResource(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:Resource"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:Resource"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resourceGroup.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resourceGroup.go index a9c146a24..649b8f2fc 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resourceGroup.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/resourceGroup.go @@ -14,7 +14,7 @@ import ( // Resource group information. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2019-05-01. // -// Other available API versions: 2018-02-01, 2023-07-01, 2024-03-01. +// Other available API versions: 2018-02-01, 2023-07-01, 2024-03-01, 2024-07-01. type ResourceGroup struct { pulumi.CustomResourceState @@ -103,6 +103,9 @@ func NewResourceGroup(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:ResourceGroup"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:ResourceGroup"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/tagAtScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/tagAtScope.go index a2f9837e4..aaf1f294a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/tagAtScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/resources/v2/tagAtScope.go @@ -15,7 +15,7 @@ import ( // Wrapper resource for tags API requests and responses. // Azure REST API version: 2022-09-01. Prior API version in Azure Native 1.x: 2019-10-01. // -// Other available API versions: 2023-07-01, 2024-03-01. +// Other available API versions: 2023-07-01, 2024-03-01, 2024-07-01. type TagAtScope struct { pulumi.CustomResourceState @@ -68,6 +68,9 @@ func NewTagAtScope(ctx *pulumi.Context, { Type: pulumi.String("azure-native:resources/v20240301:TagAtScope"), }, + { + Type: pulumi.String("azure-native:resources/v20240701:TagAtScope"), + }, }) opts = append(opts, aliases) opts = utilities.PkgResourceDefaultOpts(opts) diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/blob.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/blob.go index a12ec1554..e9dc94a28 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/blob.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/blob.go @@ -12,12 +12,12 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) -// Manages a Blob within a Storage Container. +// Manages a Blob within a Storage Container. For the supported combinations of properties and features please see [here](https://learn.microsoft.com/en-us/azure/storage/blobs/storage-feature-support-in-storage-accounts). type Blob struct { pulumi.CustomResourceState - // The access tier of the storage blob. - AccessTier BlobAccessTierOutput `pulumi:"accessTier"` + // The access tier of the storage blob. Only supported for standard storage accounts, not premium. + AccessTier BlobAccessTierPtrOutput `pulumi:"accessTier"` // The MD5 sum of the blob contents. ContentMd5 pulumi.StringPtrOutput `pulumi:"contentMd5"` // The content type of the storage blob. @@ -84,11 +84,11 @@ func (BlobState) ElementType() reflect.Type { } type blobArgs struct { - // The access tier of the storage blob. + // The access tier of the storage blob. Only supported for standard storage accounts, not premium. AccessTier *BlobAccessTier `pulumi:"accessTier"` // Specifies the storage account in which to create the storage container. AccountName string `pulumi:"accountName"` - // The name of the storage blob. Must be unique within the storage container the blob is located. + // The name of the storage blob. Must be unique within the storage container the blob is located. If this property is not specified it will be set to the name of the resource. BlobName *string `pulumi:"blobName"` // The name of the storage container in which this blob should be created. ContainerName string `pulumi:"containerName"` @@ -108,11 +108,11 @@ type blobArgs struct { // The set of arguments for constructing a Blob resource. type BlobArgs struct { - // The access tier of the storage blob. + // The access tier of the storage blob. Only supported for standard storage accounts, not premium. AccessTier BlobAccessTierPtrInput // Specifies the storage account in which to create the storage container. AccountName pulumi.StringInput - // The name of the storage blob. Must be unique within the storage container the blob is located. + // The name of the storage blob. Must be unique within the storage container the blob is located. If this property is not specified it will be set to the name of the resource. BlobName pulumi.StringPtrInput // The name of the storage container in which this blob should be created. ContainerName pulumi.StringInput @@ -167,9 +167,9 @@ func (o BlobOutput) ToBlobOutputWithContext(ctx context.Context) BlobOutput { return o } -// The access tier of the storage blob. -func (o BlobOutput) AccessTier() BlobAccessTierOutput { - return o.ApplyT(func(v *Blob) BlobAccessTierOutput { return v.AccessTier }).(BlobAccessTierOutput) +// The access tier of the storage blob. Only supported for standard storage accounts, not premium. +func (o BlobOutput) AccessTier() BlobAccessTierPtrOutput { + return o.ApplyT(func(v *Blob) BlobAccessTierPtrOutput { return v.AccessTier }).(BlobAccessTierPtrOutput) } // The MD5 sum of the blob contents. diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainer.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainer.go index b0b85501d..5b68aee3b 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainer.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainer.go @@ -86,14 +86,20 @@ type LookupBlobContainerResult struct { func LookupBlobContainerOutput(ctx *pulumi.Context, args LookupBlobContainerOutputArgs, opts ...pulumi.InvokeOption) LookupBlobContainerResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupBlobContainerResult, error) { + ApplyT(func(v interface{}) (LookupBlobContainerResultOutput, error) { args := v.(LookupBlobContainerArgs) - r, err := LookupBlobContainer(ctx, &args, opts...) - var s LookupBlobContainerResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupBlobContainerResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getBlobContainer", args, &rv, "", opts...) + if err != nil { + return LookupBlobContainerResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupBlobContainerResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupBlobContainerResultOutput), nil + } + return output, nil }).(LookupBlobContainerResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainerImmutabilityPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainerImmutabilityPolicy.go index 861fd547f..d083ee76e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainerImmutabilityPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobContainerImmutabilityPolicy.go @@ -58,14 +58,20 @@ type LookupBlobContainerImmutabilityPolicyResult struct { func LookupBlobContainerImmutabilityPolicyOutput(ctx *pulumi.Context, args LookupBlobContainerImmutabilityPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupBlobContainerImmutabilityPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupBlobContainerImmutabilityPolicyResult, error) { + ApplyT(func(v interface{}) (LookupBlobContainerImmutabilityPolicyResultOutput, error) { args := v.(LookupBlobContainerImmutabilityPolicyArgs) - r, err := LookupBlobContainerImmutabilityPolicy(ctx, &args, opts...) - var s LookupBlobContainerImmutabilityPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupBlobContainerImmutabilityPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getBlobContainerImmutabilityPolicy", args, &rv, "", opts...) + if err != nil { + return LookupBlobContainerImmutabilityPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupBlobContainerImmutabilityPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupBlobContainerImmutabilityPolicyResultOutput), nil + } + return output, nil }).(LookupBlobContainerImmutabilityPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobInventoryPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobInventoryPolicy.go index c5da2d399..e778ece82 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobInventoryPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobInventoryPolicy.go @@ -52,14 +52,20 @@ type LookupBlobInventoryPolicyResult struct { func LookupBlobInventoryPolicyOutput(ctx *pulumi.Context, args LookupBlobInventoryPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupBlobInventoryPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupBlobInventoryPolicyResult, error) { + ApplyT(func(v interface{}) (LookupBlobInventoryPolicyResultOutput, error) { args := v.(LookupBlobInventoryPolicyArgs) - r, err := LookupBlobInventoryPolicy(ctx, &args, opts...) - var s LookupBlobInventoryPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupBlobInventoryPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getBlobInventoryPolicy", args, &rv, "", opts...) + if err != nil { + return LookupBlobInventoryPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupBlobInventoryPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupBlobInventoryPolicyResultOutput), nil + } + return output, nil }).(LookupBlobInventoryPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobServiceProperties.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobServiceProperties.go index a0370551d..85bb65f3c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobServiceProperties.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getBlobServiceProperties.go @@ -66,14 +66,20 @@ type LookupBlobServicePropertiesResult struct { func LookupBlobServicePropertiesOutput(ctx *pulumi.Context, args LookupBlobServicePropertiesOutputArgs, opts ...pulumi.InvokeOption) LookupBlobServicePropertiesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupBlobServicePropertiesResult, error) { + ApplyT(func(v interface{}) (LookupBlobServicePropertiesResultOutput, error) { args := v.(LookupBlobServicePropertiesArgs) - r, err := LookupBlobServiceProperties(ctx, &args, opts...) - var s LookupBlobServicePropertiesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupBlobServicePropertiesResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getBlobServiceProperties", args, &rv, "", opts...) + if err != nil { + return LookupBlobServicePropertiesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupBlobServicePropertiesResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupBlobServicePropertiesResultOutput), nil + } + return output, nil }).(LookupBlobServicePropertiesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getEncryptionScope.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getEncryptionScope.go index 4f5be9de4..3f51400fe 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getEncryptionScope.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getEncryptionScope.go @@ -58,14 +58,20 @@ type LookupEncryptionScopeResult struct { func LookupEncryptionScopeOutput(ctx *pulumi.Context, args LookupEncryptionScopeOutputArgs, opts ...pulumi.InvokeOption) LookupEncryptionScopeResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupEncryptionScopeResult, error) { + ApplyT(func(v interface{}) (LookupEncryptionScopeResultOutput, error) { args := v.(LookupEncryptionScopeArgs) - r, err := LookupEncryptionScope(ctx, &args, opts...) - var s LookupEncryptionScopeResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupEncryptionScopeResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getEncryptionScope", args, &rv, "", opts...) + if err != nil { + return LookupEncryptionScopeResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupEncryptionScopeResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupEncryptionScopeResultOutput), nil + } + return output, nil }).(LookupEncryptionScopeResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileServiceProperties.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileServiceProperties.go index e42bc5576..1942f7b3f 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileServiceProperties.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileServiceProperties.go @@ -54,14 +54,20 @@ type LookupFileServicePropertiesResult struct { func LookupFileServicePropertiesOutput(ctx *pulumi.Context, args LookupFileServicePropertiesOutputArgs, opts ...pulumi.InvokeOption) LookupFileServicePropertiesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFileServicePropertiesResult, error) { + ApplyT(func(v interface{}) (LookupFileServicePropertiesResultOutput, error) { args := v.(LookupFileServicePropertiesArgs) - r, err := LookupFileServiceProperties(ctx, &args, opts...) - var s LookupFileServicePropertiesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFileServicePropertiesResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getFileServiceProperties", args, &rv, "", opts...) + if err != nil { + return LookupFileServicePropertiesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFileServicePropertiesResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFileServicePropertiesResultOutput), nil + } + return output, nil }).(LookupFileServicePropertiesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileShare.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileShare.go index 14c105e03..747fe03f6 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileShare.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getFileShare.go @@ -86,14 +86,20 @@ type LookupFileShareResult struct { func LookupFileShareOutput(ctx *pulumi.Context, args LookupFileShareOutputArgs, opts ...pulumi.InvokeOption) LookupFileShareResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupFileShareResult, error) { + ApplyT(func(v interface{}) (LookupFileShareResultOutput, error) { args := v.(LookupFileShareArgs) - r, err := LookupFileShare(ctx, &args, opts...) - var s LookupFileShareResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupFileShareResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getFileShare", args, &rv, "", opts...) + if err != nil { + return LookupFileShareResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupFileShareResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupFileShareResultOutput), nil + } + return output, nil }).(LookupFileShareResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getLocalUser.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getLocalUser.go index 8a924caae..8cd485897 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getLocalUser.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getLocalUser.go @@ -62,14 +62,20 @@ type LookupLocalUserResult struct { func LookupLocalUserOutput(ctx *pulumi.Context, args LookupLocalUserOutputArgs, opts ...pulumi.InvokeOption) LookupLocalUserResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupLocalUserResult, error) { + ApplyT(func(v interface{}) (LookupLocalUserResultOutput, error) { args := v.(LookupLocalUserArgs) - r, err := LookupLocalUser(ctx, &args, opts...) - var s LookupLocalUserResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupLocalUserResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getLocalUser", args, &rv, "", opts...) + if err != nil { + return LookupLocalUserResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupLocalUserResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupLocalUserResultOutput), nil + } + return output, nil }).(LookupLocalUserResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getManagementPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getManagementPolicy.go index 4e2b3fa99..6416f0394 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getManagementPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getManagementPolicy.go @@ -50,14 +50,20 @@ type LookupManagementPolicyResult struct { func LookupManagementPolicyOutput(ctx *pulumi.Context, args LookupManagementPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupManagementPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupManagementPolicyResult, error) { + ApplyT(func(v interface{}) (LookupManagementPolicyResultOutput, error) { args := v.(LookupManagementPolicyArgs) - r, err := LookupManagementPolicy(ctx, &args, opts...) - var s LookupManagementPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupManagementPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getManagementPolicy", args, &rv, "", opts...) + if err != nil { + return LookupManagementPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupManagementPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupManagementPolicyResultOutput), nil + } + return output, nil }).(LookupManagementPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getObjectReplicationPolicy.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getObjectReplicationPolicy.go index 2cacb1b75..a864141ba 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getObjectReplicationPolicy.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getObjectReplicationPolicy.go @@ -56,14 +56,20 @@ type LookupObjectReplicationPolicyResult struct { func LookupObjectReplicationPolicyOutput(ctx *pulumi.Context, args LookupObjectReplicationPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupObjectReplicationPolicyResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupObjectReplicationPolicyResult, error) { + ApplyT(func(v interface{}) (LookupObjectReplicationPolicyResultOutput, error) { args := v.(LookupObjectReplicationPolicyArgs) - r, err := LookupObjectReplicationPolicy(ctx, &args, opts...) - var s LookupObjectReplicationPolicyResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupObjectReplicationPolicyResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getObjectReplicationPolicy", args, &rv, "", opts...) + if err != nil { + return LookupObjectReplicationPolicyResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupObjectReplicationPolicyResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupObjectReplicationPolicyResultOutput), nil + } + return output, nil }).(LookupObjectReplicationPolicyResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getPrivateEndpointConnection.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getPrivateEndpointConnection.go index f8624e50a..924e54c45 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getPrivateEndpointConnection.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getPrivateEndpointConnection.go @@ -52,14 +52,20 @@ type LookupPrivateEndpointConnectionResult struct { func LookupPrivateEndpointConnectionOutput(ctx *pulumi.Context, args LookupPrivateEndpointConnectionOutputArgs, opts ...pulumi.InvokeOption) LookupPrivateEndpointConnectionResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupPrivateEndpointConnectionResult, error) { + ApplyT(func(v interface{}) (LookupPrivateEndpointConnectionResultOutput, error) { args := v.(LookupPrivateEndpointConnectionArgs) - r, err := LookupPrivateEndpointConnection(ctx, &args, opts...) - var s LookupPrivateEndpointConnectionResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupPrivateEndpointConnectionResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getPrivateEndpointConnection", args, &rv, "", opts...) + if err != nil { + return LookupPrivateEndpointConnectionResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupPrivateEndpointConnectionResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupPrivateEndpointConnectionResultOutput), nil + } + return output, nil }).(LookupPrivateEndpointConnectionResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueue.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueue.go index 0aaa1bb3b..042511e0e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueue.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueue.go @@ -49,14 +49,20 @@ type LookupQueueResult struct { func LookupQueueOutput(ctx *pulumi.Context, args LookupQueueOutputArgs, opts ...pulumi.InvokeOption) LookupQueueResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupQueueResult, error) { + ApplyT(func(v interface{}) (LookupQueueResultOutput, error) { args := v.(LookupQueueArgs) - r, err := LookupQueue(ctx, &args, opts...) - var s LookupQueueResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupQueueResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getQueue", args, &rv, "", opts...) + if err != nil { + return LookupQueueResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupQueueResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupQueueResultOutput), nil + } + return output, nil }).(LookupQueueResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueueServiceProperties.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueueServiceProperties.go index efef05182..41273f9d2 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueueServiceProperties.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getQueueServiceProperties.go @@ -48,14 +48,20 @@ type LookupQueueServicePropertiesResult struct { func LookupQueueServicePropertiesOutput(ctx *pulumi.Context, args LookupQueueServicePropertiesOutputArgs, opts ...pulumi.InvokeOption) LookupQueueServicePropertiesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupQueueServicePropertiesResult, error) { + ApplyT(func(v interface{}) (LookupQueueServicePropertiesResultOutput, error) { args := v.(LookupQueueServicePropertiesArgs) - r, err := LookupQueueServiceProperties(ctx, &args, opts...) - var s LookupQueueServicePropertiesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupQueueServicePropertiesResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getQueueServiceProperties", args, &rv, "", opts...) + if err != nil { + return LookupQueueServicePropertiesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupQueueServicePropertiesResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupQueueServicePropertiesResultOutput), nil + } + return output, nil }).(LookupQueueServicePropertiesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageAccount.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageAccount.go index 9ee6ba48a..8cf249599 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageAccount.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageAccount.go @@ -149,14 +149,20 @@ func (val *LookupStorageAccountResult) Defaults() *LookupStorageAccountResult { func LookupStorageAccountOutput(ctx *pulumi.Context, args LookupStorageAccountOutputArgs, opts ...pulumi.InvokeOption) LookupStorageAccountResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupStorageAccountResult, error) { + ApplyT(func(v interface{}) (LookupStorageAccountResultOutput, error) { args := v.(LookupStorageAccountArgs) - r, err := LookupStorageAccount(ctx, &args, opts...) - var s LookupStorageAccountResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupStorageAccountResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getStorageAccount", args, &rv, "", opts...) + if err != nil { + return LookupStorageAccountResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupStorageAccountResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupStorageAccountResultOutput), nil + } + return output, nil }).(LookupStorageAccountResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageTaskAssignment.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageTaskAssignment.go index 11ea70939..3c80159b5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageTaskAssignment.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getStorageTaskAssignment.go @@ -46,14 +46,20 @@ type LookupStorageTaskAssignmentResult struct { func LookupStorageTaskAssignmentOutput(ctx *pulumi.Context, args LookupStorageTaskAssignmentOutputArgs, opts ...pulumi.InvokeOption) LookupStorageTaskAssignmentResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupStorageTaskAssignmentResult, error) { + ApplyT(func(v interface{}) (LookupStorageTaskAssignmentResultOutput, error) { args := v.(LookupStorageTaskAssignmentArgs) - r, err := LookupStorageTaskAssignment(ctx, &args, opts...) - var s LookupStorageTaskAssignmentResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupStorageTaskAssignmentResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getStorageTaskAssignment", args, &rv, "", opts...) + if err != nil { + return LookupStorageTaskAssignmentResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupStorageTaskAssignmentResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupStorageTaskAssignmentResultOutput), nil + } + return output, nil }).(LookupStorageTaskAssignmentResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTable.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTable.go index 85417b75c..66afd92ae 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTable.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTable.go @@ -50,14 +50,20 @@ type LookupTableResult struct { func LookupTableOutput(ctx *pulumi.Context, args LookupTableOutputArgs, opts ...pulumi.InvokeOption) LookupTableResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTableResult, error) { + ApplyT(func(v interface{}) (LookupTableResultOutput, error) { args := v.(LookupTableArgs) - r, err := LookupTable(ctx, &args, opts...) - var s LookupTableResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTableResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getTable", args, &rv, "", opts...) + if err != nil { + return LookupTableResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTableResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTableResultOutput), nil + } + return output, nil }).(LookupTableResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTableServiceProperties.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTableServiceProperties.go index a522b6257..b6dd72f2e 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTableServiceProperties.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/getTableServiceProperties.go @@ -48,14 +48,20 @@ type LookupTableServicePropertiesResult struct { func LookupTableServicePropertiesOutput(ctx *pulumi.Context, args LookupTableServicePropertiesOutputArgs, opts ...pulumi.InvokeOption) LookupTableServicePropertiesResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (LookupTableServicePropertiesResult, error) { + ApplyT(func(v interface{}) (LookupTableServicePropertiesResultOutput, error) { args := v.(LookupTableServicePropertiesArgs) - r, err := LookupTableServiceProperties(ctx, &args, opts...) - var s LookupTableServicePropertiesResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv LookupTableServicePropertiesResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:getTableServiceProperties", args, &rv, "", opts...) + if err != nil { + return LookupTableServicePropertiesResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(LookupTableServicePropertiesResultOutput) + if secret { + return pulumi.ToSecret(output).(LookupTableServicePropertiesResultOutput), nil + } + return output, nil }).(LookupTableServicePropertiesResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listLocalUserKeys.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listLocalUserKeys.go index 62395bd7c..dff24a521 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listLocalUserKeys.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listLocalUserKeys.go @@ -44,14 +44,20 @@ type ListLocalUserKeysResult struct { func ListLocalUserKeysOutput(ctx *pulumi.Context, args ListLocalUserKeysOutputArgs, opts ...pulumi.InvokeOption) ListLocalUserKeysResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListLocalUserKeysResult, error) { + ApplyT(func(v interface{}) (ListLocalUserKeysResultOutput, error) { args := v.(ListLocalUserKeysArgs) - r, err := ListLocalUserKeys(ctx, &args, opts...) - var s ListLocalUserKeysResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListLocalUserKeysResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:listLocalUserKeys", args, &rv, "", opts...) + if err != nil { + return ListLocalUserKeysResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListLocalUserKeysResultOutput) + if secret { + return pulumi.ToSecret(output).(ListLocalUserKeysResultOutput), nil + } + return output, nil }).(ListLocalUserKeysResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountKeys.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountKeys.go index 023666c9b..b5f443a0a 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountKeys.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountKeys.go @@ -42,14 +42,20 @@ type ListStorageAccountKeysResult struct { func ListStorageAccountKeysOutput(ctx *pulumi.Context, args ListStorageAccountKeysOutputArgs, opts ...pulumi.InvokeOption) ListStorageAccountKeysResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListStorageAccountKeysResult, error) { + ApplyT(func(v interface{}) (ListStorageAccountKeysResultOutput, error) { args := v.(ListStorageAccountKeysArgs) - r, err := ListStorageAccountKeys(ctx, &args, opts...) - var s ListStorageAccountKeysResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListStorageAccountKeysResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:listStorageAccountKeys", args, &rv, "", opts...) + if err != nil { + return ListStorageAccountKeysResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListStorageAccountKeysResultOutput) + if secret { + return pulumi.ToSecret(output).(ListStorageAccountKeysResultOutput), nil + } + return output, nil }).(ListStorageAccountKeysResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountSAS.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountSAS.go index 10c81d618..3e207794c 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountSAS.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountSAS.go @@ -56,14 +56,20 @@ type ListStorageAccountSASResult struct { func ListStorageAccountSASOutput(ctx *pulumi.Context, args ListStorageAccountSASOutputArgs, opts ...pulumi.InvokeOption) ListStorageAccountSASResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListStorageAccountSASResult, error) { + ApplyT(func(v interface{}) (ListStorageAccountSASResultOutput, error) { args := v.(ListStorageAccountSASArgs) - r, err := ListStorageAccountSAS(ctx, &args, opts...) - var s ListStorageAccountSASResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListStorageAccountSASResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:listStorageAccountSAS", args, &rv, "", opts...) + if err != nil { + return ListStorageAccountSASResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListStorageAccountSASResultOutput) + if secret { + return pulumi.ToSecret(output).(ListStorageAccountSASResultOutput), nil + } + return output, nil }).(ListStorageAccountSASResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountServiceSAS.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountServiceSAS.go index 13b658ab2..12e98b3f5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountServiceSAS.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/listStorageAccountServiceSAS.go @@ -76,14 +76,20 @@ type ListStorageAccountServiceSASResult struct { func ListStorageAccountServiceSASOutput(ctx *pulumi.Context, args ListStorageAccountServiceSASOutputArgs, opts ...pulumi.InvokeOption) ListStorageAccountServiceSASResultOutput { return pulumi.ToOutputWithContext(context.Background(), args). - ApplyT(func(v interface{}) (ListStorageAccountServiceSASResult, error) { + ApplyT(func(v interface{}) (ListStorageAccountServiceSASResultOutput, error) { args := v.(ListStorageAccountServiceSASArgs) - r, err := ListStorageAccountServiceSAS(ctx, &args, opts...) - var s ListStorageAccountServiceSASResult - if r != nil { - s = *r + opts = utilities.PkgInvokeDefaultOpts(opts) + var rv ListStorageAccountServiceSASResult + secret, err := ctx.InvokePackageRaw("azure-native:storage:listStorageAccountServiceSAS", args, &rv, "", opts...) + if err != nil { + return ListStorageAccountServiceSASResultOutput{}, err } - return s, err + + output := pulumi.ToOutput(rv).(ListStorageAccountServiceSASResultOutput) + if secret { + return pulumi.ToSecret(output).(ListStorageAccountServiceSASResultOutput), nil + } + return output, nil }).(ListStorageAccountServiceSASResultOutput) } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/pulumi-plugin.json b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/pulumi-plugin.json index 021d33318..3825324d5 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/pulumi-plugin.json +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/storage/v2/pulumi-plugin.json @@ -1,5 +1,5 @@ { "resource": true, "name": "azure-native", - "version": "2.45.0" + "version": "2.64.2" } diff --git a/vendor/github.com/pulumi/pulumi-azure-native-sdk/v2/utilities/pulumiUtilities.go b/vendor/github.com/pulumi/pulumi-azure-native-sdk/v2/utilities/pulumiUtilities.go index b44657467..82912b673 100644 --- a/vendor/github.com/pulumi/pulumi-azure-native-sdk/v2/utilities/pulumiUtilities.go +++ b/vendor/github.com/pulumi/pulumi-azure-native-sdk/v2/utilities/pulumiUtilities.go @@ -165,7 +165,7 @@ func callPlainInner( func PkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOption { defaults := []pulumi.ResourceOption{} - version := semver.MustParse("2.53.0") + version := semver.MustParse("2.64.2") if !version.Equals(semver.Version{}) { defaults = append(defaults, pulumi.Version(version.String())) } @@ -176,7 +176,7 @@ func PkgResourceDefaultOpts(opts []pulumi.ResourceOption) []pulumi.ResourceOptio func PkgInvokeDefaultOpts(opts []pulumi.InvokeOption) []pulumi.InvokeOption { defaults := []pulumi.InvokeOption{} - version := semver.MustParse("2.53.0") + version := semver.MustParse("2.64.2") if !version.Equals(semver.Version{}) { defaults = append(defaults, pulumi.Version(version.String())) } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/.version b/vendor/github.com/pulumi/pulumi/sdk/v3/.version index f0c3a36bb..2ab0dc8a7 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/.version +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/.version @@ -1 +1 @@ -3.128.0 +3.135.0 diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/debug/debuglogging.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/debug/debuglogging.go index 839608082..eb1df3cc0 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/debug/debuglogging.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/debug/debuglogging.go @@ -1,3 +1,17 @@ +// Copyright 2020-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package debug import "fmt" diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/events/events.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/events/events.go index f4e1e0beb..6348bb307 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/events/events.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/events/events.go @@ -1,3 +1,17 @@ +// Copyright 2021-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package events import "github.com/pulumi/pulumi/sdk/v3/go/common/apitype" diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/local_workspace.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/local_workspace.go index 77d6b8056..a7488beb2 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/local_workspace.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/local_workspace.go @@ -60,6 +60,7 @@ type LocalWorkspace struct { remoteInheritSettings bool pulumiCommand PulumiCommand remoteExecutorImage *ExecutorImage + remoteAgentPoolID string } var settingsExtensions = []string{".yaml", ".yml", ".json"} @@ -778,7 +779,24 @@ func (l *LocalWorkspace) Install(ctx context.Context, opts *InstallOptions) erro if opts != nil && opts.Stderr != nil { stderrWriters = append(stderrWriters, opts.Stderr) } - stdout, stderr, errCode, err := l.runPulumiInputCmdSync(ctx, nil, stdoutWriters, stderrWriters, "install") + args := []string{"install"} + if opts != nil && opts.UseLanguageVersionTools { + // Pulumi 3.130.0 introduced the `--use-language-version-tools` flag. + if l.pulumiCommand.Version().LT(semver.Version{Major: 3, Minor: 130}) { + return errors.New("UseLanguageVersionTools requires Pulumi CLI version >= 3.130.0") + } + args = append(args, "--use-language-version-tools") + } + if opts != nil && opts.NoPlugins { + args = append(args, "--no-plugins") + } + if opts != nil && opts.NoDependencies { + args = append(args, "--no-dependencies") + } + if opts != nil && opts.Reinstall { + args = append(args, "--reinstall") + } + stdout, stderr, errCode, err := l.runPulumiInputCmdSync(ctx, nil, stdoutWriters, stderrWriters, args...) if err != nil { return newAutoError(fmt.Errorf("could not install dependencies: %w", err), stdout, stderr, errCode) } @@ -903,6 +921,7 @@ func NewLocalWorkspace(ctx context.Context, opts ...LocalWorkspaceOption) (Works remoteEnvVars: lwOpts.RemoteEnvVars, remoteSkipInstallDependencies: lwOpts.RemoteSkipInstallDependencies, remoteExecutorImage: lwOpts.RemoteExecutorImage, + remoteAgentPoolID: lwOpts.RemoteAgentPoolID, remoteInheritSettings: lwOpts.RemoteInheritSettings, repo: lwOpts.Repo, pulumiCommand: pulumiCommand, @@ -1000,6 +1019,8 @@ type localWorkspaceOptions struct { RemoteSkipInstallDependencies bool // RemoteExecutorImage is the image to use for the remote Pulumi operation. RemoteExecutorImage *ExecutorImage + // RemoteAgentPoolID is the agent pool (also called deployment runner pool) to use for the remote Pulumi operation. + RemoteAgentPoolID string // RemoteInheritSettings sets whether to inherit settings from the remote workspace. RemoteInheritSettings bool } @@ -1167,6 +1188,12 @@ func remoteExecutorImage(image *ExecutorImage) LocalWorkspaceOption { }) } +func remoteAgentPoolID(agentPoolID string) LocalWorkspaceOption { + return localWorkspaceOption(func(lo *localWorkspaceOptions) { + lo.RemoteAgentPoolID = agentPoolID + }) +} + func remoteInheritSettings(inheritSettings bool) LocalWorkspaceOption { return localWorkspaceOption(func(lo *localWorkspaceOptions) { lo.RemoteInheritSettings = inheritSettings diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optpreview/optpreview.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optpreview/optpreview.go index 27841da97..328eec05d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optpreview/optpreview.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optpreview/optpreview.go @@ -143,6 +143,13 @@ func ImportFile(path string) Option { }) } +// AttachDebugger will run the process under a debugger, and pause until a debugger is attached +func AttachDebugger() Option { + return optionFunc(func(opts *Options) { + opts.AttachDebugger = true + }) +} + // Option is a parameter to be applied to a Stack.Preview() operation type Option interface { ApplyOption(*Options) @@ -193,6 +200,8 @@ type Options struct { SuppressOutputs bool // Save any creates seen during the preview into an import file to use with pulumi import ImportFile string + // Run the process under a debugger, and pause until a debugger is attached + AttachDebugger bool } type optionFunc func(*Options) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optup/optup.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optup/optup.go index c441775ee..42316d067 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optup/optup.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/optup/optup.go @@ -150,6 +150,13 @@ func ContinueOnError() Option { }) } +// AttachDebugger will run the process under a debugger, and pause until a debugger is attached +func AttachDebugger() Option { + return optionFunc(func(opts *Options) { + opts.AttachDebugger = true + }) +} + // Option is a parameter to be applied to a Stack.Up() operation type Option interface { ApplyOption(*Options) @@ -202,6 +209,8 @@ type Options struct { SuppressOutputs bool // ContinueOnError will continue to perform the update operation despite the occurrence of errors. ContinueOnError bool + // AttachDebugger will run the process under a debugger, and pause until a debugger is attached + AttachDebugger bool } type optionFunc func(*Options) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/remote_workspace.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/remote_workspace.go index 6188e8e4c..7c881767a 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/remote_workspace.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/remote_workspace.go @@ -167,6 +167,7 @@ func remoteToLocalOptions(repo GitRepo, opts ...RemoteWorkspaceOption) ([]LocalW remoteSkipInstallDependencies(remoteOpts.SkipInstallDependencies), Repo(repo), remoteExecutorImage(remoteOpts.ExecutorImage), + remoteAgentPoolID(remoteOpts.AgentPoolID), } return localOpts, nil } @@ -183,6 +184,8 @@ type remoteWorkspaceOptions struct { SkipInstallDependencies bool // ExecutorImage is the image to use for the remote executor. ExecutorImage *ExecutorImage + // AgentPoolID is the agent pool (also called deployment runner pool) to use for the remote Pulumi operation. + AgentPoolID string } type ExecutorImage struct { @@ -243,6 +246,14 @@ func RemoteExecutorImage(image *ExecutorImage) RemoteWorkspaceOption { }) } +// RemoteExecutorImage sets the agent pool (also called deployment runner pool) to use for the +// remote Pulumi operation. +func RemoteAgentPoolID(agentPoolID string) RemoteWorkspaceOption { + return remoteWorkspaceOption(func(opts *remoteWorkspaceOptions) { + opts.AgentPoolID = agentPoolID + }) +} + // isFullyQualifiedStackName returns true if the stack is fully qualified, // i.e. has owner, project, and stack components. func isFullyQualifiedStackName(stackName string) bool { diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/stack.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/stack.go index 057515ae8..38765f27e 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/stack.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/stack.go @@ -280,6 +280,9 @@ func (s *Stack) Preview(ctx context.Context, opts ...optpreview.Option) (Preview if preOpts.ImportFile != "" { sharedArgs = append(sharedArgs, "--import-file="+preOpts.ImportFile) } + if preOpts.AttachDebugger { + sharedArgs = append(sharedArgs, "--attach-debugger") + } // Apply the remote args, if needed. sharedArgs = append(sharedArgs, s.remoteArgs()...) @@ -414,6 +417,9 @@ func (s *Stack) Up(ctx context.Context, opts ...optup.Option) (UpResult, error) if upOpts.ContinueOnError { sharedArgs = append(sharedArgs, "--continue-on-error") } + if upOpts.AttachDebugger { + sharedArgs = append(sharedArgs, "--attach-debugger") + } // Apply the remote args, if needed. sharedArgs = append(sharedArgs, s.remoteArgs()...) @@ -1345,6 +1351,7 @@ func (s *Stack) remoteArgs() []string { var preRunCommands []string var envvars map[string]EnvVarValue var executorImage *ExecutorImage + var remoteAgentPoolID string var skipInstallDependencies bool var inheritSettings bool if lws, isLocalWorkspace := s.Workspace().(*LocalWorkspace); isLocalWorkspace { @@ -1354,6 +1361,7 @@ func (s *Stack) remoteArgs() []string { envvars = lws.remoteEnvVars skipInstallDependencies = lws.remoteSkipInstallDependencies executorImage = lws.remoteExecutorImage + remoteAgentPoolID = lws.remoteAgentPoolID inheritSettings = lws.remoteInheritSettings } if !remote { @@ -1419,6 +1427,10 @@ func (s *Stack) remoteArgs() []string { } } + if remoteAgentPoolID != "" { + args = append(args, "--remote-agent-pool-id="+remoteAgentPoolID) + } + if skipInstallDependencies { args = append(args, "--remote-skip-install-dependencies") } @@ -1550,7 +1562,7 @@ func (s *languageRuntimeServer) Run(ctx context.Context, req *pulumirpc.RunReque ConfigSecretKeys: req.GetConfigSecretKeys(), Project: req.GetProject(), Stack: req.GetStack(), - Parallel: int(req.GetParallel()), + Parallel: req.GetParallel(), DryRun: req.GetDryRun(), Organization: req.GetOrganization(), } @@ -1567,7 +1579,7 @@ func (s *languageRuntimeServer) Run(ctx context.Context, req *pulumirpc.RunReque if pErr, ok := r.(error); ok { err = fmt.Errorf("go inline source runtime error, an unhandled error occurred: %w", pErr) } else { - err = errors.New("go inline source runtime error, an unhandled error occurred: unknown error") + err = fmt.Errorf("go inline source runtime error, an unhandled panic occurred: %v", r) } } }() diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/workspace.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/workspace.go index e3b293eed..23ed9fcbe 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/workspace.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/auto/workspace.go @@ -201,4 +201,14 @@ type InstallOptions struct { Stdout io.Writer // Stderr is the optional writer to use for the error output during installation. Stderr io.Writer + // Use language version tools to setup the language runtime before installing the dependencies. + // For Python this will use `pyenv` to install the Python version specified in a + // `.python-version` file. + UseLanguageVersionTools bool + // Skip installing plugins + NoPlugins bool + // Skip installing dependencies + NoDependencies bool + // Reinstall plugins even if they already exist + Reinstall bool } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/core.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/core.go index 547b13951..8618d5cb1 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/core.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/core.go @@ -148,6 +148,8 @@ type DeploymentV3 struct { Resources []ResourceV3 `json:"resources,omitempty" yaml:"resources,omitempty"` // PendingOperations are all operations that were known by the engine to be currently executing. PendingOperations []OperationV2 `json:"pending_operations,omitempty" yaml:"pending_operations,omitempty"` + // Metadata associated with the snapshot. + Metadata SnapshotMetadataV1 `json:"metadata,omitempty" yaml:"metadata,omitempty"` } type SecretsProvidersV1 struct { @@ -155,6 +157,23 @@ type SecretsProvidersV1 struct { State json.RawMessage `json:"state,omitempty"` } +// SnapshotMetadataV1 contains metadata about a deployment snapshot. +type SnapshotMetadataV1 struct { + // Metadata associated with any integrity error affecting the snapshot. + IntegrityErrorMetadata *SnapshotIntegrityErrorMetadataV1 `json:"integrity_error,omitempty" yaml:"integrity_error,omitempty"` +} + +// SnapshotIntegrityErrorMetadataV1 contains metadata about a snapshot integrity error, such as the version +// and invocation of the Pulumi engine that caused it. +type SnapshotIntegrityErrorMetadataV1 struct { + // The version of the Pulumi engine that caused the integrity error. + Version string `json:"version,omitempty" yaml:"version,omitempty"` + // The command/invocation of the Pulumi engine that caused the integrity error. + Command string `json:"command,omitempty" yaml:"command,omitempty"` + // The error message associated with the integrity error. + Error string `json:"error,omitempty" yaml:"error,omitempty"` +} + // OperationType is the type of an operation initiated by the engine. Its value indicates the type of operation // that the engine initiated. type OperationType string diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/deployments.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/deployments.go index 034a930cb..4d25f6c77 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/deployments.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/deployments.go @@ -55,6 +55,48 @@ func ParsePulumiOperation(o string) (PulumiOperation, error) { } } +// DeploymentDuration, wrapper over time.Duration to properly marshall +// time durations according to pulumi cloud spec. +type DeploymentDuration time.Duration + +func (v DeploymentDuration) MarshalJSON() ([]byte, error) { + return json.Marshal(time.Duration(v).String()) +} + +func (v *DeploymentDuration) UnmarshalJSON(bytes []byte) error { + var s string + if err := json.Unmarshal(bytes, &s); err != nil { + return err + } + if s != "" { + d, err := time.ParseDuration(s) + if err != nil { + return err + } + *v = DeploymentDuration(d) + } + return nil +} + +func (v DeploymentDuration) MarshalYAML() (any, error) { + return time.Duration(v).String(), nil +} + +func (v *DeploymentDuration) UnmarshalYAML(node *yaml.Node) error { + var s string + if err := node.Decode(&s); err != nil { + return err + } + if s != "" { + d, err := time.ParseDuration(s) + if err != nil { + return err + } + *v = DeploymentDuration(d) + } + return nil +} + // CreateDeploymentRequest defines the request payload that is expected when // creating a new deployment. type CreateDeploymentRequest struct { @@ -86,6 +128,11 @@ func (d *AgentPoolIDMarshaller) MarshalJSON() ([]byte, error) { return json.Marshal(nil) } +type GitHubAppIntegration struct { + // Whether the app is installed for this org. + Installed bool `json:"installed"` +} + type DeploymentSettings struct { Tag string `json:"tag,omitempty" yaml:"tag,omitempty"` Executor *ExecutorContext `json:"executorContext,omitempty" yaml:"executorContext,omitempty"` @@ -160,7 +207,7 @@ type SourceContext struct { } type SourceContextGit struct { - RepoURL string `json:"repoURL" yaml:"repoURL,omitempty"` + RepoURL string `json:"repoUrl" yaml:"repoUrl,omitempty"` Branch string `json:"branch" yaml:"branch"` @@ -241,7 +288,7 @@ type OperationContextOIDCConfiguration struct { type OperationContextAWSOIDCConfiguration struct { // Duration is the duration of the assume-role session. - Duration time.Duration `json:"duration,omitempty" yaml:"duration,omitempty"` + Duration DeploymentDuration `json:"duration,omitempty" yaml:"duration,omitempty"` // PolicyARNs is an optional set of IAM policy ARNs that further restrict the assume-role session. PolicyARNs []string `json:"policyArns,omitempty" yaml:"policyArns,omitempty"` // The ARN of the role to assume using the OIDC token. @@ -271,7 +318,7 @@ type OperationContextGCPOIDCConfiguration struct { // ServiceAccount is the email address of the service account to use. ServiceAccount string `json:"serviceAccount" yaml:"serviceAccount"` // TokenLifetime is the lifetime of the temporary credentials. - TokenLifetime time.Duration `json:"tokenLifetime,omitempty" yaml:"tokenLifetime,omitempty"` + TokenLifetime DeploymentDuration `json:"tokenLifetime,omitempty" yaml:"tokenLifetime,omitempty"` } // OperationContextOptions is a bag of settings to specify or override default behavior in a deployment diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/events.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/events.go index 799c0bdf2..96b9929d8 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/events.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/events.go @@ -45,6 +45,11 @@ type DiagnosticEvent struct { Ephemeral bool `json:"ephemeral,omitempty"` } +// StartDebuggingEvent is emitted to start a debugging session. +type StartDebuggingEvent struct { + Config map[string]interface{} `json:"config,omitempty"` +} + // PolicyEvent is emitted whenever there is Policy violation. type PolicyEvent struct { ResourceURN string `json:"resourceUrn,omitempty"` @@ -200,6 +205,34 @@ type ResOpFailedEvent struct { // PolicyLoadEvent is emitted when a policy starts loading type PolicyLoadEvent struct{} +// ProgressEvent is emitted when a potentially long-running engine process is in +// progress. +type ProgressEvent struct { + // The type of process (e.g. plugin download, plugin install). + Type ProgressType `json:"type"` + // A unique identifier for the process. + ID string `json:"id"` + // A message accompanying the process. + Message string `json:"message"` + // The number of items completed so far (e.g. bytes received, items installed, + // etc.) + Completed int64 `json:"received"` + // The total number of items that must be completed. + Total int64 `json:"total"` + // True if and only if the process has completed. + Done bool `json:"done"` +} + +// ProgressType is the type of process occurring. +type ProgressType string + +const ( + // PluginDownload represents a download of a plugin. + PluginDownload ProgressType = "plugin-download" + // PluginInstall represents the installation of a plugin. + PluginInstall ProgressType = "plugin-install" +) + // EngineEvent describes a Pulumi engine event, such as a change to a resource or diagnostic // message. EngineEvent is a discriminated union of all possible event types, and exactly one // field will be non-nil. @@ -227,6 +260,8 @@ type EngineEvent struct { PolicyEvent *PolicyEvent `json:"policyEvent,omitempty"` PolicyRemediationEvent *PolicyRemediationEvent `json:"policyRemediationEvent,omitempty"` PolicyLoadEvent *PolicyLoadEvent `json:"policyLoadEvent,omitempty"` + StartDebuggingEvent *StartDebuggingEvent `json:"startDebuggingEvent,omitempty"` + ProgressEvent *ProgressEvent `json:"progressEvent,omitempty"` } // EngineEventBatch is a group of engine events. diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/plan.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/plan.go index 30806f872..08287fdb1 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/plan.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/plan.go @@ -1,3 +1,17 @@ +// Copyright 2022-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package apitype import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/stacks.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/stacks.go index ac17fe074..d99708d1b 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/stacks.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/stacks.go @@ -58,6 +58,9 @@ type CreateStackRequest struct { // An optional set of teams to assign to the stack. Teams []string `json:"teams,omitempty"` + + // An optional state to initialize the stack with. + State *UntypedDeployment `json:"state,omitempty"` } // CreateStackResponse is the response from a create Stack request. diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/updates.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/updates.go index 7d932790e..1c8ed354f 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/updates.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/apitype/updates.go @@ -50,7 +50,7 @@ type UpdateOptions struct { LocalPolicyPackPaths []string `json:"localPolicyPackPaths"` Color colors.Colorization `json:"color"` DryRun bool `json:"dryRun"` - Parallel int `json:"parallel"` + Parallel int32 `json:"parallel"` ShowConfig bool `json:"showConfig"` ShowReplacementSteps bool `json:"showReplacementSteps"` ShowSames bool `json:"showNames"` @@ -86,6 +86,10 @@ type Message struct { Message string `json:"message"` } +type AISettingsForUpdate struct { + CopilotIsEnabled bool `json:"copilotIsEnabled"` +} + // UpdateProgramResponse is the result of an update program request. type UpdateProgramResponse struct { // UpdateID is the opaque identifier of the requested update. This value is needed to begin an update, as @@ -97,6 +101,8 @@ type UpdateProgramResponse struct { // Messages is a list of messages that should be displayed to the user. Messages []Message `json:"messages,omitempty"` + + AISettings AISettingsForUpdate `json:"aiSettings,omitempty"` } // StartUpdateRequest requests that an update starts getting applied to a stack. diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/constant/exec_kind.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/constant/exec_kind.go index 73385e779..94a990f45 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/constant/exec_kind.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/constant/exec_kind.go @@ -1,3 +1,17 @@ +// Copyright 2020-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package constant // ExecKindAutoLocal is a flag used to identify a command as originating diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/diag/colors/colors.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/diag/colors/colors.go index 38efadf04..df78e0485 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/diag/colors/colors.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/diag/colors/colors.go @@ -132,6 +132,8 @@ func writeDirective(w io.StringWriter, c Colorization, directive Color) { writeCodes(w, "48", "5", "4") case Black: // command("fg 0") // Only use with background colors. writeCodes(w, "38", "5", "0") + case BrightBlack: // command("fg 8") + writeCodes(w, "38", "5", "8") default: contract.Failf("Unrecognized color code: %q", directive) } @@ -280,7 +282,7 @@ var ( Black = command("fg 0") // Only use with background colors. // White = command("fg 7") - // BrightBlack = command("fg 8") + BrightBlack = command("fg 8") // BrightYellow = command("fg 11") // BrightWhite = command("fg 15") ) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/env/env.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/env/env.go index 11b66f453..dcd2a7d87 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/env/env.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/env/env.go @@ -91,6 +91,15 @@ var SkipVersionCheck = env.Bool("AUTOMATION_API_SKIP_VERSION_CHECK", var ContinueOnError = env.Bool("CONTINUE_ON_ERROR", "Continue to perform the update/destroy operation despite the occurrence of errors.") +var BackendURL = env.String("BACKEND_URL", + "Set the backend that will be used instead of the currently logged in backend or the current project's backend.") + +var SuppressCopilotLink = env.Bool("SUPPRESS_COPILOT_LINK", + "Suppress showing the 'explainFailure' link to Copilot in the CLI output.") + +var FallbackToStateSecretsManager = env.Bool("FALLBACK_TO_STATE_SECRETS_MANAGER", + "Use the snapshot secrets manager as a fallback when the stack configuration is missing or incomplete.") + // List of overrides for Plugin Download URLs. The expected format is `regexp=URL`, and multiple pairs can // be specified separated by commas, e.g. `regexp1=URL1,regexp2=URL2` // diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/alias.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/alias.go index d46ed3d19..c94b34e67 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/alias.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/alias.go @@ -1,3 +1,17 @@ +// Copyright 2022-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package resource import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/archive/archive.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/archive/archive.go index 315c13f85..2703c8c2d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/archive/archive.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/archive/archive.go @@ -24,6 +24,7 @@ import ( "errors" "fmt" "io" + "math" "net/http" "net/url" "os" @@ -970,6 +971,10 @@ func (r *zipArchiveReader) Next() (string, *asset.Blob, error) { return "", nil, fmt.Errorf("failed to read ZIP inner file %v: %w", file.Name, err) } + if file.UncompressedSize64 > math.MaxInt64 { + return "", nil, fmt.Errorf("file %v is too large to read", file.Name) + } + //nolint:gosec // uint64 -> int64 overflow is checked above. blob := asset.NewRawBlob(body, int64(file.UncompressedSize64)) name := filepath.Clean(file.Name) return name, blob, nil diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/config/plaintext.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/config/plaintext.go index 79a13b6b5..3718896cd 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/config/plaintext.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/config/plaintext.go @@ -38,7 +38,7 @@ type Plaintext struct { func NewPlaintext[T PlaintextType](v T) Plaintext { if m, ok := any(v).(map[string]Plaintext); ok && len(m) == 1 { if _, ok := m["secure"].Value().(string); ok { - contract.Failf(errSecureReprReserved.Error()) + contract.Failf("%s", errSecureReprReserved.Error()) } } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/custom_timeouts.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/custom_timeouts.go index 4baffd7d8..40e127481 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/custom_timeouts.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/custom_timeouts.go @@ -1,3 +1,17 @@ +// Copyright 2019-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package resource type CustomTimeouts struct { diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/analyzer_plugin.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/analyzer_plugin.go index 385c98fdb..880fef4e6 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/analyzer_plugin.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/analyzer_plugin.go @@ -16,6 +16,7 @@ package plugin import ( "encoding/json" + "errors" "fmt" "os" "path/filepath" @@ -25,7 +26,6 @@ import ( "strings" "github.com/blang/semver" - "github.com/pkg/errors" "google.golang.org/grpc" "google.golang.org/grpc/codes" "google.golang.org/grpc/credentials/insecure" @@ -91,7 +91,7 @@ func NewPolicyAnalyzer( projPath := filepath.Join(policyPackPath, "PulumiPolicy.yaml") proj, err := workspace.LoadPolicyPack(projPath) if err != nil { - return nil, errors.Wrapf(err, "failed to load Pulumi policy project located at %q", policyPackPath) + return nil, fmt.Errorf("failed to load Pulumi policy project located at %q: %w", policyPackPath, err) } // For historical reasons, the Node.js plugin name is just "policy". @@ -140,14 +140,15 @@ func NewPolicyAnalyzer( if err != nil { // The original error might have been wrapped before being returned from newPlugin. So we look for // the root cause of the error. This won't work if we switch to Go 1.13's new approach to wrapping. - if errors.Cause(err) == errRunPolicyModuleNotFound { + + if errors.Is(err, errRunPolicyModuleNotFound) { return nil, fmt.Errorf("it looks like the policy pack's dependencies are not installed; "+ "try running npm install or yarn install in %q", policyPackPath) } - if errors.Cause(err) == errPluginNotFound { + if errors.Is(err, errPluginNotFound) { return nil, fmt.Errorf("policy pack not found at %q", name) } - return nil, errors.Wrapf(err, "policy pack %q failed to start", string(name)) + return nil, fmt.Errorf("policy pack %q failed to start: %w", string(name), err) } contract.Assertf(plug != nil, "unexpected nil analyzer plugin for %s", name) @@ -203,7 +204,7 @@ func (a *analyzer) Analyze(r AnalyzerResource) ([]AnalyzeDiagnostic, error) { diags, err := convertDiagnostics(failures, a.version) if err != nil { - return nil, errors.Wrap(err, "converting analysis results") + return nil, fmt.Errorf("converting analysis results: %w", err) } return diags, nil } @@ -217,7 +218,7 @@ func (a *analyzer) AnalyzeStack(resources []AnalyzerStackResource) ([]AnalyzeDia props, err := MarshalProperties(resource.Properties, MarshalOptions{KeepUnknowns: true, KeepSecrets: true, SkipInternalKeys: true}) if err != nil { - return nil, errors.Wrap(err, "marshalling properties") + return nil, fmt.Errorf("marshalling properties: %w", err) } provider, err := marshalProvider(resource.Provider) @@ -276,7 +277,7 @@ func (a *analyzer) AnalyzeStack(resources []AnalyzerStackResource) ([]AnalyzeDia diags, err := convertDiagnostics(failures, a.version) if err != nil { - return nil, errors.Wrap(err, "converting analysis results") + return nil, fmt.Errorf("converting analysis results: %w", err) } return diags, nil } @@ -461,7 +462,7 @@ func (a *analyzer) Configure(policyConfig map[string]AnalyzerPolicyConfig) error for k, v := range policyConfig { if !v.EnforcementLevel.IsValid() { - return errors.Errorf("invalid enforcement level %q", v.EnforcementLevel) + return fmt.Errorf("invalid enforcement level %q", v.EnforcementLevel) } c[k] = &pulumirpc.PolicyConfig{ EnforcementLevel: marshalEnforcementLevel(v.EnforcementLevel), @@ -541,7 +542,7 @@ func marshalProvider(provider *AnalyzerProviderResource) (*pulumirpc.AnalyzerPro props, err := MarshalProperties(provider.Properties, MarshalOptions{KeepUnknowns: true, KeepSecrets: true, SkipInternalKeys: true}) if err != nil { - return nil, errors.Wrap(err, "marshalling properties") + return nil, fmt.Errorf("marshalling properties: %w", err) } return &pulumirpc.AnalyzerProviderResource{ diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/context.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/context.go index 0b354350a..344c8863a 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/context.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/context.go @@ -73,19 +73,19 @@ func NewContext(d, statusD diag.Sink, host Host, _ ConfigSource, } } - root := "" - return NewContextWithRoot(d, statusD, host, pwd, root, runtimeOptions, - disableProviderPreview, parentSpan, plugins, nil) + return NewContextWithRoot(d, statusD, host, pwd, pwd, runtimeOptions, + disableProviderPreview, parentSpan, plugins, nil, nil) } // NewContextWithRoot is a variation of NewContext that also sets known project Root. Additionally accepts Plugins func NewContextWithRoot(d, statusD diag.Sink, host Host, pwd, root string, runtimeOptions map[string]interface{}, disableProviderPreview bool, parentSpan opentracing.Span, plugins *workspace.Plugins, config map[config.Key]string, + debugging DebugEventEmitter, ) (*Context, error) { return NewContextWithContext( context.Background(), d, statusD, host, pwd, root, - runtimeOptions, disableProviderPreview, parentSpan, plugins, config) + runtimeOptions, disableProviderPreview, parentSpan, plugins, config, debugging) } // NewContextWithContext is a variation of NewContextWithRoot that also sets the base context. @@ -94,6 +94,7 @@ func NewContextWithContext( d, statusD diag.Sink, host Host, pwd, root string, runtimeOptions map[string]interface{}, disableProviderPreview bool, parentSpan opentracing.Span, plugins *workspace.Plugins, config map[config.Key]string, + debugging DebugEventEmitter, ) (*Context, error) { if d == nil { d = diag.DefaultSink(io.Discard, io.Discard, diag.FormatOptions{Color: colors.Never}) @@ -114,7 +115,7 @@ func NewContextWithContext( baseContext: ctx, } if host == nil { - h, err := NewDefaultHost(pctx, runtimeOptions, disableProviderPreview, plugins, config) + h, err := NewDefaultHost(pctx, runtimeOptions, disableProviderPreview, plugins, config, debugging) if err != nil { return nil, err } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/debugging.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/debugging.go new file mode 100644 index 000000000..21d3c75b4 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/debugging.go @@ -0,0 +1,25 @@ +// Copyright 2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package plugin + +type DebugEventEmitter interface { + // StartDebugging asks the host to start a debug session for the given configuration. + StartDebugging(info DebuggingInfo) error +} + +type DebuggingInfo struct { + // Config is the debug configuration (language-specific, see Debug Adapter Protocol) + Config map[string]interface{} +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/diagnostic.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/diagnostic.go index a9deb6d0e..2c55c1dc6 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/diagnostic.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/diagnostic.go @@ -49,6 +49,7 @@ func HclDiagnosticToRPCDiagnostic(diag *hcl.Diagnostic) *codegenrpc.Diagnostic { } return &codegenrpc.Diagnostic{ + //nolint:gosec // diag.Seveverity is 0, 1 or 2, the int -> int32 conversion is safe. Severity: codegenrpc.DiagnosticSeverity(diag.Severity), Summary: diag.Summary, Detail: diag.Detail, diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/doc.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/doc.go index 1a1686496..70b94ff16 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/doc.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/doc.go @@ -1,3 +1,17 @@ +// Copyright 2021-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package plugin /* diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host.go index 7074886f8..479e14707 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host.go @@ -16,6 +16,7 @@ package plugin import ( "encoding/json" + "errors" "fmt" "os" "path/filepath" @@ -23,7 +24,6 @@ import ( "github.com/blang/semver" "github.com/hashicorp/go-multierror" - "github.com/pkg/errors" "github.com/pulumi/pulumi/sdk/v3/go/common/apitype" "github.com/pulumi/pulumi/sdk/v3/go/common/diag" @@ -66,7 +66,7 @@ type Host interface { // Provider loads a new copy of the provider for a given package. If a provider for this package could not be // found, or an error occurs while creating it, a non-nil error is returned. - Provider(pkg tokens.Package, version *semver.Version) (Provider, error) + Provider(descriptor workspace.PackageDescriptor) (Provider, error) // CloseProvider closes the given provider plugin and deregisters it from this host. CloseProvider(provider Provider) error // LanguageRuntime fetches the language runtime plugin for a given language, lazily allocating if necessary. If @@ -89,6 +89,9 @@ type Host interface { // called before (e.g.) hard-closing any gRPC connection. SignalCancellation() error + // StartDebugging asks the host to start a debugging session with the given configuration. + StartDebugging(DebuggingInfo) error + // Close reclaims any resources associated with the host. Close() error } @@ -96,6 +99,7 @@ type Host interface { // NewDefaultHost implements the standard plugin logic, using the standard installation root to find them. func NewDefaultHost(ctx *Context, runtimeOptions map[string]interface{}, disableProviderPreview bool, plugins *workspace.Plugins, config map[config.Key]string, + debugging DebugEventEmitter, ) (Host, error) { // Create plugin info from providers projectPlugins := make([]workspace.ProjectPlugin, 0) @@ -136,6 +140,7 @@ func NewDefaultHost(ctx *Context, runtimeOptions map[string]interface{}, config: config, closer: new(sync.Once), projectPlugins: projectPlugins, + debugging: debugging, } // Fire up a gRPC server to listen for requests. This acts as a RPC interface that plugins can use @@ -238,6 +243,7 @@ type defaultHost struct { server *hostServer // the server's RPC machinery. disableProviderPreview bool // true if provider plugins should disable provider preview config map[config.Key]string // the configuration map for the stack, if any. + debugging DebugEventEmitter // Used to synchronize shutdown with in-progress plugin loads. pluginLock sync.RWMutex @@ -275,6 +281,11 @@ func (host *defaultHost) LogStatus(sev diag.Severity, urn resource.URN, msg stri host.ctx.StatusDiag.Logf(sev, diag.StreamMessage(urn, msg, streamID)) } +func (host *defaultHost) StartDebugging(info DebuggingInfo) error { + contract.Assertf(host.debugging != nil, "expected host.debugging to be non-nil") + return host.debugging.StartDebugging(info) +} + // loadPlugin sends an appropriate load request to the plugin loader and returns the loaded plugin (if any) and error. func (host *defaultHost) loadPlugin( loadRequestChannel chan pluginLoadRequest, load func() (interface{}, error), @@ -364,13 +375,16 @@ func (host *defaultHost) ListAnalyzers() []Analyzer { return analyzers } -func (host *defaultHost) Provider(pkg tokens.Package, version *semver.Version) (Provider, error) { +func (host *defaultHost) Provider(descriptor workspace.PackageDescriptor) (Provider, error) { plugin, err := host.loadPlugin(host.loadRequests, func() (interface{}, error) { + pkg := descriptor.Name + version := descriptor.Version + // Try to load and bind to a plugin. result := make(map[string]string) for k, v := range host.config { - if tokens.Package(k.Namespace()) != pkg { + if k.Namespace() != pkg { continue } result[k.Name()] = v @@ -381,7 +395,7 @@ func (host *defaultHost) Provider(pkg tokens.Package, version *semver.Version) ( } plug, err := NewProvider( - host, host.ctx, pkg, version, + host, host.ctx, tokens.Package(pkg), version, host.runtimeOptions, host.disableProviderPreview, string(jsonConfig)) if err == nil && plug != nil { info, infoerr := plug.GetPluginInfo(host.ctx.Request()) @@ -474,7 +488,7 @@ func (host *defaultHost) EnsurePlugins(plugins []workspace.PluginSpec, kinds Fla if kinds&AnalyzerPlugins != 0 { if _, err := host.Analyzer(tokens.QName(plugin.Name)); err != nil { result = multierror.Append(result, - errors.Wrapf(err, "failed to load analyzer plugin %s", plugin.Name)) + fmt.Errorf("failed to load analyzer plugin %s: %w", plugin.Name, err)) } } case apitype.LanguagePlugin: @@ -487,14 +501,14 @@ func (host *defaultHost) EnsurePlugins(plugins []workspace.PluginSpec, kinds Fla info := NewProgramInfo(host.ctx.Root, host.ctx.Pwd, ".", nil) if _, err := host.LanguageRuntime(plugin.Name, info); err != nil { result = multierror.Append(result, - errors.Wrapf(err, "failed to load language plugin %s", plugin.Name)) + fmt.Errorf("failed to load language plugin %s: %w", plugin.Name, err)) } } case apitype.ResourcePlugin: if kinds&ResourcePlugins != 0 { - if _, err := host.Provider(tokens.Package(plugin.Name), plugin.Version); err != nil { + if _, err := host.Provider(workspace.PackageDescriptor{PluginSpec: plugin}); err != nil { result = multierror.Append(result, - errors.Wrapf(err, "failed to load resource plugin %s", plugin.Name)) + fmt.Errorf("failed to load resource plugin %s: %w", plugin.Name, err)) } } case apitype.ConverterPlugin, apitype.ToolPlugin: @@ -521,8 +535,8 @@ func (host *defaultHost) SignalCancellation() error { var result error for _, plug := range host.resourcePlugins { if err := plug.Plugin.SignalCancellation(host.ctx.Request()); err != nil { - result = multierror.Append(result, errors.Wrapf(err, - "Error signaling cancellation to resource provider '%s'", plug.Info.Name)) + result = multierror.Append(result, fmt.Errorf( + "Error signaling cancellation to resource provider '%s': %w", plug.Info.Name, err)) } } return nil, result @@ -613,12 +627,24 @@ func GetRequiredPlugins( // TODO: we need to think about how best to version this. For now, it always picks the latest. lang, err := host.LanguageRuntime(runtime, info) if err != nil { - return nil, errors.Wrapf(err, "failed to load language plugin %s", runtime) + return nil, fmt.Errorf("failed to load language plugin %s: %w", runtime, err) + } + // Query the language runtime plugin for its version. + langInfo, err := lang.GetPluginInfo() + if err != nil { + // Don't error if this fails, just warn and return the version as unknown. + host.Log(diag.Warning, "", fmt.Sprintf("failed to get plugin info for language plugin %s: %v", runtime, err), 0) + plugins = append(plugins, workspace.PluginSpec{ + Name: runtime, + Kind: apitype.LanguagePlugin, + }) + } else { + plugins = append(plugins, workspace.PluginSpec{ + Name: langInfo.Name, + Kind: langInfo.Kind, + Version: langInfo.Version, + }) } - plugins = append(plugins, workspace.PluginSpec{ - Name: runtime, - Kind: apitype.LanguagePlugin, - }) if kinds&ResourcePlugins != 0 { // Use the language plugin to compute this project's set of plugin dependencies. @@ -627,7 +653,7 @@ func GetRequiredPlugins( // later than we do (right now, we do it up front, but at that point we don't know the version). deps, err := lang.GetRequiredPlugins(info) if err != nil { - return nil, errors.Wrapf(err, "failed to discover plugin requirements") + return nil, fmt.Errorf("failed to discover plugin requirements: %w", err) } plugins = append(plugins, deps...) } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host_server.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host_server.go index 811f0231e..ceb020c09 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host_server.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/host_server.go @@ -18,7 +18,6 @@ import ( "fmt" "sync/atomic" - "github.com/pkg/errors" "golang.org/x/net/context" "google.golang.org/grpc" "google.golang.org/protobuf/types/known/emptypb" @@ -99,7 +98,7 @@ func (eng *hostServer) Log(ctx context.Context, req *pulumirpc.LogRequest) (*emp case pulumirpc.LogSeverity_ERROR: sev = diag.Error default: - return nil, errors.Errorf("Unrecognized logging severity: %v", req.Severity) + return nil, fmt.Errorf("Unrecognized logging severity: %v", req.Severity) } if req.Ephemeral { @@ -129,3 +128,23 @@ func (eng *hostServer) SetRootResource(ctx context.Context, eng.rootUrn.Store(req.GetUrn()) return &response, nil } + +func (eng *hostServer) StartDebugging(ctx context.Context, + req *pulumirpc.StartDebuggingRequest, +) (*emptypb.Empty, error) { + // fire an engine event to start the debugger + info := DebuggingInfo{ + Config: req.Config.AsMap(), + } + // log a status message + eng.host.LogStatus( + diag.Info, resource.URN(""), + fmt.Sprintf("Waiting for debugger to attach (%v)...", req.GetMessage()), 0) + + err := eng.host.StartDebugging(info) + if err != nil { + return nil, err + } + + return &emptypb.Empty{}, nil +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime.go index 408c960e6..24ff8e869 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime.go @@ -102,6 +102,15 @@ func (info ProgramInfo) Marshal() (*pulumirpc.ProgramInfo, error) { }, nil } +type InstallDependenciesRequest struct { + Info ProgramInfo + UseLanguageVersionTools bool +} + +func (options InstallDependenciesRequest) String() string { + return fmt.Sprintf("Info=[%s], UseLanguageVersionTools=%t", options.Info, options.UseLanguageVersionTools) +} + // LanguageRuntime is a convenient interface for interacting with language runtime plugins. These tend to be // dynamically loaded as plugins, although this interface hides this fact from the calling code. type LanguageRuntime interface { @@ -121,7 +130,7 @@ type LanguageRuntime interface { GetPluginInfo() (workspace.PluginInfo, error) // InstallDependencies will install dependencies for the project, e.g. by running `npm install` for nodejs projects. - InstallDependencies(info ProgramInfo) error + InstallDependencies(request InstallDependenciesRequest) error // RuntimeOptions returns additional options that can be set for the runtime. RuntimeOptionsPrompts(info ProgramInfo) ([]RuntimeOptionPrompt, error) @@ -144,6 +153,7 @@ type LanguageRuntime interface { GeneratePackage( directory string, schema string, extraFiles map[string][]byte, loaderTarget string, localDependencies map[string]string, + local bool, ) (hcl.Diagnostics, error) // GenerateProgram is similar to GenerateProject but doesn't include any metadata files, just the program @@ -191,8 +201,10 @@ type RunInfo struct { ConfigPropertyMap resource.PropertyMap // the configuration as a property map. DryRun bool // true if we are performing a dry-run (preview). QueryMode bool // true if we're only doing a query. - Parallel int // the degree of parallelism for resource operations (<=1 for serial). + Parallel int32 // the degree of parallelism for resource operations (<=1 for serial). Organization string // the organization name housing the program being run (might be empty). + LoaderAddress string // the RPC address of the host's schema loader. + AttachDebugger bool // true if we are starting the program under a debugger. } type RuntimeOptionType int diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime_plugin.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime_plugin.go index aa6784b92..e19e9bce9 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime_plugin.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/langruntime_plugin.go @@ -24,7 +24,6 @@ import ( "github.com/blang/semver" "github.com/hashicorp/hcl/v2" - "github.com/pkg/errors" "google.golang.org/grpc" "google.golang.org/grpc/codes" "google.golang.org/grpc/credentials/insecure" @@ -168,12 +167,12 @@ func (h *langhost) GetRequiredPlugins(info ProgramInfo) ([]workspace.PluginSpec, if v := info.GetVersion(); v != "" { sv, err := semver.ParseTolerant(v) if err != nil { - return nil, errors.Wrapf(err, "illegal semver returned by language host: %s@%s", info.GetName(), v) + return nil, fmt.Errorf("illegal semver returned by language host: %s@%s: %w", info.GetName(), v, err) } version = &sv } if !apitype.IsPluginKind(info.Kind) { - return nil, errors.Errorf("unrecognized plugin kind: %s", info.Kind) + return nil, fmt.Errorf("unrecognized plugin kind: %s", info.Kind) } results = append(results, workspace.PluginSpec{ Name: info.Name, @@ -227,9 +226,11 @@ func (h *langhost) Run(info RunInfo) (string, bool, error) { ConfigPropertyMap: configPropertyMap, DryRun: info.DryRun, QueryMode: info.QueryMode, - Parallel: int32(info.Parallel), + Parallel: info.Parallel, Organization: info.Organization, Info: minfo, + LoaderTarget: info.LoaderAddress, + AttachDebugger: info.AttachDebugger, }) if err != nil { rpcError := rpcerror.Convert(err) @@ -254,7 +255,9 @@ func (h *langhost) GetPluginInfo() (workspace.PluginInfo, error) { Kind: apitype.LanguagePlugin, } - plugInfo.Path = h.plug.Bin + if h.plug != nil { + plugInfo.Path = h.plug.Bin + } resp, err := h.client.GetPluginInfo(h.ctx.Request(), &emptypb.Empty{}) if err != nil { @@ -283,24 +286,25 @@ func (h *langhost) Close() error { return nil } -func (h *langhost) InstallDependencies(info ProgramInfo) error { +func (h *langhost) InstallDependencies(request InstallDependenciesRequest) error { logging.V(7).Infof("langhost[%v].InstallDependencies(%s) executing", - h.runtime, info) + h.runtime, request) - minfo, err := info.Marshal() + minfo, err := request.Info.Marshal() if err != nil { return err } resp, err := h.client.InstallDependencies(h.ctx.Request(), &pulumirpc.InstallDependenciesRequest{ - Directory: info.ProgramDirectory(), - IsTerminal: cmdutil.GetGlobalColorization() != colors.Never, - Info: minfo, + Directory: request.Info.ProgramDirectory(), + IsTerminal: cmdutil.GetGlobalColorization() != colors.Never, + Info: minfo, + UseLanguageVersionTools: request.UseLanguageVersionTools, }) if err != nil { rpcError := rpcerror.Convert(err) logging.V(7).Infof("langhost[%v].InstallDependencies(%s) failed: err=%v", - h.runtime, info, rpcError) + h.runtime, request, rpcError) // It's possible this is just an older language host, prior to the emergence of the InstallDependencies // method. In such cases, we will silently error (with the above log left behind). @@ -319,7 +323,7 @@ func (h *langhost) InstallDependencies(info ProgramInfo) error { } rpcError := rpcerror.Convert(err) logging.V(7).Infof("langhost[%v].InstallDependencies(%s) failed: err=%v", - h.runtime, info, rpcError) + h.runtime, request, rpcError) return rpcError } @@ -333,7 +337,7 @@ func (h *langhost) InstallDependencies(info ProgramInfo) error { } logging.V(7).Infof("langhost[%v].InstallDependencies(%s) success", - h.runtime, info) + h.runtime, request) return nil } @@ -519,6 +523,7 @@ func (h *langhost) GenerateProject( func (h *langhost) GeneratePackage( directory string, schema string, extraFiles map[string][]byte, loaderTarget string, localDependencies map[string]string, + local bool, ) (hcl.Diagnostics, error) { logging.V(7).Infof("langhost[%v].GeneratePackage() executing", h.runtime) resp, err := h.client.GeneratePackage(h.ctx.Request(), &pulumirpc.GeneratePackageRequest{ @@ -527,6 +532,7 @@ func (h *langhost) GeneratePackage( ExtraFiles: extraFiles, LoaderTarget: loaderTarget, LocalDependencies: localDependencies, + Local: local, }) if err != nil { rpcError := rpcerror.Convert(err) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/mock.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/mock.go new file mode 100644 index 000000000..7be17e141 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/mock.go @@ -0,0 +1,327 @@ +// Copyright 2016-2018, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package plugin + +import ( + "context" + + "github.com/blang/semver" + "github.com/pkg/errors" + "github.com/pulumi/pulumi/sdk/v3/go/common/apitype" + "github.com/pulumi/pulumi/sdk/v3/go/common/diag" + "github.com/pulumi/pulumi/sdk/v3/go/common/resource" + "github.com/pulumi/pulumi/sdk/v3/go/common/tokens" + "github.com/pulumi/pulumi/sdk/v3/go/common/workspace" +) + +type MockHost struct { + ServerAddrF func() string + LogF func(sev diag.Severity, urn resource.URN, msg string, streamID int32) + LogStatusF func(sev diag.Severity, urn resource.URN, msg string, streamID int32) + AnalyzerF func(nm tokens.QName) (Analyzer, error) + PolicyAnalyzerF func(name tokens.QName, path string, opts *PolicyAnalyzerOptions) (Analyzer, error) + ListAnalyzersF func() []Analyzer + ProviderF func(descriptor workspace.PackageDescriptor) (Provider, error) + CloseProviderF func(provider Provider) error + LanguageRuntimeF func(runtime string, info ProgramInfo) (LanguageRuntime, error) + EnsurePluginsF func(plugins []workspace.PluginSpec, kinds Flags) error + ResolvePluginF func(kind apitype.PluginKind, name string, version *semver.Version) (*workspace.PluginInfo, error) + GetProjectPluginsF func() []workspace.ProjectPlugin + SignalCancellationF func() error + CloseF func() error + StartDebuggingF func(DebuggingInfo) error +} + +var _ Host = (*MockHost)(nil) + +func (m *MockHost) ServerAddr() string { + if m.ServerAddrF != nil { + return m.ServerAddrF() + } + return "" +} + +func (m *MockHost) Log(sev diag.Severity, urn resource.URN, msg string, streamID int32) { + if m.LogF != nil { + m.LogF(sev, urn, msg, streamID) + } +} + +func (m *MockHost) LogStatus(sev diag.Severity, urn resource.URN, msg string, streamID int32) { + if m.LogStatusF != nil { + m.LogStatusF(sev, urn, msg, streamID) + } +} + +func (m *MockHost) Analyzer(nm tokens.QName) (Analyzer, error) { + if m.AnalyzerF != nil { + return m.AnalyzerF(nm) + } + return nil, errors.New("Analyzer not implemented") +} + +func (m *MockHost) PolicyAnalyzer(name tokens.QName, path string, opts *PolicyAnalyzerOptions) (Analyzer, error) { + if m.PolicyAnalyzerF != nil { + return m.PolicyAnalyzerF(name, path, opts) + } + return nil, errors.New("PolicyAnalyzer not implemented") +} + +func (m *MockHost) ListAnalyzers() []Analyzer { + if m.ListAnalyzersF != nil { + return m.ListAnalyzersF() + } + return nil +} + +func (m *MockHost) Provider(descriptor workspace.PackageDescriptor) (Provider, error) { + if m.ProviderF != nil { + return m.ProviderF(descriptor) + } + return nil, errors.New("Provider not implemented") +} + +func (m *MockHost) CloseProvider(provider Provider) error { + if m.CloseProviderF != nil { + return m.CloseProviderF(provider) + } + return nil +} + +func (m *MockHost) LanguageRuntime(runtime string, info ProgramInfo) (LanguageRuntime, error) { + if m.LanguageRuntimeF != nil { + return m.LanguageRuntimeF(runtime, info) + } + return nil, errors.New("LanguageRuntime not implemented") +} + +func (m *MockHost) EnsurePlugins(plugins []workspace.PluginSpec, kinds Flags) error { + if m.EnsurePluginsF != nil { + return m.EnsurePluginsF(plugins, kinds) + } + return nil +} + +func (m *MockHost) ResolvePlugin( + kind apitype.PluginKind, name string, version *semver.Version, +) (*workspace.PluginInfo, error) { + if m.ResolvePluginF != nil { + return m.ResolvePluginF(kind, name, version) + } + return nil, errors.New("ResolvePlugin not implemented") +} + +func (m *MockHost) GetProjectPlugins() []workspace.ProjectPlugin { + if m.GetProjectPluginsF != nil { + return m.GetProjectPluginsF() + } + return nil +} + +func (m *MockHost) SignalCancellation() error { + if m.SignalCancellationF != nil { + return m.SignalCancellationF() + } + return nil +} + +func (m *MockHost) Close() error { + if m.CloseF != nil { + return m.CloseF() + } + return nil +} + +func (m *MockHost) StartDebugging(info DebuggingInfo) error { + if m.StartDebuggingF != nil { + return m.StartDebuggingF(info) + } + return nil +} + +type MockProvider struct { + NotForwardCompatibleProvider + + CloseF func() error + PkgF func() tokens.Package + ParameterizeF func(context.Context, ParameterizeRequest) (ParameterizeResponse, error) + GetSchemaF func(context.Context, GetSchemaRequest) (GetSchemaResponse, error) + CheckConfigF func(context.Context, CheckConfigRequest) (CheckConfigResponse, error) + DiffConfigF func(context.Context, DiffConfigRequest) (DiffConfigResponse, error) + ConfigureF func(context.Context, ConfigureRequest) (ConfigureResponse, error) + CheckF func(context.Context, CheckRequest) (CheckResponse, error) + DiffF func(context.Context, DiffRequest) (DiffResponse, error) + CreateF func(context.Context, CreateRequest) (CreateResponse, error) + ReadF func(context.Context, ReadRequest) (ReadResponse, error) + UpdateF func(context.Context, UpdateRequest) (UpdateResponse, error) + DeleteF func(context.Context, DeleteRequest) (DeleteResponse, error) + ConstructF func(context.Context, ConstructRequest) (ConstructResponse, error) + InvokeF func(context.Context, InvokeRequest) (InvokeResponse, error) + StreamInvokeF func(context.Context, StreamInvokeRequest) (StreamInvokeResponse, error) + CallF func(context.Context, CallRequest) (CallResponse, error) + GetPluginInfoF func(context.Context) (workspace.PluginInfo, error) + SignalCancellationF func(context.Context) error + GetMappingF func(context.Context, GetMappingRequest) (GetMappingResponse, error) + GetMappingsF func(context.Context, GetMappingsRequest) (GetMappingsResponse, error) +} + +var _ Provider = (*MockProvider)(nil) + +func (m *MockProvider) Close() error { + if m.CloseF != nil { + return m.CloseF() + } + return nil +} + +func (m *MockProvider) Pkg() tokens.Package { + if m.PkgF != nil { + return m.PkgF() + } + return "" +} + +func (m *MockProvider) Parameterize(ctx context.Context, req ParameterizeRequest) (ParameterizeResponse, error) { + if m.ParameterizeF != nil { + return m.ParameterizeF(ctx, req) + } + return ParameterizeResponse{}, errors.New("Parameterize not implemented") +} + +func (m *MockProvider) GetSchema(ctx context.Context, req GetSchemaRequest) (GetSchemaResponse, error) { + if m.GetSchemaF != nil { + return m.GetSchemaF(ctx, req) + } + return GetSchemaResponse{}, errors.New("GetSchema not implemented") +} + +func (m *MockProvider) CheckConfig(ctx context.Context, req CheckConfigRequest) (CheckConfigResponse, error) { + if m.CheckConfigF != nil { + return m.CheckConfigF(ctx, req) + } + return CheckConfigResponse{}, errors.New("CheckConfig not implemented") +} + +func (m *MockProvider) DiffConfig(ctx context.Context, req DiffConfigRequest) (DiffConfigResponse, error) { + if m.DiffConfigF != nil { + return m.DiffConfigF(ctx, req) + } + return DiffConfigResponse{}, errors.New("DiffConfig not implemented") +} + +func (m *MockProvider) Configure(ctx context.Context, req ConfigureRequest) (ConfigureResponse, error) { + if m.ConfigureF != nil { + return m.ConfigureF(ctx, req) + } + return ConfigureResponse{}, errors.New("Configure not implemented") +} + +func (m *MockProvider) Check(ctx context.Context, req CheckRequest) (CheckResponse, error) { + if m.CheckF != nil { + return m.CheckF(ctx, req) + } + return CheckResponse{}, errors.New("Check not implemented") +} + +func (m *MockProvider) Diff(ctx context.Context, req DiffRequest) (DiffResponse, error) { + if m.DiffF != nil { + return m.DiffF(ctx, req) + } + return DiffResponse{}, errors.New("Diff not implemented") +} + +func (m *MockProvider) Create(ctx context.Context, req CreateRequest) (CreateResponse, error) { + if m.CreateF != nil { + return m.CreateF(ctx, req) + } + return CreateResponse{}, errors.New("Create not implemented") +} + +func (m *MockProvider) Read(ctx context.Context, req ReadRequest) (ReadResponse, error) { + if m.ReadF != nil { + return m.ReadF(ctx, req) + } + return ReadResponse{}, errors.New("Read not implemented") +} + +func (m *MockProvider) Update(ctx context.Context, req UpdateRequest) (UpdateResponse, error) { + if m.UpdateF != nil { + return m.UpdateF(ctx, req) + } + return UpdateResponse{}, errors.New("Update not implemented") +} + +func (m *MockProvider) Delete(ctx context.Context, req DeleteRequest) (DeleteResponse, error) { + if m.DeleteF != nil { + return m.DeleteF(ctx, req) + } + return DeleteResponse{}, errors.New("Delete not implemented") +} + +func (m *MockProvider) Construct(ctx context.Context, req ConstructRequest) (ConstructResponse, error) { + if m.ConstructF != nil { + return m.ConstructF(ctx, req) + } + return ConstructResponse{}, errors.New("Construct not implemented") +} + +func (m *MockProvider) Invoke(ctx context.Context, req InvokeRequest) (InvokeResponse, error) { + if m.InvokeF != nil { + return m.InvokeF(ctx, req) + } + return InvokeResponse{}, errors.New("Invoke not implemented") +} + +func (m *MockProvider) StreamInvoke(ctx context.Context, req StreamInvokeRequest) (StreamInvokeResponse, error) { + if m.StreamInvokeF != nil { + return m.StreamInvokeF(ctx, req) + } + return StreamInvokeResponse{}, errors.New("StreamInvoke not implemented") +} + +func (m *MockProvider) Call(ctx context.Context, req CallRequest) (CallResponse, error) { + if m.CallF != nil { + return m.CallF(ctx, req) + } + return CallResponse{}, errors.New("Call not implemented") +} + +func (m *MockProvider) GetPluginInfo(ctx context.Context) (workspace.PluginInfo, error) { + if m.GetPluginInfoF != nil { + return m.GetPluginInfoF(ctx) + } + return workspace.PluginInfo{}, errors.New("GetPluginInfo not implemented") +} + +func (m *MockProvider) SignalCancellation(ctx context.Context) error { + if m.SignalCancellationF != nil { + return m.SignalCancellationF(ctx) + } + return nil +} + +func (m *MockProvider) GetMapping(ctx context.Context, req GetMappingRequest) (GetMappingResponse, error) { + if m.GetMappingF != nil { + return m.GetMappingF(ctx, req) + } + return GetMappingResponse{}, errors.New("GetMapping not implemented") +} + +func (m *MockProvider) GetMappings(ctx context.Context, req GetMappingsRequest) (GetMappingsResponse, error) { + if m.GetMappingsF != nil { + return m.GetMappingsF(ctx, req) + } + return GetMappingsResponse{}, errors.New("GetMappings not implemented") +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider.go index c9fe98da8..6a7dcfdc8 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider.go @@ -29,7 +29,7 @@ import ( type GetSchemaRequest struct { // Version is the version of the schema to return. If omitted, the latest version of the schema should be returned. - Version int + Version int32 // Subpackage name to get the schema for. SubpackageName string // Subpackage version to get the schema for. @@ -70,6 +70,8 @@ type GetSchemaResponse struct { type CheckConfigRequest struct { URN resource.URN + Name string + Type tokens.Type Olds, News resource.PropertyMap AllowUnknowns bool } @@ -81,6 +83,8 @@ type CheckConfigResponse struct { type DiffConfigRequest struct { URN resource.URN + Name string + Type tokens.Type OldInputs, OldOutputs, NewInputs resource.PropertyMap AllowUnknowns bool IgnoreChanges []string @@ -95,7 +99,9 @@ type ConfigureRequest struct { type ConfigureResponse struct{} type CheckRequest struct { - URN resource.URN + URN resource.URN + Name string + Type tokens.Type // TODO Change to (State, Input) Olds, News resource.PropertyMap AllowUnknowns bool @@ -108,8 +114,10 @@ type CheckResponse struct { } type DiffRequest struct { - URN resource.URN - ID resource.ID + URN resource.URN + Name string + Type tokens.Type + ID resource.ID // TODO Change to (OldInputs, OldState, NewInputs) OldInputs, OldOutputs, NewInputs resource.PropertyMap AllowUnknowns bool @@ -120,6 +128,8 @@ type DiffResponse = DiffResult type CreateRequest struct { URN resource.URN + Name string + Type tokens.Type Properties resource.PropertyMap Timeout float64 Preview bool @@ -133,6 +143,8 @@ type CreateResponse struct { type ReadRequest struct { URN resource.URN + Name string + Type tokens.Type ID resource.ID Inputs, State resource.PropertyMap } @@ -144,6 +156,8 @@ type ReadResponse struct { type UpdateRequest struct { URN resource.URN + Name string + Type tokens.Type ID resource.ID OldInputs, OldOutputs, NewInputs resource.PropertyMap Timeout float64 @@ -158,6 +172,8 @@ type UpdateResponse struct { type DeleteRequest struct { URN resource.URN + Name string + Type tokens.Type ID resource.ID Inputs, Outputs resource.PropertyMap Timeout float64 @@ -606,7 +622,7 @@ type ConstructInfo struct { Config map[config.Key]string // the configuration variables to apply before running. ConfigSecretKeys []config.Key // the configuration keys that have secret values. DryRun bool // true if we are performing a dry-run (preview). - Parallel int // the degree of parallelism for resource operations (<=1 for serial). + Parallel int32 // the degree of parallelism for resource operations (<=1 for serial). MonitorAddress string // the RPC address to the host resource monitor. } @@ -679,7 +695,7 @@ type CallInfo struct { Stack string // the stack name being evaluated. Config map[config.Key]string // the configuration variables to apply before running. DryRun bool // true if we are performing a dry-run (preview). - Parallel int // the degree of parallelism for resource operations (<=1 for serial). + Parallel int32 // the degree of parallelism for resource operations (<=1 for serial). MonitorAddress string // the RPC address to the host resource monitor. } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_plugin.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_plugin.go index fb261ec9e..366300c8d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_plugin.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_plugin.go @@ -346,7 +346,7 @@ func (p *provider) GetSchema(ctx context.Context, req GetSchemaRequest) (GetSche } resp, err := p.clientRaw.GetSchema(p.requestContext(), &pulumirpc.GetSchemaRequest{ - Version: int32(req.Version), + Version: req.Version, SubpackageName: req.SubpackageName, SubpackageVersion: subpackageVersion, }) @@ -358,6 +358,12 @@ func (p *provider) GetSchema(ctx context.Context, req GetSchemaRequest) (GetSche // CheckConfig validates the configuration for this resource provider. func (p *provider) CheckConfig(ctx context.Context, req CheckConfigRequest) (CheckConfigResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + label := fmt.Sprintf("%s.CheckConfig(%s)", p.label(), req.URN) logging.V(7).Infof("%s executing (#olds=%d,#news=%d)", label, len(req.Olds), len(req.News)) @@ -379,6 +385,8 @@ func (p *provider) CheckConfig(ctx context.Context, req CheckConfigRequest) (Che resp, err := p.clientRaw.CheckConfig(p.requestContext(), &pulumirpc.CheckRequest{ Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), Olds: molds, News: mnews, }) @@ -458,6 +466,12 @@ func decodeDetailedDiff(resp *pulumirpc.DiffResponse) map[string]PropertyDiff { // DiffConfig checks what impacts a hypothetical change to this provider's configuration will have on the provider. func (p *provider) DiffConfig(ctx context.Context, req DiffConfigRequest) (DiffConfigResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + label := fmt.Sprintf("%s.DiffConfig(%s)", p.label(), req.URN) logging.V(7).Infof("%s: executing (#oldInputs=%d#oldOutputs=%d,#newInputs=%d)", label, len(req.OldInputs), len(req.OldOutputs), len(req.NewInputs)) @@ -488,6 +502,8 @@ func (p *provider) DiffConfig(ctx context.Context, req DiffConfigRequest) (DiffC resp, err := p.clientRaw.DiffConfig(p.requestContext(), &pulumirpc.DiffRequest{ Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), OldInputs: mOldInputs, Olds: mOldOutputs, News: mNewInputs, @@ -790,6 +806,12 @@ func (p *provider) Configure(ctx context.Context, req ConfigureRequest) (Configu // Check validates that the given property bag is valid for a resource of the given type. func (p *provider) Check(ctx context.Context, req CheckRequest) (CheckResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + label := fmt.Sprintf("%s.Check(%s)", p.label(), req.URN) logging.V(7).Infof("%s executing (#olds=%d,#news=%d)", label, len(req.Olds), len(req.News)) @@ -827,6 +849,8 @@ func (p *provider) Check(ctx context.Context, req CheckRequest) (CheckResponse, resp, err := client.Check(p.requestContext(), &pulumirpc.CheckRequest{ Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), Olds: molds, News: mnews, RandomSeed: req.RandomSeed, @@ -871,6 +895,12 @@ func (p *provider) Check(ctx context.Context, req CheckRequest) (CheckResponse, // Diff checks what impacts a hypothetical update will have on the resource's properties. func (p *provider) Diff(ctx context.Context, req DiffRequest) (DiffResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + contract.Assertf(req.URN != "", "Diff requires a URN") contract.Assertf(req.ID != "", "Diff requires an ID") contract.Assertf(req.OldInputs != nil, "Diff requires old input properties") @@ -934,6 +964,8 @@ func (p *provider) Diff(ctx context.Context, req DiffRequest) (DiffResponse, err resp, err := client.Diff(p.requestContext(), &pulumirpc.DiffRequest{ Id: string(req.ID), Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), OldInputs: mOldInputs, Olds: mOldOutputs, News: mNewInputs, @@ -976,6 +1008,12 @@ func (p *provider) Diff(ctx context.Context, req DiffRequest) (DiffResponse, err // Create allocates a new instance of the provided resource and assigns its unique resource.ID and outputs afterwards. func (p *provider) Create(ctx context.Context, req CreateRequest) (CreateResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + contract.Assertf(req.URN != "", "Create requires a URN") contract.Assertf(req.Properties != nil, "Create requires properties") @@ -1031,6 +1069,8 @@ func (p *provider) Create(ctx context.Context, req CreateRequest) (CreateRespons resourceStatus := resource.StatusOK resp, err := client.Create(p.requestContext(), &pulumirpc.CreateRequest{ Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), Properties: mprops, Timeout: req.Timeout, Preview: req.Preview, @@ -1082,6 +1122,12 @@ func (p *provider) Create(ctx context.Context, req CreateRequest) (CreateRespons // read the current live state associated with a resource. enough state must be include in the inputs to uniquely // identify the resource; this is typically just the resource id, but may also include some properties. func (p *provider) Read(ctx context.Context, req ReadRequest) (ReadResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + contract.Assertf(req.URN != "", "Read URN was empty") contract.Assertf(req.ID != "", "Read ID was empty") @@ -1136,6 +1182,8 @@ func (p *provider) Read(ctx context.Context, req ReadRequest) (ReadResponse, err resp, err := client.Read(p.requestContext(), &pulumirpc.ReadRequest{ Id: string(req.ID), Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), Properties: mstate, Inputs: minputs, }) @@ -1204,6 +1252,12 @@ func (p *provider) Read(ctx context.Context, req ReadRequest) (ReadResponse, err // Update updates an existing resource with new values. func (p *provider) Update(ctx context.Context, req UpdateRequest) (UpdateResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + contract.Assertf(req.URN != "", "Update requires a URN") contract.Assertf(req.ID != "", "Update requires an ID") contract.Assertf(req.OldInputs != nil, "Update requires old inputs") @@ -1281,6 +1335,8 @@ func (p *provider) Update(ctx context.Context, req UpdateRequest) (UpdateRespons resp, err := client.Update(p.requestContext(), &pulumirpc.UpdateRequest{ Id: string(req.ID), Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), Olds: mOldOutputs, News: mNewInputs, Timeout: req.Timeout, @@ -1324,6 +1380,12 @@ func (p *provider) Update(ctx context.Context, req UpdateRequest) (UpdateRespons // Delete tears down an existing resource. func (p *provider) Delete(ctx context.Context, req DeleteRequest) (DeleteResponse, error) { + // We either leave Name&Type empty and fill them in from the URN, or they must match the URN. + contract.Assertf(req.Name == "" || req.Name == req.URN.Name(), + "req.Name (%s) != req.URN.Name() (%s)", req.Name, req.URN.Name()) + contract.Assertf(req.Type == "" || req.Type == req.URN.Type(), + "req.Type (%s) != req.URN.Type() (%s)", req.Type, req.URN.Type()) + contract.Assertf(req.URN != "", "Delete requires a URN") contract.Assertf(req.ID != "", "Delete requires an ID") @@ -1366,6 +1428,8 @@ func (p *provider) Delete(ctx context.Context, req DeleteRequest) (DeleteRespons if _, err := client.Delete(p.requestContext(), &pulumirpc.DeleteRequest{ Id: string(req.ID), Urn: string(req.URN), + Name: req.URN.Name(), + Type: req.URN.Type().String(), Properties: moutputs, Timeout: req.Timeout, OldInputs: minputs, @@ -1396,10 +1460,30 @@ func (p *provider) Construct(ctx context.Context, req ConstructRequest) (Constru return ConstructResult{}, err } - // If the provider is not fully configured, we need to error. We can't support unknown URNs but if the - // provider isn't configured we can't call into it to get the URN. + // If the provider is not fully configured. Pretend we are the provider and call RegisterResource to get the URN. if !pcfg.known { - return ConstructResult{}, errors.New("cannot construct components if the provider is configured with unknown values") + // Connect to the resource monitor and create an appropriate client. + conn, err := grpc.Dial( + req.Info.MonitorAddress, + grpc.WithTransportCredentials(insecure.NewCredentials()), + rpcutil.GrpcChannelOptions(), + ) + if err != nil { + return ConstructResult{}, fmt.Errorf("could not connect to resource monitor: %w", err) + } + resmon := pulumirpc.NewResourceMonitorClient(conn) + resp, err := resmon.RegisterResource(ctx, &pulumirpc.RegisterResourceRequest{ + Type: string(req.Type), + Name: req.Name, + Parent: string(req.Parent), + }) + if err != nil { + return ConstructResult{}, err + } + return ConstructResult{ + URN: resource.URN(resp.GetUrn()), + }, nil + } if !pcfg.acceptSecrets { @@ -1458,7 +1542,7 @@ func (p *provider) Construct(ctx context.Context, req ConstructRequest) (Constru Config: config, ConfigSecretKeys: configSecretKeys, DryRun: req.Info.DryRun, - Parallel: int32(req.Info.Parallel), + Parallel: req.Info.Parallel, MonitorEndpoint: req.Info.MonitorAddress, Type: string(req.Type), Name: req.Name, @@ -1712,7 +1796,7 @@ func (p *provider) Call(_ context.Context, req CallRequest) (CallResponse, error Stack: req.Info.Stack, Config: config, DryRun: req.Info.DryRun, - Parallel: int32(req.Info.Parallel), + Parallel: req.Info.Parallel, MonitorEndpoint: req.Info.MonitorAddress, AcceptsOutputValues: true, }) @@ -1924,6 +2008,9 @@ func (ie *InitError) Error() string { for _, reason := range ie.Reasons { err = multierror.Append(err, errors.New(reason)) } + if err == nil { + return "resource init failed" + } return err.Error() } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_server.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_server.go index efb8767f0..567f12037 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_server.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/provider_server.go @@ -171,7 +171,7 @@ func (p *providerServer) GetSchema(ctx context.Context, } schema, err := p.provider.GetSchema(ctx, GetSchemaRequest{ - Version: int(req.Version), + Version: req.Version, SubpackageName: req.SubpackageName, SubpackageVersion: subpackageVersion, }) @@ -215,6 +215,20 @@ func (p *providerServer) CheckConfig(ctx context.Context, ) (*pulumirpc.CheckResponse, error) { urn := resource.URN(req.GetUrn()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + state, err := UnmarshalProperties(req.GetOlds(), p.unmarshalOptions("olds", false /* keepOutputValues */)) if err != nil { return nil, err @@ -227,6 +241,8 @@ func (p *providerServer) CheckConfig(ctx context.Context, resp, err := p.provider.CheckConfig(ctx, CheckConfigRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), Olds: state, News: inputs, AllowUnknowns: true, @@ -251,6 +267,20 @@ func (p *providerServer) CheckConfig(ctx context.Context, func (p *providerServer) DiffConfig(ctx context.Context, req *pulumirpc.DiffRequest) (*pulumirpc.DiffResponse, error) { urn := resource.URN(req.GetUrn()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + oldInputs, err := UnmarshalProperties( req.GetOldInputs(), p.unmarshalOptions("oldInputs", false /* keepOutputValues */)) if err != nil { @@ -271,6 +301,8 @@ func (p *providerServer) DiffConfig(ctx context.Context, req *pulumirpc.DiffRequ diff, err := p.provider.DiffConfig(ctx, DiffConfigRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), OldInputs: oldInputs, OldOutputs: oldOutputs, NewInputs: newInputs, @@ -325,6 +357,20 @@ func (p *providerServer) Configure(ctx context.Context, func (p *providerServer) Check(ctx context.Context, req *pulumirpc.CheckRequest) (*pulumirpc.CheckResponse, error) { urn := resource.URN(req.GetUrn()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + state, err := UnmarshalProperties(req.GetOlds(), p.unmarshalOptions("state", false /* keepOutputValues */)) if err != nil { return nil, err @@ -337,6 +383,8 @@ func (p *providerServer) Check(ctx context.Context, req *pulumirpc.CheckRequest) resp, err := p.provider.Check(ctx, CheckRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), Olds: state, News: inputs, AllowUnknowns: true, @@ -362,6 +410,20 @@ func (p *providerServer) Check(ctx context.Context, req *pulumirpc.CheckRequest) func (p *providerServer) Diff(ctx context.Context, req *pulumirpc.DiffRequest) (*pulumirpc.DiffResponse, error) { urn, id := resource.URN(req.GetUrn()), resource.ID(req.GetId()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + oldInputs, err := UnmarshalProperties( req.GetOldInputs(), p.unmarshalOptions("oldInputs", false /* keepOutputValues */)) if err != nil { @@ -382,6 +444,8 @@ func (p *providerServer) Diff(ctx context.Context, req *pulumirpc.DiffRequest) ( diff, err := p.provider.Diff(ctx, DiffRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), ID: id, OldInputs: oldInputs, OldOutputs: oldOutputs, @@ -398,6 +462,20 @@ func (p *providerServer) Diff(ctx context.Context, req *pulumirpc.DiffRequest) ( func (p *providerServer) Create(ctx context.Context, req *pulumirpc.CreateRequest) (*pulumirpc.CreateResponse, error) { urn := resource.URN(req.GetUrn()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + inputs, err := UnmarshalProperties(req.GetProperties(), p.unmarshalOptions("inputs", false /* keepOutputValues */)) if err != nil { return nil, err @@ -405,6 +483,8 @@ func (p *providerServer) Create(ctx context.Context, req *pulumirpc.CreateReques resp, err := p.provider.Create(ctx, CreateRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), Properties: inputs, Timeout: req.GetTimeout(), Preview: req.GetPreview(), @@ -427,6 +507,20 @@ func (p *providerServer) Create(ctx context.Context, req *pulumirpc.CreateReques func (p *providerServer) Read(ctx context.Context, req *pulumirpc.ReadRequest) (*pulumirpc.ReadResponse, error) { urn, requestID := resource.URN(req.GetUrn()), resource.ID(req.GetId()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + state, err := UnmarshalProperties(req.GetProperties(), p.unmarshalOptions("state", false /* keepOutputValues */)) if err != nil { return nil, err @@ -439,6 +533,8 @@ func (p *providerServer) Read(ctx context.Context, req *pulumirpc.ReadRequest) ( resp, err := p.provider.Read(ctx, ReadRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), ID: requestID, Inputs: inputs, State: state, @@ -467,6 +563,20 @@ func (p *providerServer) Read(ctx context.Context, req *pulumirpc.ReadRequest) ( func (p *providerServer) Update(ctx context.Context, req *pulumirpc.UpdateRequest) (*pulumirpc.UpdateResponse, error) { urn, id := resource.URN(req.GetUrn()), resource.ID(req.GetId()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + oldOutputs, err := UnmarshalProperties( req.GetOlds(), p.unmarshalOptions("oldOutputs", false /* keepOutputValues */)) if err != nil { @@ -487,6 +597,8 @@ func (p *providerServer) Update(ctx context.Context, req *pulumirpc.UpdateReques resp, err := p.provider.Update(ctx, UpdateRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), ID: id, OldInputs: oldInputs, OldOutputs: oldOutputs, @@ -510,6 +622,20 @@ func (p *providerServer) Update(ctx context.Context, req *pulumirpc.UpdateReques func (p *providerServer) Delete(ctx context.Context, req *pulumirpc.DeleteRequest) (*emptypb.Empty, error) { urn, id := resource.URN(req.GetUrn()), resource.ID(req.GetId()) + // To support old engines fill in Name/Type if the engine didn't send them + if req.Name == "" { + req.Name = urn.Name() + } + if req.Name != urn.Name() { + return nil, status.Error(codes.InvalidArgument, "name in request does not match URN") + } + if req.Type == "" { + req.Type = string(urn.Type()) + } + if req.Type != string(urn.Type()) { + return nil, status.Error(codes.InvalidArgument, "type in request does not match URN") + } + inputs, err := UnmarshalProperties(req.GetOldInputs(), p.unmarshalOptions("inputs", false /* keepOutputValues */)) if err != nil { return nil, err @@ -522,6 +648,8 @@ func (p *providerServer) Delete(ctx context.Context, req *pulumirpc.DeleteReques if _, err = p.provider.Delete(ctx, DeleteRequest{ URN: urn, + Name: req.Name, + Type: tokens.Type(req.Type), ID: id, Inputs: inputs, Outputs: outputs, @@ -567,7 +695,7 @@ func (p *providerServer) Construct(ctx context.Context, Config: cfg, ConfigSecretKeys: cfgSecretKeys, DryRun: req.GetDryRun(), - Parallel: int(req.GetParallel()), + Parallel: req.GetParallel(), MonitorAddress: req.GetMonitorEndpoint(), } @@ -714,7 +842,7 @@ func (p *providerServer) Call(ctx context.Context, req *pulumirpc.CallRequest) ( Stack: req.GetStack(), Config: cfg, DryRun: req.GetDryRun(), - Parallel: int(req.GetParallel()), + Parallel: req.GetParallel(), MonitorAddress: req.GetMonitorEndpoint(), } argDependencies := map[resource.PropertyKey][]resource.URN{} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/rpc.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/rpc.go index 694dd2c4c..70c61a3de 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/rpc.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/plugin/rpc.go @@ -19,7 +19,6 @@ import ( "reflect" "sort" - "github.com/pkg/errors" "google.golang.org/protobuf/types/known/structpb" "github.com/pulumi/pulumi/sdk/v3/go/common/resource" @@ -381,11 +380,11 @@ func UnmarshalPropertyValue(key resource.PropertyKey, v *structpb.Value, if opts.ComputeAssetHashes { if opts.WorkingDirectory == "" { if err = asset.EnsureHash(); err != nil { - return nil, errors.Wrapf(err, "failed to compute asset hash for %q", key) + return nil, fmt.Errorf("failed to compute asset hash for %q: %w", key, err) } } else { if err = asset.EnsureHashWithWD(opts.WorkingDirectory); err != nil { - return nil, errors.Wrapf(err, "failed to compute asset hash for %q", key) + return nil, fmt.Errorf("failed to compute asset hash for %q: %w", key, err) } } } @@ -405,11 +404,11 @@ func UnmarshalPropertyValue(key resource.PropertyKey, v *structpb.Value, if opts.ComputeAssetHashes { if opts.WorkingDirectory == "" { if err = archive.EnsureHash(); err != nil { - return nil, errors.Wrapf(err, "failed to compute archive hash for %q", key) + return nil, fmt.Errorf("failed to compute archive hash for %q: %w", key, err) } } else { if err = archive.EnsureHashWithWD(opts.WorkingDirectory); err != nil { - return nil, errors.Wrapf(err, "failed to compute archive hash for %q", key) + return nil, fmt.Errorf("failed to compute archive hash for %q: %w", key, err) } } } @@ -627,11 +626,11 @@ func MarshalAsset(v *asset.Asset, opts MarshalOptions) (*structpb.Value, error) if v.Hash == "" && opts.ComputeAssetHashes { if opts.WorkingDirectory == "" { if err := v.EnsureHash(); err != nil { - return nil, errors.Wrapf(err, "failed to compute asset hash") + return nil, fmt.Errorf("failed to compute asset hash: %w", err) } } else { if err := v.EnsureHashWithWD(opts.WorkingDirectory); err != nil { - return nil, errors.Wrapf(err, "failed to compute asset hash") + return nil, fmt.Errorf("failed to compute asset hash: %w", err) } } } @@ -655,11 +654,11 @@ func MarshalArchive(v *archive.Archive, opts MarshalOptions) (*structpb.Value, e if v.Hash == "" && opts.ComputeAssetHashes { if opts.WorkingDirectory == "" { if err := v.EnsureHash(); err != nil { - return nil, errors.Wrapf(err, "failed to compute archive hash") + return nil, fmt.Errorf("failed to compute archive hash: %w", err) } } else { if err := v.EnsureHashWithWD(opts.WorkingDirectory); err != nil { - return nil, errors.Wrapf(err, "failed to compute archive hash") + return nil, fmt.Errorf("failed to compute archive hash: %w", err) } } } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties.go index c566b2c66..be09f74f5 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties.go @@ -340,6 +340,8 @@ func NewPropertyValueRepl(v interface{}, return NewProperty(t) case ResourceReference: return NewProperty(t) + case PropertyValue: + return t } // Next, see if it's an array, slice, pointer or struct, and handle each accordingly. diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties_path.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties_path.go index 65871ec2c..6c91090d4 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties_path.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/properties_path.go @@ -1,3 +1,17 @@ +// Copyright 2019-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package resource import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_id.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_id.go index 6e287d7ef..185431907 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_id.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_id.go @@ -17,7 +17,6 @@ package resource import ( "crypto" cryptorand "crypto/rand" - "encoding/binary" "encoding/hex" "fmt" @@ -90,46 +89,6 @@ func NewUniqueHexID(prefix string, randlen, maxlen int) (ID, error) { return ID(u), err } -// NewUniqueHexV2 generates a new "random" hex string for use by resource providers. It will take the optional prefix -// and append randLen random characters (defaulting to 8 if not > 0). The result must not exceed maxLen total -// characters (if > 0). Note that capping to maxLen necessarily increases the risk of collisions. -// The randomness for this method is a function of urn and sequenceNumber iff sequenceNUmber > 0, else it falls back to -// a non-deterministic source of randomness. -func NewUniqueHexV2(urn URN, sequenceNumber int, prefix string, randLen, maxLen int) (string, error) { - if randLen <= 0 { - randLen = 8 - } - if maxLen > 0 && len(prefix)+randLen > maxLen { - return "", fmt.Errorf( - "name '%s' plus %d random chars is longer than maximum length %d", prefix, randLen, maxLen) - } - - if sequenceNumber == 0 { - // No sequence number fallback to old logic - return NewUniqueHex(prefix, randLen, maxLen) - } - - if randLen > 32 { - return "", fmt.Errorf("randLen is longer than 32, %d", randLen) - } - - // TODO(seqnum) This is seeded by urn and sequence number, and urn has the stack and project names in it. - // But do we care about org name as well? - // Do we need a config source of randomness so if users hit a collision they can set a config value to get out of it? - hasher := crypto.SHA512.New() - - _, err := hasher.Write([]byte(urn)) - contract.AssertNoErrorf(err, "error hashing urn") - - err = binary.Write(hasher, binary.LittleEndian, uint32(sequenceNumber)) - contract.AssertNoErrorf(err, "error hashing sequence number") - - bs := hasher.Sum(nil) - contract.Assertf(len(bs) == 64, "expected 64 bytes from sha512, got %d", len(bs)) - - return prefix + hex.EncodeToString(bs)[:randLen], nil -} - // NewUniqueName generates a new "random" string primarily intended for use by resource providers for // autonames. It will take the optional prefix and append randlen random characters (defaulting to 8 if not > // 0). The result must not exceed maxlen total characters (if > 0). The characters that make up the random diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_state.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_state.go index 351975497..502422cdb 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_state.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/resource/resource_state.go @@ -1,4 +1,4 @@ -// Copyright 2016-2018, Pulumi Corporation. +// Copyright 2016-2024, Pulumi Corporation. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -148,3 +148,63 @@ func NewState(t tokens.Type, urn URN, custom bool, del bool, id ID, return s } + +// StateDependency objects are used when enumerating all the dependencies of a +// resource. They encapsulate the various types of dependency relationships that +// Pulumi resources may have with one another. +type StateDependency struct { + // The type of dependency. + Type StateDependencyType + // If the dependency is a property dependency, the property key that owns the + // dependency. + Key PropertyKey + // The URN of the resource that is being depended on. + URN URN +} + +// The type of dependencies that a resource may have. +type StateDependencyType string + +const ( + // ResourceParent is the type of parent-child dependency relationships. The + // resource being depended on is the parent of the dependent resource. + ResourceParent StateDependencyType = "parent" + // ResourceDependency is the type of dependency relationships where there is + // no specific property owning the dependency. + ResourceDependency StateDependencyType = "dependency" + // ResourcePropertyDependency is the type of dependency relationships where a + // specific property makes reference to another resource. + ResourcePropertyDependency StateDependencyType = "property-dependency" + // ResourceDeletedWith is the type of dependency relationships where a + // resource will be "deleted with" another. The resource being depended on is + // one whose deletion subsumes the deletion of the dependent resource. + ResourceDeletedWith StateDependencyType = "deleted-with" +) + +// GetAllDependencies returns a resource's provider and all of its dependencies. +// For use cases that rely on processing all possible links between sets of +// resources, this method (coupled with e.g. an exhaustive switch over the types +// of dependencies returned) should be preferred over direct access to e.g. +// Dependencies, PropertyDependencies, and so on. +func (s *State) GetAllDependencies() (string, []StateDependency) { + var allDeps []StateDependency + if s.Parent != "" { + allDeps = append(allDeps, StateDependency{Type: ResourceParent, URN: s.Parent}) + } + for _, dep := range s.Dependencies { + if dep != "" { + allDeps = append(allDeps, StateDependency{Type: ResourceDependency, URN: dep}) + } + } + for key, deps := range s.PropertyDependencies { + for _, dep := range deps { + if dep != "" { + allDeps = append(allDeps, StateDependency{Type: ResourcePropertyDependency, Key: key, URN: dep}) + } + } + } + if s.DeletedWith != "" { + allDeps = append(allDeps, StateDependency{Type: ResourceDeletedWith, URN: s.DeletedWith}) + } + return s.Provider, allDeps +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/archive/archive.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/archive/archive.go index 2dea33818..aec60555d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/archive/archive.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/archive/archive.go @@ -22,6 +22,7 @@ import ( "compress/gzip" "fmt" "io" + "math" "os" "path/filepath" "strings" @@ -86,6 +87,10 @@ func extractFile(r *tar.Reader, header *tar.Header, dir string) error { } // Expand files into the target directory. + if header.Mode > math.MaxUint32 { + return fmt.Errorf("unexpected file mode %v for %s", header.Mode, header.Name) + } + //nolint:gosec // int64 -> uint32 conversion guarded above dst, err := os.OpenFile(path, os.O_CREATE|os.O_RDWR, os.FileMode(header.Mode)) if err != nil { return fmt.Errorf("opening file %s for extraction: %w", path, err) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/args.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/args.go index ca7627572..44aebdb2f 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/args.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/args.go @@ -15,8 +15,9 @@ package cmdutil import ( + "fmt" + "github.com/hashicorp/go-multierror" - "github.com/pkg/errors" "github.com/pulumi/pulumi/sdk/v3/go/common/util/contract" "github.com/spf13/cobra" ) @@ -60,11 +61,11 @@ func ExactArgs(n int) cobra.PositionalArgs { func SpecificArgs(argNames []string) cobra.PositionalArgs { return ArgsFunc(func(cmd *cobra.Command, args []string) error { if len(args) > len(argNames) { - return errors.Errorf("too many arguments: got %d, expected %d", len(args), len(argNames)) + return fmt.Errorf("too many arguments: got %d, expected %d", len(args), len(argNames)) } else if len(args) < len(argNames) { var result error for i := len(args); i < len(argNames); i++ { - result = multierror.Append(result, errors.Errorf("missing required argument: %s", argNames[i])) + result = multierror.Append(result, fmt.Errorf("missing required argument: %s", argNames[i])) } return result } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console.go index 348eabffe..869dc0a75 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console.go @@ -62,12 +62,14 @@ func InteractiveTerminal() bool { // if we're piping in stdin, we're clearly not interactive, as there's no way for a user to // provide input. If we're piping stdout, we also can't be interactive as there's no way for // users to see prompts to interact with them. + //nolint:gosec // os.Stdin.Fd() == 0 && os.Stdout.Fd() == 1: uintptr -> int conversion is always safe return term.IsTerminal(int(os.Stdin.Fd())) && term.IsTerminal(int(os.Stdout.Fd())) } // ReadConsole reads the console with the given prompt text. func ReadConsole(prompt string) (string, error) { + //nolint:gosec // os.Stdin.Fd() == 0: uintptr -> int conversion is always safe if !term.IsTerminal(int(os.Stdin.Fd())) { return readConsolePlain(os.Stdout, os.Stdin, prompt) } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console_password.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console_password.go index 9bf2d20bf..7ffda37c0 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console_password.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/console_password.go @@ -26,6 +26,7 @@ func ReadConsoleNoEcho(prompt string) (string, error) { // error when it tries to disable local echo. // // In this case, just read normally + //nolint:gosec // os.Stdin.Fd() == 0: uintptr -> int conversion is always safe if !term.IsTerminal(int(os.Stdin.Fd())) { return readConsolePlain(os.Stdout, os.Stdin, prompt) } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/diag.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/diag.go index 71ce7c210..672866d29 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/diag.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/diag.go @@ -15,10 +15,10 @@ package cmdutil import ( + "fmt" "os" "sync" - "github.com/pkg/errors" "github.com/pulumi/pulumi/sdk/v3/go/common/diag" "github.com/pulumi/pulumi/sdk/v3/go/common/diag/colors" "github.com/pulumi/pulumi/sdk/v3/go/common/util/contract" @@ -76,7 +76,7 @@ func SetGlobalColorization(value string) error { c := colors.Raw globalColorization = &c default: - return errors.Errorf("unsupported color option: '%s'. Supported values are: auto, always, never, raw", value) + return fmt.Errorf("unsupported color option: '%s'. Supported values are: auto, always, never, raw", value) } return nil diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/exit.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/exit.go index 6d340574a..125426017 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/exit.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/exit.go @@ -95,47 +95,29 @@ func runPostCommandHooks(c *cobra.Command, args []string) error { // // If run returns a BailError, we will not print an error message, but will still be a non-zero exit code. func RunFunc(run func(cmd *cobra.Command, args []string) error) func(*cobra.Command, []string) { - return RunResultFunc(func(cmd *cobra.Command, args []string) result.Result { - if err := run(cmd, args); err != nil { - return result.FromError(err) - } - - return nil - }) -} - -// RunResultFunc wraps an Result-returning run func with standard Pulumi error handling. All Pulumi -// commands should wrap themselves in this or [RunFunc] to ensure consistent and appropriate error -// behavior. In particular, we want to avoid any calls to os.Exit in the middle of a callstack -// which might prohibit reaping of child processes, resources, etc. And we wish to avoid the -// default Cobra unhandled error behavior, because it is formatted incorrectly and needlessly prints -// usage. -func RunResultFunc(run func(cmd *cobra.Command, args []string) result.Result) func(*cobra.Command, []string) { return func(cmd *cobra.Command, args []string) { - if res := run(cmd, args); res != nil { + if err := run(cmd, args); err != nil { // Sadly, the fact that we hard-exit below means that it's up to us to replicate the Cobra post-run // behavior here. if postRunErr := runPostCommandHooks(cmd, args); postRunErr != nil { - res = result.Merge(res, result.FromError(postRunErr)) + err = result.MergeBails(err, postRunErr) } // If we were asked to bail, that means we already printed out a message. We just need // to quit at this point (with an error code so no one thinks we succeeded). Bailing // always indicates a failure, just one we don't need to print a message for. - if res.IsBail() { + if result.IsBail(err) { os.Exit(-1) return } // If there is a stack trace, and logging is enabled, append it. Otherwise, debug logging it. - err := res.Error() - var msg string if logging.LogToStderr { msg = DetailedError(err) } else { msg = errorMessage(err) - logging.V(3).Infof(DetailedError(err)) + logging.V(3).Info(DetailedError(err)) } ExitError(msg) @@ -165,26 +147,14 @@ func exitErrorCodef(code int, format string, args ...interface{}) { func errorMessage(err error) string { contract.Requiref(err != nil, "err", "must not be nil") - var underlying []error - switch multi := err.(type) { - case *multierror.Error: - underlying = multi.WrappedErrors() - case interface{ Unwrap() []error }: - // The standard library supported multi-errors (available since Go 1.20) - // use this interface. - underlying = multi.Unwrap() - default: - return err.Error() - } + underlying := flattenErrors(err) switch len(underlying) { case 0: - // This should never happen, but just in case. - // Return the original error message. return err.Error() case 1: - return errorMessage(underlying[0]) + return underlying[0].Error() default: msg := fmt.Sprintf("%d errors occurred:", len(underlying)) @@ -194,3 +164,25 @@ func errorMessage(err error) string { return msg } } + +// Flattens an error into a slice of errors containing the supplied error and +// all errors it wraps. If the set of wrapped errors is a tree (as e.g. produced +// by errors.Join), the errors are flattened in a depth-first manner. This +// function supports both native wrapped errors and those produced by the +// multierror package. +func flattenErrors(err error) []error { + var errs []error + switch multi := err.(type) { + case *multierror.Error: + for _, e := range multi.Errors { + errs = append(errs, flattenErrors(e)...) + } + case interface{ Unwrap() []error }: + for _, e := range multi.Unwrap() { + errs = append(errs, flattenErrors(e)...) + } + default: + errs = append(errs, err) + } + return errs +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/profile.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/profile.go index 68828145f..e6edaad89 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/profile.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil/profile.go @@ -21,26 +21,24 @@ import ( "runtime/pprof" "runtime/trace" - "github.com/pkg/errors" - "github.com/pulumi/pulumi/sdk/v3/go/common/util/contract" ) func InitProfiling(prefix string, memProfileRate int) error { cpu, err := os.Create(fmt.Sprintf("%s.%v.cpu", prefix, os.Getpid())) if err != nil { - return errors.Wrap(err, "could not start CPU profile") + return fmt.Errorf("could not start CPU profile: %w", err) } if err = pprof.StartCPUProfile(cpu); err != nil { - return errors.Wrap(err, "could not start CPU profile") + return fmt.Errorf("could not start CPU profile: %w", err) } exec, err := os.Create(fmt.Sprintf("%s.%v.trace", prefix, os.Getpid())) if err != nil { - return errors.Wrap(err, "could not start execution trace") + return fmt.Errorf("could not start execution trace: %w", err) } if err = trace.Start(exec); err != nil { - return errors.Wrap(err, "could not start execution trace") + return fmt.Errorf("could not start execution trace: %w", err) } if memProfileRate > 0 { @@ -56,13 +54,13 @@ func CloseProfiling(prefix string) error { mem, err := os.Create(fmt.Sprintf("%s.%v.mem", prefix, os.Getpid())) if err != nil { - return errors.Wrap(err, "could not create memory profile") + return fmt.Errorf("could not create memory profile: %w", err) } defer contract.IgnoreClose(mem) runtime.GC() // get up-to-date statistics if err = pprof.Lookup("allocs").WriteTo(mem, 0); err != nil { - return errors.Wrap(err, "could not write memory profile") + return fmt.Errorf("could not write memory profile: %w", err) } return nil diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/fsutil/searchup.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/fsutil/searchup.go new file mode 100644 index 000000000..f9bb0e866 --- /dev/null +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/fsutil/searchup.go @@ -0,0 +1,41 @@ +// Copyright 2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package fsutil + +import ( + "errors" + "fmt" + "os" + "path/filepath" +) + +var ErrNotFound = errors.New("not found") + +// Searchup searches for a file in the current directory and then walks up the directory tree until it finds the file, +// returning the path to the file. If the file is not found, it returns ErrNotFound. +func Searchup(currentDir, fileToFind string) (string, error) { + p, err := filepath.Abs(filepath.Join(currentDir, fileToFind)) + if err != nil { + return "", fmt.Errorf("abs: %w", err) + } + if _, err := os.Stat(p); err == nil { + return p, nil + } + parentDir := filepath.Dir(currentDir) + if currentDir == parentDir { + return "", ErrNotFound + } + return Searchup(parentDir, fileToFind) +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/result/result.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/result/result.go index 85e02d177..8958e1b78 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/result/result.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/result/result.go @@ -19,7 +19,6 @@ import ( "fmt" "io" - "github.com/hashicorp/go-multierror" "github.com/pulumi/pulumi/sdk/v3/go/common/util/contract" ) @@ -27,11 +26,13 @@ type bailError struct { err error } -// BailError is the replacement for Result now that Go supports wrapping errors. It is used to indicate that -// a computation failed, but that it failed gracefully, i.e. it is not a bug in Pulumi. BailError implements -// the error interface but will prefix it's error string with BAIL, which if ever seen in user facing messages -// indicates that a check for bailing was missed. It also blocks `Unwrap` calls, instead to get access to the -// inner error use the `IsBail` function. +// A BailError represents an expected error or a graceful failure -- that is +// something which is not a bug but a normal (albeit unhappy-path) part of the +// program's execution. A BailError implements the Error interface but will +// prefix its error string with "BAIL: ", which if ever seen in user-facing +// messages indicates that a check for bailing was missed. It also does *not* +// implement Unwrap. To ascertain whether an error is a BailError, use the +// IsBail function. func BailError(err error) error { contract.Requiref(err != nil, "err", "must not be nil") @@ -54,7 +55,7 @@ func FprintBailf(w io.Writer, msg string, args ...any) error { return BailError(errors.New(msg)) } -// IsBail reports whether any error in err's tree is a `BailError`. +// IsBail returns true if any error in the given error's tree is a BailError. func IsBail(err error) bool { if err == nil { return false @@ -65,140 +66,40 @@ func IsBail(err error) bool { return ok } -// Result represents the result of a computation that can fail. The Result type revolves around two -// notions of failure: +// MergeBails accepts a set of errors and returns a single error that is the +// result of merging them according to the following criteria: // -// 1. Computations can fail, but they can fail gracefully. Computations that fail gracefully do so -// by logging a diagnostic and returning a non-nil "bail" result. -// -// 2. Computations can fail due to bugs in Pulumi. Computations that fail in this manner do so by -// constructing a Result using the `Error`, `Errorf`, or `FromError` constructor functions. -// -// Result is an interface so that it can be nullable. A function returning a pointer Result has the -// following semantics: -// -// - If the result is `nil`, the caller should proceed. The callee believes -// that the overarching plan can still continue, even if it logged -// diagnostics. -// -// - If the result is non-nil, the caller should not proceed. Most often, the -// caller should return this Result to its caller. -// -// At the highest level, when a function wishes to return only an `error`, the `Error` member -// function can be used to turn a nullable `Result` into an `error`. -type Result interface { - Error() error - IsBail() bool -} - -type simpleResult struct { - err error -} - -func (r *simpleResult) Error() error { return r.err } -func (r *simpleResult) IsBail() bool { return r.err == nil } -func (r *simpleResult) String() string { - if r.err == nil { - return "Bail" +// - If all the errors are nil, MergeBails returns nil. +// - If any of the errors is *not* a BailError, MergeBails returns a single +// error whose message is the concatenation of the messages of all the +// errors which are not bails (that is, if any error is unexpected, MergeBails +// will propagate it). +// - In the remaining case that all errors are either nil or BailErrors, MergeBails +// will return a single BailError whose message is the concatenation of the +// messages of all the BailErrors. +func MergeBails(errs ...error) error { + allNil := true + joinableErrs := []error{} + for _, err := range errs { + if err == nil { + continue + } + + allNil = false + if IsBail(err) { + continue + } + + joinableErrs = append(joinableErrs, err) } - return fmt.Sprintf("Error: %s", r.err) -} - -func (r *simpleResult) GoString() string { - if r.err == nil { - return "&simpleResult{}" - } - return fmt.Sprintf("&simpleResult{err: %#v}", r.err) -} - -// Bail produces a Result that represents a computation that failed to complete -// successfully but is not a bug in Pulumi. -func Bail() Result { - return &simpleResult{err: nil} -} - -// Errorf produces a Result that represents an internal Pulumi error, -// constructed from the given format string and arguments. -func Errorf(msg string, args ...interface{}) Result { - err := fmt.Errorf(msg, args...) - return FromError(err) -} -// Error produces a Result that represents an internal Pulumi error, -// constructed from the given message. -func Error(msg string) Result { - err := errors.New(msg) - return FromError(err) -} - -// FromError produces a Result that wraps an internal Pulumi error. Do not call this with a 'nil' error. A -// 'nil' error means that there was no problem, and in that case a 'nil' result should be used instead. If -// this is called with an error from `BailError` it will discard the inner error of that and return a bail -// result. -func FromError(err error) Result { - if err == nil { - panic("FromError should not be called with a nil-error. " + - "If there is no error, then a nil result should be returned. " + - "Caller should check for this first.") - } - - if IsBail(err) { - return &simpleResult{err: nil} - } - - return &simpleResult{err: err} -} - -// WrapIfNonNil returns a non-nil Result if [err] is non-nil. Otherwise it returns nil. -func WrapIfNonNil(err error) Result { - if err == nil { + if allNil { return nil } - return FromError(err) -} - -// TODO returns an error that can be used in places that have not yet been -// adapted to use Results. Their use is intended to be temporary until Results -// are plumbed throughout the Pulumi codebase. -func TODO() error { - return errors.New("bailing due to error") -} - -// Merge combines two results into one final result. It properly respects all three forms of Result -// (i.e. nil/bail/error) for both results, and combines all sensibly into a final form that represents -// the information of both. -func Merge(res1 Result, res2 Result) Result { - switch { - // If both are nil, then there's no problem. Return 'nil' to properly convey that outwards. - case res1 == nil && res2 == nil: - return nil - - // Otherwise, if one is nil, and the other is not, then the non-nil takes precedence. - // i.e. an actual error (or bail) takes precedence - case res1 == nil: - return res2 - case res2 == nil: - return res1 - - // If both results have asked to bail, then just bail. That properly respects both requests. - case res1.IsBail() && res2.IsBail(): - return Bail() - - // We have two non-nil results and one, or both, of the results indicate an error. - - // If we have a request to Bail and a request to error then the request to error takes - // precedence. The concept of bailing is that we've printed an error already and should just - // quickly finish the entire pulumi execution. However, for an error, we are indicating a bug - // happened, and that we haven't printed it, and that it should print at the end. So we need - // to respect the error form here and pass it all the way back. - case res1.IsBail(): - return res2 - case res2.IsBail(): - return res1 - - // Both results are errors. Combine them into one joint error and return that. - default: - return FromError(multierror.Append(res1.Error(), res2.Error())) + if len(joinableErrs) == 0 { + return BailError(errors.Join(errs...)) } + + return errors.Join(joinableErrs...) } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/rpcutil/serve.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/rpcutil/serve.go index 8cf4fe2e2..3ba0e97ac 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/rpcutil/serve.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/util/rpcutil/serve.go @@ -15,13 +15,13 @@ package rpcutil import ( + "fmt" "net" "strconv" "strings" "github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc" opentracing "github.com/opentracing/opentracing-go" - "github.com/pkg/errors" "google.golang.org/grpc" "google.golang.org/grpc/health" healthgrpc "google.golang.org/grpc/health/grpc_health_v1" @@ -80,7 +80,7 @@ func serveWithOptions(opts ServeOptions) (ServeHandle, chan error, error) { lis, err := net.Listen("tcp", "127.0.0.1:"+strconv.Itoa(port)) if err != nil { return ServeHandle{Port: port}, nil, - errors.Errorf("failed to listen on TCP port ':%v': %v", port, err) + fmt.Errorf("failed to listen on TCP port ':%v': %v", port, err) } health := health.NewServer() @@ -92,7 +92,7 @@ func serveWithOptions(opts ServeOptions) (ServeHandle, chan error, error) { if opts.Init != nil { if err := opts.Init(srv); err != nil { return ServeHandle{Port: port}, nil, - errors.Errorf("failed to Init GRPC to register RPC handlers: %v", err) + fmt.Errorf("failed to Init GRPC to register RPC handlers: %v", err) } } @@ -126,7 +126,7 @@ func serveWithOptions(opts ServeOptions) (ServeHandle, chan error, error) { done := make(chan error) go func() { if err := srv.Serve(lis); err != nil && !IsBenignCloseErr(err) { - done <- errors.Errorf("stopped serving: %v", err) + done <- fmt.Errorf("stopped serving: %v", err) } else { done <- nil // send a signal so caller knows we're done, even though it's nil. } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/config.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/config.go index b502b0e6e..23faddc4d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/config.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/config.go @@ -1,3 +1,17 @@ +// Copyright 2022-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package workspace import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/creds.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/creds.go index b638bc81a..c0d542672 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/creds.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/creds.go @@ -36,10 +36,6 @@ import ( //nolint:gosec const PulumiCredentialsPathEnvVar = "PULUMI_CREDENTIALS_PATH" -// PulumiBackendURLEnvVar is an environment variable which can be used to set the backend that will be -// used instead of the currently logged in backend or the current projects backend. -const PulumiBackendURLEnvVar = "PULUMI_BACKEND_URL" - // GetAccount returns an account underneath a given key. // // Note that the account may not be fully populated: it may only have a valid AccessToken. In that case, it is up to @@ -163,46 +159,6 @@ func getCredsFilePath() (string, error) { return filepath.Join(pulumiFolder, "credentials.json"), nil } -// GetCurrentCloudURL returns the URL of the cloud we are currently connected to. This may be empty if we -// have not logged in. Note if PULUMI_BACKEND_URL is set, the corresponding value is returned -// instead irrespective of the backend for current project or stored credentials. -func GetCurrentCloudURL(project *Project) (string, error) { - // Allow PULUMI_BACKEND_URL to override the current cloud URL selection - if backend := os.Getenv(PulumiBackendURLEnvVar); backend != "" { - return backend, nil - } - - var url string - if project != nil { - if project.Backend != nil { - url = project.Backend.URL - } - } - - if url == "" { - creds, err := GetStoredCredentials() - if err != nil { - return "", err - } - url = creds.Current - } - - return url, nil -} - -// GetCloudInsecure returns if this cloud url is saved as one that should use insecure transport. -func GetCloudInsecure(cloudURL string) bool { - insecure := false - creds, err := GetStoredCredentials() - // If this errors just assume insecure == false - if err == nil { - if account, has := creds.Accounts[cloudURL]; has { - insecure = account.Insecure - } - } - return insecure -} - // GetStoredCredentials returns any credentials stored on the local machine. func GetStoredCredentials() (Credentials, error) { credsFile, err := getCredsFilePath() @@ -218,6 +174,14 @@ func GetStoredCredentials() (Credentials, error) { return Credentials{}, fmt.Errorf("reading '%s': %w", credsFile, err) } + // If the file is empty, we can act as if it doesn't exist rather than trying + // (and failing) to deserialize its contents. This allows us to recover from + // situations where a write to the file was interrupted or it was otherwise + // clobbered. + if len(c) == 0 { + return Credentials{}, nil + } + var creds Credentials if err = json.Unmarshal(c, &creds); err != nil { return Credentials{}, fmt.Errorf("failed to read Pulumi credentials file. Please re-run "+ @@ -357,23 +321,3 @@ func SetBackendConfigDefaultOrg(backendURL, defaultOrg string) error { return StorePulumiConfig(config) } - -func GetBackendConfigDefaultOrg(project *Project) (string, error) { - config, err := GetPulumiConfig() - if err != nil && !os.IsNotExist(err) { - return "", err - } - - backendURL, err := GetCurrentCloudURL(project) - if err != nil { - return "", err - } - - if beConfig, ok := config.BackendConfig[backendURL]; ok { - if beConfig.DefaultOrg != "" { - return beConfig.DefaultOrg, nil - } - } - - return "", nil -} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/paths.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/paths.go index 989fa9213..2d54fdc1b 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/paths.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/paths.go @@ -19,11 +19,10 @@ import ( "fmt" "io/fs" "os" + "os/user" "path/filepath" "strings" - user "github.com/tweekmonster/luser" - "github.com/pulumi/pulumi/sdk/v3/go/common/encoding" "github.com/pulumi/pulumi/sdk/v3/go/common/tokens" "github.com/pulumi/pulumi/sdk/v3/go/common/util/fsutil" @@ -135,11 +134,8 @@ func DetectProjectPathFrom(dir string) (string, error) { }) // We special case permission errors to cause ErrProjectNotFound to return from this function. This is so // users can run pulumi with unreadable root directories. - var perr *fs.PathError - if errors.As(err, &perr) { - if errors.Is(perr.Err, fs.ErrPermission) { - err = nil - } + if errors.Is(err, fs.ErrPermission) { + err = nil } if err != nil { @@ -309,11 +305,11 @@ func GetPulumiHomeDir() (string, error) { return "", fmt.Errorf("getting current user: %w", err) } - if user == nil || user.User == nil || user.User.HomeDir == "" { + if user == nil || user.HomeDir == "" { return "", fmt.Errorf("could not find user home directory, set %s", PulumiHomeEnvVar) } - return filepath.Join(user.User.HomeDir, BookkeepingDir), nil + return filepath.Join(user.HomeDir, BookkeepingDir), nil } // GetPulumiPath returns the path to a file or directory under the '.pulumi' folder. It joins the path of diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/plugins.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/plugins.go index 7bdb9e9dc..bac190738 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/plugins.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/plugins.go @@ -346,6 +346,9 @@ type githubSource struct { kind apitype.PluginKind token string + + // If true we explicitly disabled the token due to 401 errors and won't try it again + tokenDisabled bool } // Creates a new github source adding authentication data in the environment, if it exists @@ -433,8 +436,12 @@ func (source *githubSource) newHTTPRequest(url, accept string) (*http.Request, e func (source *githubSource) getHTTPResponse( getHTTPResponse func(*http.Request) (io.ReadCloser, int64, error), - req *http.Request, + url, accept string, ) (io.ReadCloser, int64, error) { + req, err := source.newHTTPRequest(url, accept) + if err != nil { + return nil, -1, err + } resp, length, err := getHTTPResponse(req) if err == nil { return resp, length, nil @@ -443,6 +450,12 @@ func (source *githubSource) getHTTPResponse( // Wrap 403 rate limit errors with a more helpful message. var downErr *downloadError if !errors.As(err, &downErr) || downErr.code != 403 { + // If we see a 401 error and were using a token we'll disable that token and try again + if downErr != nil && downErr.code == 401 && source.token != "" { + source.token = "" + source.tokenDisabled = true + return source.getHTTPResponse(getHTTPResponse, url, accept) + } return nil, -1, err } @@ -460,7 +473,12 @@ func (source *githubSource) getHTTPResponse( addAuth := "" if source.token == "" { - addAuth = " You can set GITHUB_TOKEN to make an authenticated request with a higher rate limit." + if source.tokenDisabled { + addAuth = " Your current GITHUB_TOKEN doesn't allow access to the repository, so we disabled it for this request." + + " You can set GITHUB_TOKEN to a different token to make a request with a higher rate limit." + } else { + addAuth = " You can set GITHUB_TOKEN to make an authenticated request with a higher rate limit." + } } logging.Errorf("GitHub rate limit exceeded for %s%s%s", req.URL, tryAgain, addAuth) @@ -474,11 +492,7 @@ func (source *githubSource) GetLatestVersion( "https://%s/repos/%s/%s/releases/latest", source.host, source.organization, source.repository) logging.V(9).Infof("plugin GitHub releases url: %s", releaseURL) - req, err := source.newHTTPRequest(releaseURL, "application/json") - if err != nil { - return nil, err - } - resp, length, err := source.getHTTPResponse(getHTTPResponse, req) + resp, length, err := source.getHTTPResponse(getHTTPResponse, releaseURL, "application/json") if err != nil { return nil, err } @@ -506,12 +520,7 @@ func (source *githubSource) Download( "https://%s/repos/%s/%s/releases/tags/v%s", source.host, source.organization, source.repository, version) logging.V(9).Infof("plugin GitHub releases url: %s", releaseURL) - - req, err := source.newHTTPRequest(releaseURL, "application/json") - if err != nil { - return nil, -1, err - } - resp, length, err := source.getHTTPResponse(getHTTPResponse, req) + resp, length, err := source.getHTTPResponse(getHTTPResponse, releaseURL, "application/json") if err != nil { return nil, -1, err } @@ -541,12 +550,7 @@ func (source *githubSource) Download( } logging.V(1).Infof("%s downloading from %s", source.name, assetURL) - - req, err = source.newHTTPRequest(assetURL, "application/octet-stream") - if err != nil { - return nil, -1, err - } - return source.getHTTPResponse(getHTTPResponse, req) + return source.getHTTPResponse(getHTTPResponse, assetURL, "application/octet-stream") } func (source *githubSource) URL() string { @@ -774,6 +778,28 @@ func (pp ProjectPlugin) Spec() PluginSpec { } } +// A PackageDescriptor specifies a package: the source PluginSpec that provides it, and any parameterization +// that must be applied to that plugin in order to produce the package. +type PackageDescriptor struct { + // A specification for the plugin that provides the package. + PluginSpec + + // An optional parameterization to apply to the providing plugin to produce + // the package. + Parameterization *Parameterization +} + +// A Parameterization may be applied to a supporting plugin to yield a package. +type Parameterization struct { + // The name of the package that will be produced by the parameterization. + Name string + // The version of the package that will be produced by the parameterization. + Version semver.Version + // A plugin-dependent bytestring representing the value of the parameter to be + // passed to the plugin. + Value []byte +} + // PluginSpec provides basic specification for a plugin. type PluginSpec struct { Name string // the simple name of the plugin. @@ -901,7 +927,7 @@ func (info *PluginInfo) SetFileMetadata(path string) error { logging.V(6).Infof("unable to get plugin dir size for %s: %v", path, err) } - // Next get the access times from the plugin binary itself. + // Next get the access times from the plugin folder. tinfo := times.Get(file) if tinfo.HasChangeTime() { @@ -1536,7 +1562,8 @@ func (spec PluginSpec) InstallWithContext(ctx context.Context, content PluginCon if err != nil { return fmt.Errorf("getting python toolchain: %w", err) } - if err := tc.InstallDependencies(ctx, finalDir, false /*showOutput*/, os.Stdout, os.Stderr); err != nil { + if err := tc.InstallDependencies(ctx, finalDir, false, /*useLanguageVersionTools */ + false /*showOutput*/, os.Stdout, os.Stderr); err != nil { return fmt.Errorf("installing plugin dependencies: %w", err) } } @@ -1842,15 +1869,15 @@ func getPluginInfoAndPath( Name: spec.Name, Kind: spec.Kind, Version: spec.Version, - Path: plugin.Path, + Path: filepath.Clean(plugin.Path), } - path := getPluginPath(info) // computing plugin sizes can be very expensive (nested node_modules) - if !skipMetadata && path != "" { - if err := info.SetFileMetadata(path); err != nil { + if !skipMetadata { + if err := info.SetFileMetadata(info.Path); err != nil { return nil, "", err } } + path := getPluginPath(info) return info, path, nil } @@ -1914,11 +1941,18 @@ func getPluginInfoAndPath( pluginPath = ambientPath } if pluginPath != "" { - return &PluginInfo{ + info := &PluginInfo{ Kind: kind, Name: name, Path: filepath.Dir(pluginPath), - }, pluginPath, nil + } + // computing plugin sizes can be very expensive (nested node_modules) + if !skipMetadata { + if err := info.SetFileMetadata(info.Path); err != nil { + return nil, "", err + } + } + return info, pluginPath, nil } // Wasn't ambient, and wasn't bundled, so now check the plugin cache. diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/project.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/project.go index b38fa4725..469d79713 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/project.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/project.go @@ -1051,7 +1051,7 @@ func (info *ProjectRuntimeInfo) SetOption(key string, value interface{}) { } func (info ProjectRuntimeInfo) MarshalYAML() (interface{}, error) { - if info.options == nil || len(info.options) == 0 { + if len(info.options) == 0 { return info.name, nil } @@ -1062,7 +1062,7 @@ func (info ProjectRuntimeInfo) MarshalYAML() (interface{}, error) { } func (info ProjectRuntimeInfo) MarshalJSON() ([]byte, error) { - if info.options == nil || len(info.options) == 0 { + if len(info.options) == 0 { return json.Marshal(info.name) } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/templates_zip.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/templates_zip.go index a7771fb0a..473831f37 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/templates_zip.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/common/workspace/templates_zip.go @@ -17,6 +17,7 @@ package workspace import ( "archive/zip" "bytes" + "errors" "fmt" "io" "math" @@ -165,6 +166,18 @@ func RetrieveZIPTemplateFolder(templateURL *url.URL, tempDir string) (string, er if err != nil { return "", err } + + hasPulumiYAML := false + for _, file := range archive.File { + if !file.FileInfo().IsDir() && file.FileInfo().Name() == "Pulumi.yaml" { + hasPulumiYAML = true + break + } + } + if !hasPulumiYAML { + return "", errors.New("template does not contain a Pulumi.yaml file") + } + for _, file := range archive.File { filePath, err := sanitizeArchivePath(tempDir, file.Name) if err != nil { diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/property/reference.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/property/reference.go index 09c6b6d11..19c5b91b8 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/property/reference.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/property/reference.go @@ -1,3 +1,17 @@ +// Copyright 2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package property import "github.com/pulumi/pulumi/sdk/v3/go/common/resource/urn" diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/context.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/context.go index e4a75dd7b..ed11d130d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/context.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/context.go @@ -20,6 +20,7 @@ import ( "context" "errors" "fmt" + "math" "net/url" "os" "path" @@ -67,6 +68,7 @@ type contextState struct { supportsAliasSpecs bool // true if full alias specification is supported by pulumi supportsTransforms bool // true if remote transforms are supported by pulumi supportsInvokeTransforms bool // true if remote invoke transforms are supported by pulumi + supportsParameterization bool // true if package references and parameterized providers are supported by pulumi rpcs int // the number of outstanding RPC requests. rpcsDone *sync.Cond // an event signaling completion of RPCs. rpcsLock sync.Mutex // a lock protecting the RPC count and event. @@ -168,6 +170,11 @@ func NewContext(ctx context.Context, info RunInfo) (*Context, error) { return nil, err } + supportsParameterization, err := supportsFeature("parameterization") + if err != nil { + return nil, err + } + contextState := &contextState{ info: info, exports: make(map[string]Input), @@ -181,6 +188,7 @@ func NewContext(ctx context.Context, info RunInfo) (*Context, error) { supportsAliasSpecs: supportsAliasSpecs, supportsTransforms: supportsTransforms, supportsInvokeTransforms: supportsInvokeTransforms, + supportsParameterization: supportsParameterization, } contextState.rpcsDone = sync.NewCond(&contextState.rpcsLock) context := &Context{ @@ -273,7 +281,7 @@ func (ctx *Context) Project() string { return ctx.state.info.Project } func (ctx *Context) Stack() string { return ctx.state.info.Stack } // Parallel returns the degree of parallelism currently being used by the engine (1 being entirely serial). -func (ctx *Context) Parallel() int { return ctx.state.info.Parallel } +func (ctx *Context) Parallel() int32 { return ctx.state.info.Parallel } // DryRun is true when evaluating a program for purposes of planning, instead of performing a true deployment. func (ctx *Context) DryRun() bool { return ctx.state.info.DryRun } @@ -652,37 +660,39 @@ func (ctx *Context) registerInvokeTransform(t InvokeTransform) (*pulumirpc.Callb // // args and result must be pointers to struct values fields and appropriately tagged and typed for use with Pulumi. func (ctx *Context) Invoke(tok string, args interface{}, result interface{}, opts ...InvokeOption) (err error) { - if tok == "" { - return errors.New("invoke token must not be empty") - } + return ctx.InvokePackage(tok, args, result, "" /* packageRef */, opts...) +} - resultV := reflect.ValueOf(result) - if !(resultV.Kind() == reflect.Ptr && - (resultV.Elem().Kind() == reflect.Struct || - (resultV.Elem().Kind() == reflect.Map && resultV.Elem().Type().Key().Kind() == reflect.String))) { - return errors.New("result must be a pointer to a struct or map value") +// InvokePackage will invoke a provider's function, identified by its token tok. This function call is synchronous. +// +// args and result must be pointers to struct values fields and appropriately tagged and typed for use with Pulumi. +func (ctx *Context) invokePackageRaw( + tok string, args interface{}, packageRef string, opts ...InvokeOption, +) (resource.PropertyMap, error) { + if tok == "" { + return nil, errors.New("invoke token must not be empty") } options, err := NewInvokeOptions(opts...) if err != nil { - return err + return nil, err } // Note that we're about to make an outstanding RPC request, so that we can rendezvous during shutdown. if err = ctx.beginRPC(); err != nil { - return err + return nil, err } defer ctx.endRPC(err) var providerRef string providers, err := ctx.mergeProviders(tok, options.Parent, options.Provider, nil) if err != nil { - return err + return nil, err } if provider := providers[getPackage(tok)]; provider != nil { pr, err := ctx.resolveProviderReference(provider) if err != nil { - return err + return nil, err } providerRef = pr } @@ -693,7 +703,7 @@ func (ctx *Context) Invoke(tok string, args interface{}, result interface{}, opt } resolvedArgs, _, err := marshalInput(args, anyType, false) if err != nil { - return fmt.Errorf("marshaling arguments: %w", err) + return nil, fmt.Errorf("marshaling arguments: %w", err) } resolvedArgsMap := resource.PropertyMap{} @@ -710,7 +720,7 @@ func (ctx *Context) Invoke(tok string, args interface{}, result interface{}, opt }, ) if err != nil { - return fmt.Errorf("marshaling arguments: %w", err) + return nil, fmt.Errorf("marshaling arguments: %w", err) } // Now, invoke the RPC to the provider synchronously. @@ -722,10 +732,11 @@ func (ctx *Context) Invoke(tok string, args interface{}, result interface{}, opt Version: options.Version, PluginDownloadURL: options.PluginDownloadURL, AcceptResources: !disableResourceReferences, + PackageRef: packageRef, }) if err != nil { logging.V(9).Infof("Invoke(%s, ...): error: %v", tok, err) - return err + return nil, err } // If there were any failures from the provider, return them. @@ -736,38 +747,86 @@ func (ctx *Context) Invoke(tok string, args interface{}, result interface{}, opt ferr = multierror.Append(ferr, fmt.Errorf("%s invoke failed: %s (%s)", tok, failure.Reason, failure.Property)) } - return ferr + return nil, ferr } // Otherwise, simply unmarshal the output properties and return the result. - outProps, err := plugin.UnmarshalProperties( + return plugin.UnmarshalProperties( resp.Return, plugin.MarshalOptions{ KeepUnknowns: true, KeepSecrets: true, KeepResources: true, - }, - ) - if err != nil { - return err + }) +} + +func validInvokeResult(resultV reflect.Value) bool { + isPointer := resultV.Kind() == reflect.Ptr + isMap := resultV.Elem().Kind() == reflect.Map && resultV.Elem().Type().Key().Kind() == reflect.String + structOrMap := resultV.Elem().Kind() == reflect.Struct || isMap + return isPointer && structOrMap +} + +// InvokePackage will invoke a provider's function, identified by its token tok. This function call is synchronous. +// +// args and result must be pointers to struct values fields and appropriately tagged and typed for use with Pulumi. +func (ctx *Context) InvokePackage( + tok string, args interface{}, result interface{}, packageRef string, opts ...InvokeOption, +) error { + resultV := reflect.ValueOf(result) + if !validInvokeResult(resultV) { + return errors.New("result must be a pointer to a struct or map value") } - // fail if there are secrets returned from the invoke - hasSecret, err := unmarshalOutput(ctx, resource.NewObjectProperty(outProps), resultV.Elem()) + outProps, err := ctx.invokePackageRaw(tok, args, packageRef, opts...) if err != nil { return err } + hasSecret, err := unmarshalOutput(ctx, resource.NewObjectProperty(outProps), resultV.Elem()) + if hasSecret { - return errors.New("unexpected secret result returned to invoke call") + return errors.New("unexpected secret result returned to invoke call, " + + "consider using the output-versioned variant of the invoke") } logging.V(9).Infof("Invoke(%s, ...): success: w/ %d outs (err=%v)", tok, len(outProps), err) return nil } +// InvokePackageRaw is similar to InvokePackage except that it doesn't error out if the result has secrets. +// Insread, it returns a boolean indicating if the result has secrets. +func (ctx *Context) InvokePackageRaw( + tok string, args interface{}, result interface{}, packageRef string, opts ...InvokeOption, +) (isSecret bool, err error) { + resultV := reflect.ValueOf(result) + if !validInvokeResult(resultV) { + return false, errors.New("result must be a pointer to a struct or map value") + } + + outProps, err := ctx.invokePackageRaw(tok, args, packageRef, opts...) + if err != nil { + return false, err + } + hasSecret, err := unmarshalOutput(ctx, resource.NewObjectProperty(outProps), resultV.Elem()) + if err != nil { + return false, err + } + logging.V(9).Infof("InvokePackageRaw(%s, ...): success: w/ %d outs (err=%v)", tok, len(outProps), err) + return hasSecret, nil +} + // Call will invoke a provider call function, identified by its token tok. // // output is used to determine the output type to return; self is optional for methods. func (ctx *Context) Call(tok string, args Input, output Output, self Resource, opts ...InvokeOption) (Output, error) { + return ctx.CallPackage(tok, args, output, self, "" /* packageRef */, opts...) +} + +// CallPackage will invoke a provider call function, identified by its token tok. +// +// output is used to determine the output type to return; self is optional for methods. +func (ctx *Context) CallPackage( + tok string, args Input, output Output, self Resource, packageRef string, opts ...InvokeOption, +) (Output, error) { if tok == "" { return nil, errors.New("call token must not be empty") } @@ -873,6 +932,7 @@ func (ctx *Context) Call(tok string, args Input, output Output, self Resource, o Provider: providerRef, Version: version, PluginDownloadURL: pluginURL, + PackageRef: packageRef, }, nil } @@ -977,6 +1037,41 @@ func (ctx *Context) Call(tok string, args Input, output Output, self Resource, o // err := ctx.ReadResource(tok, name, id, nil, &resource, opts...) func (ctx *Context) ReadResource( t, name string, id IDInput, props Input, resource CustomResource, opts ...ResourceOption, +) error { + return ctx.readPackageResource(t, name, id, props, resource, "" /* packageRef */, opts...) +} + +// ReadPackageResource reads an existing custom resource's state from the resource monitor. t is the fully qualified +// type token and name is the "name" part to use in creating a stable and globally unique URN for the object. id is the +// ID of the resource to read, and props contains any state necessary to perform the read (typically props will be nil). +// opts contains optional settings that govern the way the resource is managed. +// +// The value passed to resource must be a pointer to a struct. The fields of this struct that correspond to output +// properties of the resource must have types that are assignable from Output, and must have a `pulumi` tag that records +// the name of the corresponding output property. The struct must embed the CustomResourceState type. +// +// For example, given a custom resource with an int-typed output "foo" and a string-typed output "bar", one would define +// the following CustomResource type: +// +// type MyResource struct { +// pulumi.CustomResourceState +// +// Foo pulumi.IntOutput `pulumi:"foo"` +// Bar pulumi.StringOutput `pulumi:"bar"` +// } +// +// And invoke ReadPackageResource like so: +// +// var resource MyResource +// err := ctx.ReadPackageResource(tok, name, id, nil, &resource, opts...) +func (ctx *Context) ReadPackageResource( + t, name string, id IDInput, props Input, resource CustomResource, packageRef string, opts ...ResourceOption, +) error { + return ctx.readPackageResource(t, name, id, props, resource, packageRef, opts...) +} + +func (ctx *Context) readPackageResource( + t, name string, id IDInput, props Input, resource CustomResource, packageRef string, opts ...ResourceOption, ) error { if t == "" { return errors.New("resource type argument cannot be empty") @@ -1050,7 +1145,7 @@ func (ctx *Context) ReadResource( // Get the source position for the resource registration. Note that this assumes that there is an intermediate // between the this function and user code. - sourcePosition := ctx.getSourcePosition(2) + sourcePosition := ctx.getSourcePosition(3) // Kick off the resource read operation. This will happen asynchronously and resolve the above properties. go func() { @@ -1087,6 +1182,7 @@ func (ctx *Context) ReadResource( AcceptResources: !disableResourceReferences, AdditionalSecretOutputs: inputs.additionalSecretOutputs, SourcePosition: sourcePosition, + PackageRef: packageRef, }) if err != nil { logging.V(9).Infof("ReadResource(%s, %s): error: %v", t, name, err) @@ -1102,35 +1198,6 @@ func (ctx *Context) ReadResource( return nil } -// RegisterResource creates and registers a new resource object. t is the fully qualified type token and name is -// the "name" part to use in creating a stable and globally unique URN for the object. props contains the goal state -// for the resource object and opts contains optional settings that govern the way the resource is created. -// -// The value passed to resource must be a pointer to a struct. The fields of this struct that correspond to output -// properties of the resource must have types that are assignable from Output, and must have a `pulumi` tag that -// records the name of the corresponding output property. The struct must embed either the ResourceState or the -// CustomResourceState type. -// -// For example, given a custom resource with an int-typed output "foo" and a string-typed output "bar", one would -// define the following CustomResource type: -// -// type MyResource struct { -// pulumi.CustomResourceState -// -// Foo pulumi.IntOutput `pulumi:"foo"` -// Bar pulumi.StringOutput `pulumi:"bar"` -// } -// -// And invoke RegisterResource like so: -// -// var resource MyResource -// err := ctx.RegisterResource(tok, name, props, &resource, opts...) -func (ctx *Context) RegisterResource( - t, name string, props Input, resource Resource, opts ...ResourceOption, -) error { - return ctx.registerResource(t, name, props, resource, false /*remote*/, opts...) -} - func (ctx *Context) getResource(urn string) (*pulumirpc.RegisterResourceResponse, error) { // This is a resource that already exists. Read its state from the engine. resolvedArgsMap := resource.NewPropertyMapFromMap(map[string]interface{}{ @@ -1179,7 +1246,7 @@ func (ctx *Context) getResource(urn string) (*pulumirpc.RegisterResourceResponse } func (ctx *Context) registerResource( - t, name string, props Input, resource Resource, remote bool, opts ...ResourceOption, + t, name string, props Input, resource Resource, remote bool, packageRef string, opts ...ResourceOption, ) error { if t == "" { return errors.New("resource type argument cannot be empty") @@ -1275,7 +1342,7 @@ func (ctx *Context) registerResource( // Get the source position for the resource registration. Note that this assumes that there are two intermediate // frames between this function and user code. - sourcePosition := ctx.getSourcePosition(3) + sourcePosition := ctx.getSourcePosition(4) // Kick off the resource registration. If we are actually performing a deployment, the resulting properties // will be resolved asynchronously as the RPC operation completes. If we're just planning, values won't resolve. @@ -1365,6 +1432,7 @@ func (ctx *Context) registerResource( SourcePosition: sourcePosition, Transforms: transforms, SupportsResultReporting: true, + PackageRef: packageRef, }) if err != nil { logging.V(9).Infof("RegisterResource(%s, %s): error: %v", t, name, err) @@ -1391,16 +1459,66 @@ func (ctx *Context) registerResource( return nil } +// RegisterResource creates and registers a new resource object. t is the fully qualified type token and name is +// the "name" part to use in creating a stable and globally unique URN for the object. props contains the goal state +// for the resource object and opts contains optional settings that govern the way the resource is created. +// +// The value passed to resource must be a pointer to a struct. The fields of this struct that correspond to output +// properties of the resource must have types that are assignable from Output, and must have a `pulumi` tag that +// records the name of the corresponding output property. The struct must embed either the ResourceState or the +// CustomResourceState type. +// +// For example, given a custom resource with an int-typed output "foo" and a string-typed output "bar", one would +// define the following CustomResource type: +// +// type MyResource struct { +// pulumi.CustomResourceState +// +// Foo pulumi.IntOutput `pulumi:"foo"` +// Bar pulumi.StringOutput `pulumi:"bar"` +// } +// +// And invoke RegisterResource like so: +// +// var resource MyResource +// err := ctx.RegisterResource(tok, name, props, &resource, opts...) +func (ctx *Context) RegisterResource( + t, name string, props Input, resource Resource, opts ...ResourceOption, +) error { + return ctx.registerResource(t, name, props, resource, false /*remote*/, "" /* packageRef */, opts...) +} + func (ctx *Context) RegisterComponentResource( t, name string, resource ComponentResource, opts ...ResourceOption, ) error { - return ctx.registerResource(t, name, nil /*props*/, resource, false /*remote*/, opts...) + return ctx.registerResource(t, name, nil /*props*/, resource, false /*remote*/, "" /* packageRef */, opts...) } func (ctx *Context) RegisterRemoteComponentResource( t, name string, props Input, resource ComponentResource, opts ...ResourceOption, ) error { - return ctx.registerResource(t, name, props, resource, true /*remote*/, opts...) + return ctx.registerResource(t, name, props, resource, true /*remote*/, "" /* packageRef */, opts...) +} + +func (ctx *Context) RegisterPackageResource( + t, name string, props Input, resource Resource, packageRef string, opts ...ResourceOption, +) error { + return ctx.registerResource(t, name, props, resource, false /*remote*/, packageRef, opts...) +} + +func (ctx *Context) RegisterPackageRemoteComponentResource( + t, name string, props Input, resource ComponentResource, packageRef string, opts ...ResourceOption, +) error { + return ctx.registerResource(t, name, props, resource, true /*remote*/, packageRef, opts...) +} + +func (ctx *Context) RegisterPackage( + in *pulumirpc.RegisterPackageRequest, +) (*pulumirpc.RegisterPackageResponse, error) { + if !ctx.state.supportsParameterization { + return nil, errors.New("the Pulumi CLI does not support parameterization. Please update the Pulumi CLI") + } + return ctx.state.monitor.RegisterPackage(ctx.ctx, in) } // resourceState contains the results of a resource registration operation. @@ -2303,8 +2421,16 @@ func (ctx *Context) getSourcePosition(skip int) *pulumirpc.SourcePosition { for i := range elems { elems[i] = url.PathEscape(elems[i]) } + var line int32 + if frame.Line <= math.MaxInt32 { + //nolint:gosec + line = int32(frame.Line) + } else { + // line is out of range for int32, that's a long sourcefile! + line = -1 + } return &pulumirpc.SourcePosition{ Uri: "project://" + path.Join(elems...), - Line: int32(frame.Line), + Line: line, } } diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/mocks.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/mocks.go index 33fdcbe69..02a179307 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/mocks.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/mocks.go @@ -1,3 +1,17 @@ +// Copyright 2020-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package pulumi import ( @@ -314,3 +328,9 @@ func (m *mockEngine) SetRootResource(ctx context.Context, in *pulumirpc.SetRootR m.rootResource = in.GetUrn() return &pulumirpc.SetRootResourceResponse{}, nil } + +func (m *mockEngine) StartDebugging(ctx context.Context, in *pulumirpc.StartDebuggingRequest, + opts ...grpc.CallOption, +) (*emptypb.Empty, error) { + return &emptypb.Empty{}, nil +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/printf.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/printf.go index 03ffd326c..bcb5fdeb4 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/printf.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/printf.go @@ -1,3 +1,17 @@ +// Copyright 2020-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package pulumi import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/provider.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/provider.go index 36ae285d2..b97e9687e 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/provider.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/provider.go @@ -45,7 +45,7 @@ func construct(ctx context.Context, req *pulumirpc.ConstructRequest, engineConn Stack: req.GetStack(), Config: req.GetConfig(), ConfigSecretKeys: req.GetConfigSecretKeys(), - Parallel: int(req.GetParallel()), + Parallel: req.GetParallel(), DryRun: req.GetDryRun(), MonitorAddr: req.GetMonitorEndpoint(), engineConn: engineConn, @@ -756,7 +756,7 @@ func call(ctx context.Context, req *pulumirpc.CallRequest, engineConn *grpc.Clie Project: req.GetProject(), Stack: req.GetStack(), Config: req.GetConfig(), - Parallel: int(req.GetParallel()), + Parallel: req.GetParallel(), DryRun: req.GetDryRun(), MonitorAddr: req.GetMonitorEndpoint(), engineConn: engineConn, diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource.go index bac1dc845..446088e74 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource.go @@ -438,6 +438,7 @@ type resourceOptions struct { PluginDownloadURL string RetainOnDelete bool DeletedWith Resource + Parameterization []byte } func resourceOptionsSnapshot(ro *resourceOptions) *ResourceOptions { @@ -517,6 +518,9 @@ type InvokeOptions struct { // should be downloaded. // This will be blank if the URL was inferred automatically. PluginDownloadURL string + + // This is an internal write only field that is used to store the parameterization from the default options. + parameterization []byte } // NOTE: @@ -911,3 +915,15 @@ func DeletedWith(r Resource) ResourceOption { ro.DeletedWith = r }) } + +// If set this resource will be parameterized with the given package reference. +func Parameterization(parameter []byte) ResourceOrInvokeOption { + return resourceOrInvokeOption(func(ro *resourceOptions, io *InvokeOptions) { + switch { + case ro != nil: + ro.Parameterization = parameter + case io != nil: + io.parameterization = parameter + } + }) +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource_set.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource_set.go index 62786fc0b..49adbb48d 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource_set.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/resource_set.go @@ -1,3 +1,17 @@ +// Copyright 2021-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package pulumi type resourceSet map[Resource]struct{} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/rpc.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/rpc.go index ffb7ab8f3..c49615565 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/rpc.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/rpc.go @@ -754,8 +754,10 @@ func unmarshalOutput(ctx *Context, v resource.PropertyValue, dest reflect.Value) return false, nil } + allocatedPointer := false // Allocate storage as necessary. for dest.Kind() == reflect.Ptr { + allocatedPointer = true elem := reflect.New(dest.Type().Elem()) dest.Set(elem) dest = elem.Elem() @@ -795,11 +797,20 @@ func unmarshalOutput(ctx *Context, v resource.PropertyValue, dest reflect.Value) if err != nil { return false, err } - resV := reflect.ValueOf(res).Elem() - if !resV.Type().AssignableTo(dest.Type()) { + resV := reflect.ValueOf(res) + // If we unmarshal a pointer and the destination is "any", we also want to make sure the result is a + // pointer. We check above whether the destination is a pointer, but that's not true for "any", even + // though it can hold a pointer. + if !allocatedPointer && resV.Kind() == reflect.Ptr && dest.Type().Kind() == reflect.Interface && + resV.Elem().Type().AssignableTo(dest.Type()) { + dest.Set(resV) + return secret, nil + } + + if !resV.Elem().Type().AssignableTo(dest.Type()) { return false, fmt.Errorf("expected a %s, got a resource of type %s", dest.Type(), resV.Type()) } - dest.Set(resV) + dest.Set(resV.Elem()) return secret, nil case v.IsOutput(): if _, err := unmarshalOutput(ctx, v.OutputValue().Element, dest); err != nil { diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/run.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/run.go index 0df6b55ed..355cf6d1f 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/run.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/run.go @@ -147,7 +147,7 @@ type RunInfo struct { Config map[string]string ConfigSecretKeys []string ConfigPropertyMap resource.PropertyMap - Parallel int + Parallel int32 DryRun bool MonitorAddr string EngineAddr string @@ -164,7 +164,7 @@ type RunInfo struct { // getEnvInfo reads various program information from the process environment. func getEnvInfo() RunInfo { // Most of the variables are just strings, and we can read them directly. A few of them require more parsing. - parallel, _ := strconv.Atoi(os.Getenv(EnvParallel)) + parallel, _ := strconv.ParseInt(os.Getenv(EnvParallel), 10, 32) dryRun, _ := strconv.ParseBool(os.Getenv(EnvDryRun)) getPlugins, _ := strconv.ParseBool(os.Getenv(envPlugins)) @@ -184,7 +184,7 @@ func getEnvInfo() RunInfo { Stack: os.Getenv(EnvStack), Config: config, ConfigSecretKeys: configSecretKeys, - Parallel: parallel, + Parallel: int32(parallel), //nolint:gosec // guarded by strconv.ParseInt DryRun: dryRun, MonitorAddr: os.Getenv(EnvMonitor), EngineAddr: os.Getenv(EnvEngine), diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/stack_reference.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/stack_reference.go index dce7e7cef..693a4ea2e 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/stack_reference.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/stack_reference.go @@ -1,3 +1,17 @@ +// Copyright 2020-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package pulumi import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/transformation.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/transformation.go index 5ee99143c..373eed4ee 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/transformation.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/transformation.go @@ -1,3 +1,17 @@ +// Copyright 2020-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package pulumi // ResourceTransformationArgs is the argument bag passed to a resource transformation. diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/types_builtins.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/types_builtins.go index 9216f7ebf..eb6d9b0c9 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/types_builtins.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumi/types_builtins.go @@ -5566,6 +5566,87 @@ func ToStringArrayArrayOutput(in []StringArrayOutput) StringArrayArrayOutput { return a.ToStringArrayArrayOutput() } +var stringMapMapMapType = reflect.TypeOf((*map[string]map[string]map[string]string)(nil)).Elem() + +// StringMapMapMapInput is an input type that accepts StringMapMapMap and StringMapMapMapOutput values. +type StringMapMapMapInput interface { + Input + + ToStringMapMapMapOutput() StringMapMapMapOutput + ToStringMapMapMapOutputWithContext(ctx context.Context) StringMapMapMapOutput +} + +// StringMapMapMap is an input type for map[string]StringMapMapInput values. +type StringMapMapMap map[string]StringMapMapInput + +// ElementType returns the element type of this Input (map[string]map[string]map[string]string). +func (StringMapMapMap) ElementType() reflect.Type { + return stringMapMapMapType +} + +func (in StringMapMapMap) ToOutput(ctx context.Context) pulumix.Output[map[string]map[string]map[string]string] { + return pulumix.Output[map[string]map[string]map[string]string]{ + OutputState: internal.GetOutputState(ToOutputWithContext(ctx, in)), + } +} + +func (in StringMapMapMap) ToStringMapMapMapOutput() StringMapMapMapOutput { + return ToOutput(in).(StringMapMapMapOutput) +} + +func (in StringMapMapMap) ToStringMapMapMapOutputWithContext(ctx context.Context) StringMapMapMapOutput { + return ToOutputWithContext(ctx, in).(StringMapMapMapOutput) +} + +// StringMapMapMapOutput is an Output that returns map[string]map[string]map[string]string values. +type StringMapMapMapOutput struct{ *OutputState } + +func (StringMapMapMapOutput) MarshalJSON() ([]byte, error) { + return nil, errors.New("Outputs can not be marshaled to JSON") +} + +func (o StringMapMapMapOutput) ToOutput(ctx context.Context) pulumix.Output[map[string]map[string]map[string]string] { + return pulumix.Output[map[string]map[string]map[string]string]{ + OutputState: o.OutputState, + } +} + +// ElementType returns the element type of this Output (map[string]map[string]map[string]string). +func (StringMapMapMapOutput) ElementType() reflect.Type { + return stringMapMapMapType +} + +func (o StringMapMapMapOutput) ToStringMapMapMapOutput() StringMapMapMapOutput { + return o +} + +func (o StringMapMapMapOutput) ToStringMapMapMapOutputWithContext(ctx context.Context) StringMapMapMapOutput { + return o +} + +// MapIndex looks up the key k in the map. +func (o StringMapMapMapOutput) MapIndex(k StringInput) StringMapMapOutput { + return All(o, k).ApplyT(func(vs []interface{}) map[string]map[string]string { + return vs[0].(map[string]map[string]map[string]string)[vs[1].(string)] + }).(StringMapMapOutput) +} + +func ToStringMapMapMap(in map[string]map[string]map[string]string) StringMapMapMap { + m := make(StringMapMapMap) + for k, v := range in { + m[k] = ToStringMapMap(v) + } + return m +} + +func ToStringMapMapMapOutput(in map[string]StringMapMapOutput) StringMapMapMapOutput { + m := make(StringMapMapMap) + for k, v := range in { + m[k] = v + } + return m.ToStringMapMapMapOutput() +} + var urnType = reflect.TypeOf((*URN)(nil)).Elem() // URNInput is an input type that accepts URN and URNOutput values. @@ -7104,6 +7185,19 @@ func (a AnyOutput) AsStringArrayArrayOutput() StringArrayArrayOutput { }).(StringArrayArrayOutput) } +// AsStringMapMapMapOutput asserts that the type of the AnyOutput's underlying interface{} value is +// map[string]map[string]map[string]string or a compatible type and returns a `StringMapMapMapOutput` with that value. +// AsStringMapMapMapOutput panics if the value was not the expected type or a compatible type. +func (a AnyOutput) AsStringMapMapMapOutput() StringMapMapMapOutput { + return a.ApplyT(func(i interface{}) (map[string]map[string]map[string]string, error) { + v, err := coerceTypeConversion(i, reflect.TypeOf((*map[string]map[string]map[string]string)(nil)).Elem()) + if err != nil { + return nil, err + } + return v.(map[string]map[string]map[string]string), nil + }).(StringMapMapMapOutput) +} + // AsURNOutput asserts that the type of the AnyOutput's underlying interface{} value is // URN and returns a `URNOutput` with that value. AsURNOutput panics if the value // was not the expected type. @@ -7270,6 +7364,7 @@ func init() { RegisterInputType(reflect.TypeOf((*StringMapArrayInput)(nil)).Elem(), StringMapArray{}) RegisterInputType(reflect.TypeOf((*StringMapMapInput)(nil)).Elem(), StringMapMap{}) RegisterInputType(reflect.TypeOf((*StringArrayArrayInput)(nil)).Elem(), StringArrayArray{}) + RegisterInputType(reflect.TypeOf((*StringMapMapMapInput)(nil)).Elem(), StringMapMapMap{}) RegisterInputType(reflect.TypeOf((*URNInput)(nil)).Elem(), URN("")) RegisterInputType(reflect.TypeOf((*URNPtrInput)(nil)).Elem(), URN("")) RegisterInputType(reflect.TypeOf((*URNArrayInput)(nil)).Elem(), URNArray{}) @@ -7346,6 +7441,7 @@ func init() { RegisterOutputType(StringMapArrayOutput{}) RegisterOutputType(StringMapMapOutput{}) RegisterOutputType(StringArrayArrayOutput{}) + RegisterOutputType(StringMapMapMapOutput{}) RegisterOutputType(URNOutput{}) RegisterOutputType(URNPtrOutput{}) RegisterOutputType(URNArrayOutput{}) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumix/array.go b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumix/array.go index 47f2e1817..17a8ead37 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumix/array.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/go/pulumix/array.go @@ -9,7 +9,7 @@ // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific mlanguage governing permissions and +// See the License for the specific language governing permissions and // limitations under the License. package pulumix diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/manager.go b/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/manager.go index 06d4913ab..95ae6ddf1 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/manager.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/manager.go @@ -1,3 +1,17 @@ +// Copyright 2023-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package npm import ( @@ -5,7 +19,6 @@ import ( "fmt" "io" "os" - "path/filepath" "github.com/pulumi/pulumi/sdk/v3/go/common/util/cmdutil" "github.com/pulumi/pulumi/sdk/v3/go/common/util/logging" @@ -68,17 +81,12 @@ func Install(ctx context.Context, packagemanager PackageManagerType, dir string, } // Ensure the "node_modules" directory exists. - // NB: This is only appropriate for certain package managers. - // Yarn with Plug'n'Play enabled won't produce a node_modules directory, - // either for Yarn Classic or Yarn Berry. - nodeModulesPath := filepath.Join(dir, "node_modules") - if _, err := os.Stat(nodeModulesPath); err != nil { - if os.IsNotExist(err) { - return name, fmt.Errorf("%s install reported success, but node_modules directory is missing", name) + nodeModulesPath, err := searchup(dir, "node_modules") + if nodeModulesPath == "" { + if err != nil { + return name, fmt.Errorf("error while looking for 'node_modules': %w", err) } - // If the node_modules dir exists but we can't stat it, we might be able to proceed - // without issue, but it's bizarre enough that we should warn. - logging.Warningf("failed to read node_modules metadata: %v", err) + return name, fmt.Errorf("%s install reported success, but node_modules directory is missing", name) } return name, nil diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/npm.go b/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/npm.go index 87d8af3e0..9d5cd70ef 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/npm.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/npm.go @@ -1,3 +1,17 @@ +// Copyright 2019-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package npm import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/yarn.go b/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/yarn.go index 50134d4a9..868fd0016 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/yarn.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/nodejs/npm/yarn.go @@ -1,3 +1,17 @@ +// Copyright 2023-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package npm import ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/codegen/loader.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/codegen/loader.pb.go index 831d3f385..2aec832a5 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/codegen/loader.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/codegen/loader.pb.go @@ -34,6 +34,70 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +// Parameterization specifies the name, version, and value for a parameterized package. +type Parameterization struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // the parameterized package name. + Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` // the parameterized package version. + Value []byte `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` // the parameter value for the parameterized package. +} + +func (x *Parameterization) Reset() { + *x = Parameterization{} + if protoimpl.UnsafeEnabled { + mi := &file_pulumi_codegen_loader_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Parameterization) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Parameterization) ProtoMessage() {} + +func (x *Parameterization) ProtoReflect() protoreflect.Message { + mi := &file_pulumi_codegen_loader_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Parameterization.ProtoReflect.Descriptor instead. +func (*Parameterization) Descriptor() ([]byte, []int) { + return file_pulumi_codegen_loader_proto_rawDescGZIP(), []int{0} +} + +func (x *Parameterization) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Parameterization) GetVersion() string { + if x != nil { + return x.Version + } + return "" +} + +func (x *Parameterization) GetValue() []byte { + if x != nil { + return x.Value + } + return nil +} + // GetSchemaRequest allows the engine to return a schema for a given package and version. type GetSchemaRequest struct { state protoimpl.MessageState @@ -44,12 +108,16 @@ type GetSchemaRequest struct { Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"` // the version for the schema being requested, must be a valid semver or empty. Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` + // the optional download url for the schema being requested. + DownloadUrl string `protobuf:"bytes,3,opt,name=download_url,json=downloadUrl,proto3" json:"download_url,omitempty"` + // the parameterization for the schema being requested, can be empty. + Parameterization *Parameterization `protobuf:"bytes,4,opt,name=parameterization,proto3" json:"parameterization,omitempty"` } func (x *GetSchemaRequest) Reset() { *x = GetSchemaRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pulumi_codegen_loader_proto_msgTypes[0] + mi := &file_pulumi_codegen_loader_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -62,7 +130,7 @@ func (x *GetSchemaRequest) String() string { func (*GetSchemaRequest) ProtoMessage() {} func (x *GetSchemaRequest) ProtoReflect() protoreflect.Message { - mi := &file_pulumi_codegen_loader_proto_msgTypes[0] + mi := &file_pulumi_codegen_loader_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -75,7 +143,7 @@ func (x *GetSchemaRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSchemaRequest.ProtoReflect.Descriptor instead. func (*GetSchemaRequest) Descriptor() ([]byte, []int) { - return file_pulumi_codegen_loader_proto_rawDescGZIP(), []int{0} + return file_pulumi_codegen_loader_proto_rawDescGZIP(), []int{1} } func (x *GetSchemaRequest) GetPackage() string { @@ -92,6 +160,20 @@ func (x *GetSchemaRequest) GetVersion() string { return "" } +func (x *GetSchemaRequest) GetDownloadUrl() string { + if x != nil { + return x.DownloadUrl + } + return "" +} + +func (x *GetSchemaRequest) GetParameterization() *Parameterization { + if x != nil { + return x.Parameterization + } + return nil +} + // GetSchemaResponse returns the schema data for the requested package. type GetSchemaResponse struct { state protoimpl.MessageState @@ -105,7 +187,7 @@ type GetSchemaResponse struct { func (x *GetSchemaResponse) Reset() { *x = GetSchemaResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pulumi_codegen_loader_proto_msgTypes[1] + mi := &file_pulumi_codegen_loader_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -118,7 +200,7 @@ func (x *GetSchemaResponse) String() string { func (*GetSchemaResponse) ProtoMessage() {} func (x *GetSchemaResponse) ProtoReflect() protoreflect.Message { - mi := &file_pulumi_codegen_loader_proto_msgTypes[1] + mi := &file_pulumi_codegen_loader_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -131,7 +213,7 @@ func (x *GetSchemaResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetSchemaResponse.ProtoReflect.Descriptor instead. func (*GetSchemaResponse) Descriptor() ([]byte, []int) { - return file_pulumi_codegen_loader_proto_rawDescGZIP(), []int{1} + return file_pulumi_codegen_loader_proto_rawDescGZIP(), []int{2} } func (x *GetSchemaResponse) GetSchema() []byte { @@ -146,23 +228,35 @@ var File_pulumi_codegen_loader_proto protoreflect.FileDescriptor var file_pulumi_codegen_loader_proto_rawDesc = []byte{ 0x0a, 0x1b, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2f, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x63, - 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x22, 0x46, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, - 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, - 0x6b, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x2b, - 0x0a, 0x11, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x32, 0x4e, 0x0a, 0x06, 0x4c, - 0x6f, 0x61, 0x64, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, - 0x6d, 0x61, 0x12, 0x19, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, - 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, - 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x32, 0x5a, 0x30, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x33, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x22, 0x56, 0x0a, 0x10, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, + 0x74, 0x65, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xb0, + 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x6f, 0x77, 0x6e, 0x6c, + 0x6f, 0x61, 0x64, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x45, 0x0a, 0x10, 0x70, 0x61, + 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x50, + 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x10, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x2b, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x32, 0x4e, + 0x0a, 0x06, 0x4c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x53, + 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x19, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, + 0x47, 0x65, 0x74, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1a, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x63, + 0x68, 0x65, 0x6d, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x32, + 0x5a, 0x30, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, + 0x75, 0x6d, 0x69, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, + 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x67, + 0x65, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -177,19 +271,21 @@ func file_pulumi_codegen_loader_proto_rawDescGZIP() []byte { return file_pulumi_codegen_loader_proto_rawDescData } -var file_pulumi_codegen_loader_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_pulumi_codegen_loader_proto_msgTypes = make([]protoimpl.MessageInfo, 3) var file_pulumi_codegen_loader_proto_goTypes = []interface{}{ - (*GetSchemaRequest)(nil), // 0: codegen.GetSchemaRequest - (*GetSchemaResponse)(nil), // 1: codegen.GetSchemaResponse + (*Parameterization)(nil), // 0: codegen.Parameterization + (*GetSchemaRequest)(nil), // 1: codegen.GetSchemaRequest + (*GetSchemaResponse)(nil), // 2: codegen.GetSchemaResponse } var file_pulumi_codegen_loader_proto_depIdxs = []int32{ - 0, // 0: codegen.Loader.GetSchema:input_type -> codegen.GetSchemaRequest - 1, // 1: codegen.Loader.GetSchema:output_type -> codegen.GetSchemaResponse - 1, // [1:2] is the sub-list for method output_type - 0, // [0:1] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name + 0, // 0: codegen.GetSchemaRequest.parameterization:type_name -> codegen.Parameterization + 1, // 1: codegen.Loader.GetSchema:input_type -> codegen.GetSchemaRequest + 2, // 2: codegen.Loader.GetSchema:output_type -> codegen.GetSchemaResponse + 2, // [2:3] is the sub-list for method output_type + 1, // [1:2] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name } func init() { file_pulumi_codegen_loader_proto_init() } @@ -199,7 +295,7 @@ func file_pulumi_codegen_loader_proto_init() { } if !protoimpl.UnsafeEnabled { file_pulumi_codegen_loader_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetSchemaRequest); i { + switch v := v.(*Parameterization); i { case 0: return &v.state case 1: @@ -211,6 +307,18 @@ func file_pulumi_codegen_loader_proto_init() { } } file_pulumi_codegen_loader_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetSchemaRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pulumi_codegen_loader_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetSchemaResponse); i { case 0: return &v.state @@ -229,7 +337,7 @@ func file_pulumi_codegen_loader_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pulumi_codegen_loader_proto_rawDesc, NumEnums: 0, - NumMessages: 2, + NumMessages: 3, NumExtensions: 0, NumServices: 1, }, diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine.pb.go index 93035e763..967ae773f 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine.pb.go @@ -24,6 +24,7 @@ import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" emptypb "google.golang.org/protobuf/types/known/emptypb" + structpb "google.golang.org/protobuf/types/known/structpb" reflect "reflect" sync "sync" ) @@ -350,52 +351,122 @@ func (*SetRootResourceResponse) Descriptor() ([]byte, []int) { return file_pulumi_engine_proto_rawDescGZIP(), []int{4} } +type StartDebuggingRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // the debug configuration parameters. These are meant to be in the right format for the DAP protocol to consume. + Config *structpb.Struct `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // the string to display to the user with instructions on how to connect to the debugger. + Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` +} + +func (x *StartDebuggingRequest) Reset() { + *x = StartDebuggingRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pulumi_engine_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StartDebuggingRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StartDebuggingRequest) ProtoMessage() {} + +func (x *StartDebuggingRequest) ProtoReflect() protoreflect.Message { + mi := &file_pulumi_engine_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StartDebuggingRequest.ProtoReflect.Descriptor instead. +func (*StartDebuggingRequest) Descriptor() ([]byte, []int) { + return file_pulumi_engine_proto_rawDescGZIP(), []int{5} +} + +func (x *StartDebuggingRequest) GetConfig() *structpb.Struct { + if x != nil { + return x.Config + } + return nil +} + +func (x *StartDebuggingRequest) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + var File_pulumi_engine_proto protoreflect.FileDescriptor var file_pulumi_engine_proto_rawDesc = []byte{ 0x0a, 0x13, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x09, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa6, 0x01, - 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x08, - 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, - 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x65, - 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, - 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, - 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, - 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x70, 0x68, 0x65, - 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x70, 0x68, - 0x65, 0x6d, 0x65, 0x72, 0x61, 0x6c, 0x22, 0x18, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, - 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x22, 0x2b, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, - 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x22, 0x2a, 0x0a, - 0x16, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x22, 0x19, 0x0a, 0x17, 0x53, 0x65, 0x74, - 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x3a, 0x0a, 0x0b, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x76, 0x65, 0x72, - 0x69, 0x74, 0x79, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x00, 0x12, 0x08, - 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, 0x52, 0x4e, - 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, - 0x32, 0xf8, 0x01, 0x0a, 0x06, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x0a, 0x03, 0x4c, - 0x6f, 0x67, 0x12, 0x15, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x4c, - 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, - 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, - 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, - 0x5a, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x53, + 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa6, 0x01, 0x0a, 0x0a, + 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x08, 0x73, 0x65, + 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, + 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x76, 0x65, + 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x18, + 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x73, 0x74, + 0x72, 0x65, 0x61, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, 0x65, + 0x72, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x70, 0x68, 0x65, 0x6d, + 0x65, 0x72, 0x61, 0x6c, 0x22, 0x18, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x2b, + 0x0a, 0x17, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x22, 0x2a, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, - 0x63, 0x2e, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x34, 0x5a, 0x32, 0x67, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x22, 0x19, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x52, 0x6f, + 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x62, 0x0a, 0x15, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x67, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, + 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0x3a, 0x0a, 0x0b, 0x4c, 0x6f, 0x67, 0x53, 0x65, 0x76, + 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x00, + 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, + 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x10, 0x03, 0x32, 0xc6, 0x02, 0x0a, 0x06, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x36, 0x0a, + 0x03, 0x4c, 0x6f, 0x67, 0x12, 0x15, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, + 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x5a, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, + 0x72, 0x70, 0x63, 0x2e, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4c, 0x0a, + 0x0e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x12, + 0x20, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x3b, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, @@ -415,7 +486,7 @@ func file_pulumi_engine_proto_rawDescGZIP() []byte { } var file_pulumi_engine_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_pulumi_engine_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_pulumi_engine_proto_msgTypes = make([]protoimpl.MessageInfo, 6) var file_pulumi_engine_proto_goTypes = []interface{}{ (LogSeverity)(0), // 0: pulumirpc.LogSeverity (*LogRequest)(nil), // 1: pulumirpc.LogRequest @@ -423,21 +494,26 @@ var file_pulumi_engine_proto_goTypes = []interface{}{ (*GetRootResourceResponse)(nil), // 3: pulumirpc.GetRootResourceResponse (*SetRootResourceRequest)(nil), // 4: pulumirpc.SetRootResourceRequest (*SetRootResourceResponse)(nil), // 5: pulumirpc.SetRootResourceResponse - (*emptypb.Empty)(nil), // 6: google.protobuf.Empty + (*StartDebuggingRequest)(nil), // 6: pulumirpc.StartDebuggingRequest + (*structpb.Struct)(nil), // 7: google.protobuf.Struct + (*emptypb.Empty)(nil), // 8: google.protobuf.Empty } var file_pulumi_engine_proto_depIdxs = []int32{ 0, // 0: pulumirpc.LogRequest.severity:type_name -> pulumirpc.LogSeverity - 1, // 1: pulumirpc.Engine.Log:input_type -> pulumirpc.LogRequest - 2, // 2: pulumirpc.Engine.GetRootResource:input_type -> pulumirpc.GetRootResourceRequest - 4, // 3: pulumirpc.Engine.SetRootResource:input_type -> pulumirpc.SetRootResourceRequest - 6, // 4: pulumirpc.Engine.Log:output_type -> google.protobuf.Empty - 3, // 5: pulumirpc.Engine.GetRootResource:output_type -> pulumirpc.GetRootResourceResponse - 5, // 6: pulumirpc.Engine.SetRootResource:output_type -> pulumirpc.SetRootResourceResponse - 4, // [4:7] is the sub-list for method output_type - 1, // [1:4] is the sub-list for method input_type - 1, // [1:1] is the sub-list for extension type_name - 1, // [1:1] is the sub-list for extension extendee - 0, // [0:1] is the sub-list for field type_name + 7, // 1: pulumirpc.StartDebuggingRequest.config:type_name -> google.protobuf.Struct + 1, // 2: pulumirpc.Engine.Log:input_type -> pulumirpc.LogRequest + 2, // 3: pulumirpc.Engine.GetRootResource:input_type -> pulumirpc.GetRootResourceRequest + 4, // 4: pulumirpc.Engine.SetRootResource:input_type -> pulumirpc.SetRootResourceRequest + 6, // 5: pulumirpc.Engine.StartDebugging:input_type -> pulumirpc.StartDebuggingRequest + 8, // 6: pulumirpc.Engine.Log:output_type -> google.protobuf.Empty + 3, // 7: pulumirpc.Engine.GetRootResource:output_type -> pulumirpc.GetRootResourceResponse + 5, // 8: pulumirpc.Engine.SetRootResource:output_type -> pulumirpc.SetRootResourceResponse + 8, // 9: pulumirpc.Engine.StartDebugging:output_type -> google.protobuf.Empty + 6, // [6:10] is the sub-list for method output_type + 2, // [2:6] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name } func init() { file_pulumi_engine_proto_init() } @@ -506,6 +582,18 @@ func file_pulumi_engine_proto_init() { return nil } } + file_pulumi_engine_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*StartDebuggingRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -513,7 +601,7 @@ func file_pulumi_engine_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pulumi_engine_proto_rawDesc, NumEnums: 1, - NumMessages: 5, + NumMessages: 6, NumExtensions: 0, NumServices: 1, }, diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine_grpc.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine_grpc.pb.go index 3316ef918..1ce4b0abe 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine_grpc.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/engine_grpc.pb.go @@ -30,6 +30,9 @@ type EngineClient interface { GetRootResource(ctx context.Context, in *GetRootResourceRequest, opts ...grpc.CallOption) (*GetRootResourceResponse, error) // SetRootResource sets the URN of the root resource. SetRootResource(ctx context.Context, in *SetRootResourceRequest, opts ...grpc.CallOption) (*SetRootResourceResponse, error) + // StartDebugging indicates to the engine that the program has started under a debugger, and the engine + // should notify the user of how to connect to the debugger. + StartDebugging(ctx context.Context, in *StartDebuggingRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) } type engineClient struct { @@ -67,6 +70,15 @@ func (c *engineClient) SetRootResource(ctx context.Context, in *SetRootResourceR return out, nil } +func (c *engineClient) StartDebugging(ctx context.Context, in *StartDebuggingRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, "/pulumirpc.Engine/StartDebugging", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // EngineServer is the server API for Engine service. // All implementations must embed UnimplementedEngineServer // for forward compatibility @@ -78,6 +90,9 @@ type EngineServer interface { GetRootResource(context.Context, *GetRootResourceRequest) (*GetRootResourceResponse, error) // SetRootResource sets the URN of the root resource. SetRootResource(context.Context, *SetRootResourceRequest) (*SetRootResourceResponse, error) + // StartDebugging indicates to the engine that the program has started under a debugger, and the engine + // should notify the user of how to connect to the debugger. + StartDebugging(context.Context, *StartDebuggingRequest) (*emptypb.Empty, error) mustEmbedUnimplementedEngineServer() } @@ -94,6 +109,9 @@ func (UnimplementedEngineServer) GetRootResource(context.Context, *GetRootResour func (UnimplementedEngineServer) SetRootResource(context.Context, *SetRootResourceRequest) (*SetRootResourceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SetRootResource not implemented") } +func (UnimplementedEngineServer) StartDebugging(context.Context, *StartDebuggingRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method StartDebugging not implemented") +} func (UnimplementedEngineServer) mustEmbedUnimplementedEngineServer() {} // UnsafeEngineServer may be embedded to opt out of forward compatibility for this service. @@ -161,6 +179,24 @@ func _Engine_SetRootResource_Handler(srv interface{}, ctx context.Context, dec f return interceptor(ctx, in, info, handler) } +func _Engine_StartDebugging_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(StartDebuggingRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(EngineServer).StartDebugging(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pulumirpc.Engine/StartDebugging", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(EngineServer).StartDebugging(ctx, req.(*StartDebuggingRequest)) + } + return interceptor(ctx, in, info, handler) +} + // Engine_ServiceDesc is the grpc.ServiceDesc for Engine service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -180,6 +216,10 @@ var Engine_ServiceDesc = grpc.ServiceDesc{ MethodName: "SetRootResource", Handler: _Engine_SetRootResource_Handler, }, + { + MethodName: "StartDebugging", + Handler: _Engine_StartDebugging_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "pulumi/engine.proto", diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/errors.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/errors.pb.go index f0e17e9fc..b2290c411 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/errors.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/errors.pb.go @@ -89,6 +89,114 @@ func (x *ErrorCause) GetStackTrace() string { return "" } +// An error that can be returned from a component provider and includes details of the +// error, which can be multiple properties. +type InputPropertiesError struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The list of invalid input properties. + Errors []*InputPropertiesError_PropertyError `protobuf:"bytes,1,rep,name=errors,proto3" json:"errors,omitempty"` +} + +func (x *InputPropertiesError) Reset() { + *x = InputPropertiesError{} + if protoimpl.UnsafeEnabled { + mi := &file_pulumi_errors_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InputPropertiesError) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InputPropertiesError) ProtoMessage() {} + +func (x *InputPropertiesError) ProtoReflect() protoreflect.Message { + mi := &file_pulumi_errors_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InputPropertiesError.ProtoReflect.Descriptor instead. +func (*InputPropertiesError) Descriptor() ([]byte, []int) { + return file_pulumi_errors_proto_rawDescGZIP(), []int{1} +} + +func (x *InputPropertiesError) GetErrors() []*InputPropertiesError_PropertyError { + if x != nil { + return x.Errors + } + return nil +} + +// A single invalid input property. +type InputPropertiesError_PropertyError struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The path to the property that is invalid. + PropertyPath string `protobuf:"bytes,1,opt,name=property_path,json=propertyPath,proto3" json:"property_path,omitempty"` + // The reason the property is invalid. + Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"` +} + +func (x *InputPropertiesError_PropertyError) Reset() { + *x = InputPropertiesError_PropertyError{} + if protoimpl.UnsafeEnabled { + mi := &file_pulumi_errors_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InputPropertiesError_PropertyError) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InputPropertiesError_PropertyError) ProtoMessage() {} + +func (x *InputPropertiesError_PropertyError) ProtoReflect() protoreflect.Message { + mi := &file_pulumi_errors_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InputPropertiesError_PropertyError.ProtoReflect.Descriptor instead. +func (*InputPropertiesError_PropertyError) Descriptor() ([]byte, []int) { + return file_pulumi_errors_proto_rawDescGZIP(), []int{1, 0} +} + +func (x *InputPropertiesError_PropertyError) GetPropertyPath() string { + if x != nil { + return x.PropertyPath + } + return "" +} + +func (x *InputPropertiesError_PropertyError) GetReason() string { + if x != nil { + return x.Reason + } + return "" +} + var File_pulumi_errors_proto protoreflect.FileDescriptor var file_pulumi_errors_proto_rawDesc = []byte{ @@ -98,11 +206,22 @@ var file_pulumi_errors_proto_rawDesc = []byte{ 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, - 0x61, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x63, 0x65, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, - 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x70, 0x75, - 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x2f, 0x67, 0x6f, 0x3b, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x63, 0x6b, 0x54, 0x72, 0x61, 0x63, 0x65, 0x22, 0xab, 0x01, 0x0a, 0x14, 0x49, 0x6e, 0x70, + 0x75, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x12, 0x45, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, + 0x70, 0x75, 0x74, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x1a, 0x4c, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x50, 0x61, 0x74, 0x68, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x70, 0x75, 0x6c, 0x75, + 0x6d, 0x69, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, + 0x67, 0x6f, 0x3b, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -117,16 +236,19 @@ func file_pulumi_errors_proto_rawDescGZIP() []byte { return file_pulumi_errors_proto_rawDescData } -var file_pulumi_errors_proto_msgTypes = make([]protoimpl.MessageInfo, 1) +var file_pulumi_errors_proto_msgTypes = make([]protoimpl.MessageInfo, 3) var file_pulumi_errors_proto_goTypes = []interface{}{ - (*ErrorCause)(nil), // 0: pulumirpc.ErrorCause + (*ErrorCause)(nil), // 0: pulumirpc.ErrorCause + (*InputPropertiesError)(nil), // 1: pulumirpc.InputPropertiesError + (*InputPropertiesError_PropertyError)(nil), // 2: pulumirpc.InputPropertiesError.PropertyError } var file_pulumi_errors_proto_depIdxs = []int32{ - 0, // [0:0] is the sub-list for method output_type - 0, // [0:0] is the sub-list for method input_type - 0, // [0:0] is the sub-list for extension type_name - 0, // [0:0] is the sub-list for extension extendee - 0, // [0:0] is the sub-list for field type_name + 2, // 0: pulumirpc.InputPropertiesError.errors:type_name -> pulumirpc.InputPropertiesError.PropertyError + 1, // [1:1] is the sub-list for method output_type + 1, // [1:1] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name } func init() { file_pulumi_errors_proto_init() } @@ -147,6 +269,30 @@ func file_pulumi_errors_proto_init() { return nil } } + file_pulumi_errors_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InputPropertiesError); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pulumi_errors_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InputPropertiesError_PropertyError); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -154,7 +300,7 @@ func file_pulumi_errors_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pulumi_errors_proto_rawDesc, NumEnums: 0, - NumMessages: 1, + NumMessages: 3, NumExtensions: 0, NumServices: 0, }, diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/language.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/language.pb.go index 78a26f172..9e5777e57 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/language.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/language.pb.go @@ -283,9 +283,9 @@ type GetProgramDependenciesRequest struct { // Deprecated: Do not use. Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` // the project name, the engine always sets this to "deprecated" now. // Deprecated: Do not use. - Pwd string `protobuf:"bytes,2,opt,name=pwd,proto3" json:"pwd,omitempty"` // the program's working directory. + Pwd string `protobuf:"bytes,2,opt,name=pwd,proto3" json:"pwd,omitempty"` // the program's working directory. Deprecated, use info.program_directory instead. // Deprecated: Do not use. - Program string `protobuf:"bytes,3,opt,name=program,proto3" json:"program,omitempty"` // the path to the program. + Program string `protobuf:"bytes,3,opt,name=program,proto3" json:"program,omitempty"` // the path to the program. Deprecated, use info.entry_point instead. TransitiveDependencies bool `protobuf:"varint,4,opt,name=transitiveDependencies,proto3" json:"transitiveDependencies,omitempty"` // if transitive dependencies should be included in the result. Info *ProgramInfo `protobuf:"bytes,5,opt,name=info,proto3" json:"info,omitempty"` // the program info to use to calculate dependencies. } @@ -470,9 +470,9 @@ type GetRequiredPluginsRequest struct { // Deprecated: Do not use. Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` // the project name, the engine always sets this to "deprecated" now. // Deprecated: Do not use. - Pwd string `protobuf:"bytes,2,opt,name=pwd,proto3" json:"pwd,omitempty"` // the program's working directory. + Pwd string `protobuf:"bytes,2,opt,name=pwd,proto3" json:"pwd,omitempty"` // the program's working directory. Deprecated, use info.program_directory instead. // Deprecated: Do not use. - Program string `protobuf:"bytes,3,opt,name=program,proto3" json:"program,omitempty"` // the path to the program. + Program string `protobuf:"bytes,3,opt,name=program,proto3" json:"program,omitempty"` // the path to the program. Deprecated, use info.entry_point instead. Info *ProgramInfo `protobuf:"bytes,4,opt,name=info,proto3" json:"info,omitempty"` // the program info to use to calculate plugins. } @@ -596,7 +596,7 @@ type RunRequest struct { Stack string `protobuf:"bytes,2,opt,name=stack,proto3" json:"stack,omitempty"` // the name of the stack being deployed into. Pwd string `protobuf:"bytes,3,opt,name=pwd,proto3" json:"pwd,omitempty"` // the program's working directory. // Deprecated: Do not use. - Program string `protobuf:"bytes,4,opt,name=program,proto3" json:"program,omitempty"` // the path to the program to execute. + Program string `protobuf:"bytes,4,opt,name=program,proto3" json:"program,omitempty"` // the path to the program to execute. Deprecated, use info.entry_point instead. Args []string `protobuf:"bytes,5,rep,name=args,proto3" json:"args,omitempty"` // any arguments to pass to the program. Config map[string]string `protobuf:"bytes,6,rep,name=config,proto3" json:"config,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // the configuration variables to apply before running. DryRun bool `protobuf:"varint,7,opt,name=dryRun,proto3" json:"dryRun,omitempty"` // true if we're only doing a dryrun (preview). @@ -607,6 +607,9 @@ type RunRequest struct { Organization string `protobuf:"bytes,12,opt,name=organization,proto3" json:"organization,omitempty"` // the organization of the stack being deployed into. ConfigPropertyMap *structpb.Struct `protobuf:"bytes,13,opt,name=configPropertyMap,proto3" json:"configPropertyMap,omitempty"` // the configuration variables to apply before running. Info *ProgramInfo `protobuf:"bytes,14,opt,name=info,proto3" json:"info,omitempty"` // the program info to use to execute the program. + // The target of a codegen.LoaderServer to use for loading schemas. + LoaderTarget string `protobuf:"bytes,15,opt,name=loader_target,json=loaderTarget,proto3" json:"loader_target,omitempty"` + AttachDebugger bool `protobuf:"varint,16,opt,name=attach_debugger,json=attachDebugger,proto3" json:"attach_debugger,omitempty"` // true if the language host is supposed to start the program under a debugger. } func (x *RunRequest) Reset() { @@ -740,6 +743,20 @@ func (x *RunRequest) GetInfo() *ProgramInfo { return nil } +func (x *RunRequest) GetLoaderTarget() string { + if x != nil { + return x.LoaderTarget + } + return "" +} + +func (x *RunRequest) GetAttachDebugger() bool { + if x != nil { + return x.AttachDebugger + } + return false +} + // RunResponse is the response back from the interpreter/source back to the monitor. type RunResponse struct { state protoimpl.MessageState @@ -806,9 +823,10 @@ type InstallDependenciesRequest struct { unknownFields protoimpl.UnknownFields // Deprecated: Do not use. - Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"` // the program's working directory. - IsTerminal bool `protobuf:"varint,2,opt,name=is_terminal,json=isTerminal,proto3" json:"is_terminal,omitempty"` // if we are running in a terminal and should use ANSI codes - Info *ProgramInfo `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"` // the program info to use to execute the plugin. + Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"` // the program's working directory. Deprecated, use info.program_directory instead. + IsTerminal bool `protobuf:"varint,2,opt,name=is_terminal,json=isTerminal,proto3" json:"is_terminal,omitempty"` // if we are running in a terminal and should use ANSI codes + Info *ProgramInfo `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"` // the program info to use to execute the plugin. + UseLanguageVersionTools bool `protobuf:"varint,4,opt,name=use_language_version_tools,json=useLanguageVersionTools,proto3" json:"use_language_version_tools,omitempty"` // if we should use language version tools like pyenv or } func (x *InstallDependenciesRequest) Reset() { @@ -865,6 +883,13 @@ func (x *InstallDependenciesRequest) GetInfo() *ProgramInfo { return nil } +func (x *InstallDependenciesRequest) GetUseLanguageVersionTools() bool { + if x != nil { + return x.UseLanguageVersionTools + } + return false +} + type InstallDependenciesResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1100,7 +1125,7 @@ type RunPluginRequest struct { Pwd string `protobuf:"bytes,1,opt,name=pwd,proto3" json:"pwd,omitempty"` // the program's working directory. // Deprecated: Do not use. - Program string `protobuf:"bytes,2,opt,name=program,proto3" json:"program,omitempty"` // the path to the program to execute. + Program string `protobuf:"bytes,2,opt,name=program,proto3" json:"program,omitempty"` // the path to the program to execute. Deprecated, use info.entry_point instead. Args []string `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` // any arguments to pass to the program. Env []string `protobuf:"bytes,4,rep,name=env,proto3" json:"env,omitempty"` // any environment variables to set as part of the program. Info *ProgramInfo `protobuf:"bytes,5,opt,name=info,proto3" json:"info,omitempty"` // the program info to use to execute the plugin. @@ -1549,6 +1574,9 @@ type GeneratePackageRequest struct { // local dependencies to use instead of using the package system. This is a map of package name to a local // path of a language specific artifact to use for the SDK for that package. LocalDependencies map[string]string `protobuf:"bytes,5,rep,name=local_dependencies,json=localDependencies,proto3" json:"local_dependencies,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // if true generates an SDK appropriate for local usage, this may differ from a standard publishable SDK depending + // on the language. + Local bool `protobuf:"varint,6,opt,name=local,proto3" json:"local,omitempty"` } func (x *GeneratePackageRequest) Reset() { @@ -1618,6 +1646,13 @@ func (x *GeneratePackageRequest) GetLocalDependencies() map[string]string { return nil } +func (x *GeneratePackageRequest) GetLocal() bool { + if x != nil { + return x.Local + } + return false +} + type GeneratePackageResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1920,7 +1955,7 @@ var file_pulumi_language_proto_rawDesc = []byte{ 0x12, 0x35, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x07, - 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x22, 0xb4, 0x04, 0x0a, 0x0a, 0x52, 0x75, 0x6e, 0x52, + 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x22, 0x82, 0x05, 0x0a, 0x0a, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, @@ -1952,258 +1987,268 @@ var file_pulumi_language_proto_rawDesc = []byte{ 0x65, 0x72, 0x74, 0x79, 0x4d, 0x61, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, - 0x6e, 0x66, 0x6f, 0x1a, 0x39, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x37, - 0x0a, 0x0b, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x04, 0x62, 0x61, 0x69, 0x6c, 0x22, 0x8b, 0x01, 0x0a, 0x1a, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x74, - 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, - 0x73, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x04, 0x69, 0x6e, 0x66, - 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x4d, 0x0a, 0x1b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, - 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x74, - 0x64, 0x65, 0x72, 0x72, 0x22, 0x43, 0x0a, 0x15, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, - 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, - 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0xae, 0x04, 0x0a, 0x13, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, - 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x70, 0x75, 0x6c, 0x75, - 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, - 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, - 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x63, 0x68, 0x6f, - 0x69, 0x63, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, - 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x1a, 0xca, 0x01, 0x0a, 0x12, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x50, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, - 0x70, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x70, - 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, - 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, - 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x69, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x0b, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2a, - 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, - 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x01, 0x22, 0x52, 0x0a, 0x16, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, - 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x22, 0x94, - 0x01, 0x0a, 0x10, 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x77, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x70, 0x77, 0x64, 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x2a, 0x0a, 0x04, 0x69, 0x6e, 0x66, - 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x6f, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, - 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x74, - 0x64, 0x6f, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, - 0x64, 0x6f, 0x75, 0x74, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x12, 0x1c, - 0x0a, 0x08, 0x65, 0x78, 0x69, 0x74, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x48, 0x00, 0x52, 0x08, 0x65, 0x78, 0x69, 0x74, 0x63, 0x6f, 0x64, 0x65, 0x42, 0x08, 0x0a, 0x06, - 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0xd7, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x45, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, - 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, - 0x74, 0x72, 0x69, 0x63, 0x74, 0x1a, 0x39, 0x0a, 0x0b, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xdd, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, - 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, - 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, - 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x12, 0x46, 0x0a, - 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, - 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0xf4, 0x02, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, - 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x79, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x72, 0x69, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x74, 0x72, - 0x69, 0x63, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x61, - 0x72, 0x67, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x61, 0x64, + 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x61, 0x64, + 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x74, 0x74, 0x61, + 0x63, 0x68, 0x5f, 0x64, 0x65, 0x62, 0x75, 0x67, 0x67, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0e, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x44, 0x65, 0x62, 0x75, 0x67, 0x67, 0x65, + 0x72, 0x1a, 0x39, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x37, 0x0a, 0x0b, + 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, + 0x72, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x04, 0x62, 0x61, 0x69, 0x6c, 0x22, 0xc8, 0x01, 0x0a, 0x1a, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, + 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x74, 0x65, 0x72, + 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x54, + 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, + 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, + 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x1a, 0x75, 0x73, 0x65, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, + 0x61, 0x67, 0x65, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6f, 0x6c, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x75, 0x73, 0x65, 0x4c, 0x61, 0x6e, 0x67, + 0x75, 0x61, 0x67, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, + 0x22, 0x4d, 0x0a, 0x1b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, + 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x22, + 0x43, 0x0a, 0x15, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, + 0x69, 0x6e, 0x66, 0x6f, 0x22, 0xae, 0x04, 0x0a, 0x13, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x50, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x4b, 0x0a, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, + 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, 0x73, 0x12, + 0x4b, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x31, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x1a, 0xca, 0x01, 0x0a, + 0x12, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x12, 0x50, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, + 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6e, 0x74, 0x33, 0x32, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x69, 0x6e, 0x74, + 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, + 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2a, 0x0a, 0x11, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0a, + 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, + 0x54, 0x33, 0x32, 0x10, 0x01, 0x22, 0x52, 0x0a, 0x16, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, + 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x38, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, + 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x10, 0x52, 0x75, + 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, + 0x0a, 0x03, 0x70, 0x77, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x77, 0x64, + 0x12, 0x1c, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x12, + 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, + 0x67, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x03, 0x65, 0x6e, 0x76, 0x12, 0x2a, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x22, 0x6f, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, + 0x18, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, + 0x00, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x12, 0x1c, 0x0a, 0x08, 0x65, 0x78, 0x69, + 0x74, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x08, 0x65, + 0x78, 0x69, 0x74, 0x63, 0x6f, 0x64, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, + 0x74, 0x22, 0xd7, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, + 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, + 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x61, 0x64, + 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, + 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x1a, 0x39, 0x0a, 0x0b, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xdd, 0x01, 0x0a, 0x17, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, + 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, + 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, + 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x12, 0x46, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x1a, 0x39, 0x0a, 0x0b, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, + 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf4, 0x02, 0x0a, 0x16, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x64, 0x69, 0x72, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, + 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, + 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x12, 0x23, + 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x54, 0x61, 0x72, + 0x67, 0x65, 0x74, 0x12, 0x67, 0x0a, 0x12, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, + 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x38, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, + 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, + 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x1a, 0x44, 0x0a, 0x16, + 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, + 0x38, 0x01, 0x22, 0x5a, 0x0a, 0x17, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, + 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x63, + 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, + 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x22, 0xcb, + 0x03, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, + 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, + 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, + 0x52, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x46, 0x69, 0x6c, + 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x72, 0x61, 0x46, 0x69, + 0x6c, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x61, + 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x67, 0x0a, 0x12, 0x6c, 0x6f, 0x63, 0x61, - 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x06, + 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, - 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, + 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, - 0x73, 0x1a, 0x44, 0x0a, 0x16, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, - 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5a, 0x0a, 0x17, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, 0x44, 0x69, 0x61, 0x67, - 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, - 0x69, 0x63, 0x73, 0x22, 0xb5, 0x03, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, - 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, - 0x68, 0x65, 0x6d, 0x61, 0x12, 0x52, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x66, 0x69, - 0x6c, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x75, 0x6c, 0x75, - 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x74, - 0x72, 0x61, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x65, 0x78, - 0x74, 0x72, 0x61, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x61, 0x64, - 0x65, 0x72, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x72, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x67, 0x0a, - 0x12, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, - 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x75, 0x6c, 0x75, - 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, - 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x6f, 0x63, - 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x11, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, - 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x45, 0x78, 0x74, 0x72, 0x61, 0x46, - 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x44, 0x0a, 0x16, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, 0x65, - 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5a, 0x0a, 0x17, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, 0x6f, - 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x75, - 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, 0x2e, - 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, 0x67, - 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x22, 0x6f, 0x0a, 0x0b, 0x50, 0x61, 0x63, 0x6b, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, - 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x10, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x79, 0x12, 0x33, 0x0a, 0x15, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x33, 0x0a, 0x0c, 0x50, 0x61, 0x63, 0x6b, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x72, 0x74, 0x69, - 0x66, 0x61, 0x63, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x50, 0x61, 0x74, 0x68, 0x32, 0x84, 0x08, - 0x0a, 0x0f, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, - 0x65, 0x12, 0x63, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, - 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x24, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, - 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, - 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x03, 0x52, 0x75, 0x6e, 0x12, 0x15, 0x2e, - 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, - 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x40, - 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x15, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x00, - 0x12, 0x68, 0x0a, 0x13, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, - 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x12, 0x25, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, - 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, - 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x5e, 0x0a, 0x15, 0x52, 0x75, - 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f, 0x6d, - 0x70, 0x74, 0x73, 0x12, 0x20, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, - 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, - 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x05, 0x41, 0x62, - 0x6f, 0x75, 0x74, 0x12, 0x17, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, - 0x41, 0x62, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x70, - 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6f, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, - 0x65, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, - 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, - 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x70, - 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, - 0x72, 0x61, 0x6d, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x09, 0x52, 0x75, 0x6e, - 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, - 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, - 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x5a, 0x0a, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, - 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, - 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, - 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, - 0x00, 0x12, 0x5a, 0x0a, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, - 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, 0x0a, - 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, - 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x1a, 0x3d, 0x0a, 0x0f, 0x45, 0x78, 0x74, 0x72, 0x61, + 0x46, 0x69, 0x6c, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x44, 0x0a, 0x16, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x44, + 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5a, 0x0a, 0x17, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x04, 0x50, 0x61, 0x63, - 0x6b, 0x12, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, - 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x75, 0x6c, 0x75, - 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x00, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, - 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, - 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, - 0x3b, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x33, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0b, 0x64, 0x69, 0x61, 0x67, 0x6e, + 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x70, + 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x63, 0x6f, 0x64, 0x65, 0x67, 0x65, 0x6e, + 0x2e, 0x44, 0x69, 0x61, 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x52, 0x0b, 0x64, 0x69, 0x61, + 0x67, 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x73, 0x22, 0x6f, 0x0a, 0x0b, 0x50, 0x61, 0x63, 0x6b, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x61, 0x63, 0x6b, 0x61, + 0x67, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x10, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x79, 0x12, 0x33, 0x0a, 0x15, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x14, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x33, 0x0a, 0x0c, 0x50, 0x61, 0x63, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x72, 0x74, + 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x50, 0x61, 0x74, 0x68, 0x32, 0x84, + 0x08, 0x0a, 0x0f, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x52, 0x75, 0x6e, 0x74, 0x69, + 0x6d, 0x65, 0x12, 0x63, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, + 0x64, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x24, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, + 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x03, 0x52, 0x75, 0x6e, 0x12, 0x15, + 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, + 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x40, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x15, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, + 0x00, 0x12, 0x68, 0x0a, 0x13, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, + 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x12, 0x25, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, + 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x26, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x6c, 0x6c, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x5e, 0x0a, 0x15, 0x52, + 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x73, 0x12, 0x20, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, + 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x05, 0x41, + 0x62, 0x6f, 0x75, 0x74, 0x12, 0x17, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, + 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x62, 0x6f, 0x75, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x6f, 0x0a, 0x16, 0x47, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, + 0x69, 0x65, 0x73, 0x12, 0x28, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, + 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, + 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, + 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, + 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x09, 0x52, 0x75, + 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x1b, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, + 0x72, 0x70, 0x63, 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x52, 0x75, 0x6e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x5a, 0x0a, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, + 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, + 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, + 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, + 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5a, + 0x0a, 0x0f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, + 0x65, 0x12, 0x21, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, + 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x04, 0x50, 0x61, + 0x63, 0x6b, 0x12, 0x16, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x70, 0x75, 0x6c, + 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x34, 0x5a, 0x32, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x2f, 0x70, 0x75, 0x6c, 0x75, 0x6d, + 0x69, 0x2f, 0x73, 0x64, 0x6b, 0x2f, 0x76, 0x33, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, + 0x6f, 0x3b, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider.pb.go index 2984ea3bf..8c83858de 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider.pb.go @@ -849,9 +849,13 @@ type CallResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Return *structpb.Struct `protobuf:"bytes,1,opt,name=return,proto3" json:"return,omitempty"` // the returned values, if call was successful. - ReturnDependencies map[string]*CallResponse_ReturnDependencies `protobuf:"bytes,2,rep,name=returnDependencies,proto3" json:"returnDependencies,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // a map from return value keys to the dependencies of the return value. - Failures []*CheckFailure `protobuf:"bytes,3,rep,name=failures,proto3" json:"failures,omitempty"` // the failures if any arguments didn't pass verification. + Return *structpb.Struct `protobuf:"bytes,1,opt,name=return,proto3" json:"return,omitempty"` // the returned values, if call was successful. + Failures []*CheckFailure `protobuf:"bytes,3,rep,name=failures,proto3" json:"failures,omitempty"` // the failures if any arguments didn't pass verification. + // a map from return value keys to the dependencies of the return value. + // + // returnDependencies will be augmented by the set of dependencies specified in return + // via output property values. + ReturnDependencies map[string]*CallResponse_ReturnDependencies `protobuf:"bytes,2,rep,name=returnDependencies,proto3" json:"returnDependencies,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } func (x *CallResponse) Reset() { @@ -893,16 +897,16 @@ func (x *CallResponse) GetReturn() *structpb.Struct { return nil } -func (x *CallResponse) GetReturnDependencies() map[string]*CallResponse_ReturnDependencies { +func (x *CallResponse) GetFailures() []*CheckFailure { if x != nil { - return x.ReturnDependencies + return x.Failures } return nil } -func (x *CallResponse) GetFailures() []*CheckFailure { +func (x *CallResponse) GetReturnDependencies() map[string]*CallResponse_ReturnDependencies { if x != nil { - return x.Failures + return x.ReturnDependencies } return nil } @@ -923,6 +927,8 @@ type CheckRequest struct { // See also: https://www.pulumi.com/docs/concepts/options/ignorechanges/ News *structpb.Struct `protobuf:"bytes,3,opt,name=news,proto3" json:"news,omitempty"` RandomSeed []byte `protobuf:"bytes,5,opt,name=randomSeed,proto3" json:"randomSeed,omitempty"` // a deterministically random hash, primarily intended for global unique naming. + Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` // the Pulumi name for this resource. + Type string `protobuf:"bytes,7,opt,name=type,proto3" json:"type,omitempty"` // the Pulumi type for this resource. } func (x *CheckRequest) Reset() { @@ -985,6 +991,20 @@ func (x *CheckRequest) GetRandomSeed() []byte { return nil } +func (x *CheckRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *CheckRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + type CheckResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1107,6 +1127,8 @@ type DiffRequest struct { News *structpb.Struct `protobuf:"bytes,4,opt,name=news,proto3" json:"news,omitempty"` IgnoreChanges []string `protobuf:"bytes,5,rep,name=ignoreChanges,proto3" json:"ignoreChanges,omitempty"` // a set of property paths that should be treated as unchanged. OldInputs *structpb.Struct `protobuf:"bytes,6,opt,name=old_inputs,json=oldInputs,proto3" json:"old_inputs,omitempty"` // the old input values of the resource to diff. + Name string `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"` // the Pulumi name for this resource. + Type string `protobuf:"bytes,8,opt,name=type,proto3" json:"type,omitempty"` // the Pulumi type for this resource. } func (x *DiffRequest) Reset() { @@ -1183,6 +1205,20 @@ func (x *DiffRequest) GetOldInputs() *structpb.Struct { return nil } +func (x *DiffRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *DiffRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + type PropertyDiff struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1247,7 +1283,9 @@ type DiffResponse struct { Stables []string `protobuf:"bytes,2,rep,name=stables,proto3" json:"stables,omitempty"` // an optional list of properties that will not ever change. DeleteBeforeReplace bool `protobuf:"varint,3,opt,name=deleteBeforeReplace,proto3" json:"deleteBeforeReplace,omitempty"` // if true, this resource must be deleted before replacing it. Changes DiffResponse_DiffChanges `protobuf:"varint,4,opt,name=changes,proto3,enum=pulumirpc.DiffResponse_DiffChanges" json:"changes,omitempty"` // if true, this diff represents an actual difference and thus requires an update. - Diffs []string `protobuf:"bytes,5,rep,name=diffs,proto3" json:"diffs,omitempty"` // a list of the properties that changed. + // a list of the properties that changed. This should only contain top level property names, it does not + // support nested properties. For that use detailedDiff. + Diffs []string `protobuf:"bytes,5,rep,name=diffs,proto3" json:"diffs,omitempty"` // detailedDiff is an optional field that contains map from each changed property to the type of the change. // // The keys of this map are property paths. These paths are essentially Javascript property access expressions @@ -1372,6 +1410,8 @@ type CreateRequest struct { Properties *structpb.Struct `protobuf:"bytes,2,opt,name=properties,proto3" json:"properties,omitempty"` // the provider inputs to set during creation. Timeout float64 `protobuf:"fixed64,3,opt,name=timeout,proto3" json:"timeout,omitempty"` // the create request timeout represented in seconds. Preview bool `protobuf:"varint,4,opt,name=preview,proto3" json:"preview,omitempty"` // true if this is a preview and the provider should not actually create the resource. + Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` // the Pulumi name for this resource. + Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` // the Pulumi type for this resource. } func (x *CreateRequest) Reset() { @@ -1434,6 +1474,20 @@ func (x *CreateRequest) GetPreview() bool { return false } +func (x *CreateRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *CreateRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + type CreateResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1498,6 +1552,8 @@ type ReadRequest struct { Urn string `protobuf:"bytes,2,opt,name=urn,proto3" json:"urn,omitempty"` // the Pulumi URN for this resource. Properties *structpb.Struct `protobuf:"bytes,3,opt,name=properties,proto3" json:"properties,omitempty"` // the current state (sufficiently complete to identify the resource). Inputs *structpb.Struct `protobuf:"bytes,4,opt,name=inputs,proto3" json:"inputs,omitempty"` // the current inputs, if any (only populated during refresh). + Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` // the Pulumi name for this resource. + Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` // the Pulumi type for this resource. } func (x *ReadRequest) Reset() { @@ -1560,6 +1616,20 @@ func (x *ReadRequest) GetInputs() *structpb.Struct { return nil } +func (x *ReadRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ReadRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + type ReadResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1637,6 +1707,8 @@ type UpdateRequest struct { IgnoreChanges []string `protobuf:"bytes,6,rep,name=ignoreChanges,proto3" json:"ignoreChanges,omitempty"` // a set of property paths that should be treated as unchanged. Preview bool `protobuf:"varint,7,opt,name=preview,proto3" json:"preview,omitempty"` // true if this is a preview and the provider should not actually create the resource. OldInputs *structpb.Struct `protobuf:"bytes,8,opt,name=old_inputs,json=oldInputs,proto3" json:"old_inputs,omitempty"` // the old input values of the resource to diff. + Name string `protobuf:"bytes,9,opt,name=name,proto3" json:"name,omitempty"` // the Pulumi name for this resource. + Type string `protobuf:"bytes,10,opt,name=type,proto3" json:"type,omitempty"` // the Pulumi type for this resource. } func (x *UpdateRequest) Reset() { @@ -1727,6 +1799,20 @@ func (x *UpdateRequest) GetOldInputs() *structpb.Struct { return nil } +func (x *UpdateRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *UpdateRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + type UpdateResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1784,6 +1870,8 @@ type DeleteRequest struct { Properties *structpb.Struct `protobuf:"bytes,3,opt,name=properties,proto3" json:"properties,omitempty"` // the current properties on the resource. Timeout float64 `protobuf:"fixed64,4,opt,name=timeout,proto3" json:"timeout,omitempty"` // the delete request timeout represented in seconds. OldInputs *structpb.Struct `protobuf:"bytes,5,opt,name=old_inputs,json=oldInputs,proto3" json:"old_inputs,omitempty"` // the old input values of the resource to delete. + Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` // the Pulumi name for this resource. + Type string `protobuf:"bytes,7,opt,name=type,proto3" json:"type,omitempty"` // the Pulumi type for this resource. } func (x *DeleteRequest) Reset() { @@ -1853,6 +1941,20 @@ func (x *DeleteRequest) GetOldInputs() *structpb.Struct { return nil } +func (x *DeleteRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *DeleteRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + type ConstructRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3055,16 +3157,16 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, - 0x12, 0x5f, 0x0a, 0x12, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, - 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x70, - 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, - 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x12, 0x72, - 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, - 0x73, 0x12, 0x33, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x61, - 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x1a, 0x28, 0x0a, 0x12, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, + 0x12, 0x33, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x61, 0x69, + 0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, 0x5f, 0x0a, 0x12, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, + 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x2f, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, + 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x75, 0x72, + 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x12, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, + 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x1a, 0x28, 0x0a, 0x12, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x72, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x75, 0x72, 0x6e, 0x73, 0x1a, 0x71, 0x0a, 0x17, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, @@ -3074,7 +3176,7 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0xb0, 0x01, 0x0a, 0x0c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, + 0x02, 0x38, 0x01, 0x22, 0xd8, 0x01, 0x0a, 0x0c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x2b, 0x0a, 0x04, 0x6f, 0x6c, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, @@ -3084,34 +3186,39 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x04, 0x6e, 0x65, 0x77, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x53, 0x65, 0x65, 0x64, - 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x75, 0x0a, 0x0d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, - 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x75, 0x6c, - 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, - 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x22, 0x42, 0x0a, - 0x0c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, - 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, - 0x6e, 0x22, 0xe7, 0x01, 0x0a, 0x0b, 0x44, 0x69, 0x66, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x75, 0x72, 0x6e, 0x12, 0x2b, 0x0a, 0x04, 0x6f, 0x6c, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x04, 0x6f, 0x6c, 0x64, 0x73, - 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x65, 0x77, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x04, 0x6e, 0x65, 0x77, 0x73, 0x12, 0x24, 0x0a, - 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x43, 0x68, 0x61, 0x6e, - 0x67, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0a, 0x6f, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0xc0, 0x01, 0x0a, 0x0c, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x52, 0x0e, + 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x75, + 0x0a, 0x0d, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x2f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, + 0x12, 0x33, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x61, 0x69, + 0x6c, 0x75, 0x72, 0x65, 0x73, 0x22, 0x42, 0x0a, 0x0c, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x46, 0x61, + 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, + 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x8f, 0x02, 0x0a, 0x0b, 0x44, 0x69, + 0x66, 0x66, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x2b, 0x0a, 0x04, 0x6f, + 0x6c, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, + 0x63, 0x74, 0x52, 0x04, 0x6f, 0x6c, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x04, 0x6e, 0x65, 0x77, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, + 0x04, 0x6e, 0x65, 0x77, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x43, + 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x67, + 0x6e, 0x6f, 0x72, 0x65, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0a, 0x6f, + 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x49, 0x6e, 0x70, + 0x75, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xc0, 0x01, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x44, 0x69, 0x66, 0x66, 0x12, 0x30, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x75, 0x6c, 0x75, 0x6d, 0x69, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x44, @@ -3153,7 +3260,7 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x3d, 0x0a, 0x0b, 0x44, 0x69, 0x66, 0x66, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, - 0x0d, 0x0a, 0x09, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x53, 0x4f, 0x4d, 0x45, 0x10, 0x02, 0x22, 0x8e, + 0x0d, 0x0a, 0x09, 0x44, 0x49, 0x46, 0x46, 0x5f, 0x53, 0x4f, 0x4d, 0x45, 0x10, 0x02, 0x22, 0xb6, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, @@ -3162,23 +3269,28 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x22, - 0x59, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, - 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x22, 0x99, 0x01, 0x0a, 0x0b, 0x52, - 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x37, 0x0a, 0x0a, - 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, - 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, - 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x61, 0x64, 0x52, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x59, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, + 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, + 0x65, 0x73, 0x22, 0xc1, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x75, 0x72, 0x6e, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, + 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, + 0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x0a, + 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x88, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x61, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, @@ -3187,7 +3299,7 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x12, 0x2f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x73, 0x22, 0x9d, 0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x73, 0x22, 0xc5, 0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x2b, 0x0a, 0x04, 0x6f, 0x6c, 0x64, 0x73, 0x18, 0x03, 0x20, @@ -3205,23 +3317,28 @@ var file_pulumi_provider_proto_rawDesc = []byte{ 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, - 0x73, 0x22, 0x49, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x22, 0xbc, 0x01, 0x0a, - 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, - 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, - 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, - 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x69, 0x6d, - 0x65, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x0a, 0x6f, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, - 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x22, 0xad, 0x0b, 0x0a, 0x10, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x49, 0x0a, 0x0e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, + 0x74, 0x69, 0x65, 0x73, 0x22, 0xe4, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6e, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, + 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, + 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x01, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x36, 0x0a, 0x0a, 0x6f, + 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x49, 0x6e, 0x70, + 0x75, 0x74, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xad, 0x0b, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, @@ -3535,8 +3652,8 @@ var file_pulumi_provider_proto_depIdxs = []int32{ 38, // 9: pulumirpc.CallRequest.argDependencies:type_name -> pulumirpc.CallRequest.ArgDependenciesEntry 39, // 10: pulumirpc.CallRequest.config:type_name -> pulumirpc.CallRequest.ConfigEntry 50, // 11: pulumirpc.CallResponse.return:type_name -> google.protobuf.Struct - 41, // 12: pulumirpc.CallResponse.returnDependencies:type_name -> pulumirpc.CallResponse.ReturnDependenciesEntry - 15, // 13: pulumirpc.CallResponse.failures:type_name -> pulumirpc.CheckFailure + 15, // 12: pulumirpc.CallResponse.failures:type_name -> pulumirpc.CheckFailure + 41, // 13: pulumirpc.CallResponse.returnDependencies:type_name -> pulumirpc.CallResponse.ReturnDependenciesEntry 50, // 14: pulumirpc.CheckRequest.olds:type_name -> google.protobuf.Struct 50, // 15: pulumirpc.CheckRequest.news:type_name -> google.protobuf.Struct 50, // 16: pulumirpc.CheckResponse.inputs:type_name -> google.protobuf.Struct diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider_grpc.pb.go b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider_grpc.pb.go index 568e41153..058cde6ad 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider_grpc.pb.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/proto/go/provider_grpc.pb.go @@ -44,6 +44,12 @@ type ResourceProviderClient interface { // DiffConfig checks the impact a hypothetical change to this provider's configuration will have on the provider. DiffConfig(ctx context.Context, in *DiffRequest, opts ...grpc.CallOption) (*DiffResponse, error) // Configure configures the resource provider with "globals" that control its behavior. + // + // :::{warning} + // ConfigureRequest.args may include secrets. Because ConfigureRequest is sent before + // ConfigureResponse can specify acceptSecrets: false, providers *must* handle secrets from + // ConfigureRequest.args. + // ::: Configure(ctx context.Context, in *ConfigureRequest, opts ...grpc.CallOption) (*ConfigureResponse, error) // Invoke dynamically executes a built-in function in the provider. Invoke(ctx context.Context, in *InvokeRequest, opts ...grpc.CallOption) (*InvokeResponse, error) @@ -327,6 +333,12 @@ type ResourceProviderServer interface { // DiffConfig checks the impact a hypothetical change to this provider's configuration will have on the provider. DiffConfig(context.Context, *DiffRequest) (*DiffResponse, error) // Configure configures the resource provider with "globals" that control its behavior. + // + // :::{warning} + // ConfigureRequest.args may include secrets. Because ConfigureRequest is sent before + // ConfigureResponse can specify acceptSecrets: false, providers *must* handle secrets from + // ConfigureRequest.args. + // ::: Configure(context.Context, *ConfigureRequest) (*ConfigureResponse, error) // Invoke dynamically executes a built-in function in the provider. Invoke(context.Context, *InvokeRequest) (*InvokeResponse, error) diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/pip.go b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/pip.go index f634500eb..4953c4e04 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/pip.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/pip.go @@ -54,13 +54,14 @@ func newPip(root, virtualenv string) (*pip, error) { return &pip{virtualenvPath, virtualenv, root}, nil } -func (p *pip) InstallDependencies(ctx context.Context, cwd string, showOutput bool, +func (p *pip) InstallDependencies(ctx context.Context, cwd string, useLanguageVersionTools, showOutput bool, infoWriter io.Writer, errorWriter io.Writer, ) error { return InstallDependencies( ctx, cwd, p.virtualenvPath, + useLanguageVersionTools, showOutput, infoWriter, errorWriter) @@ -138,7 +139,9 @@ func (p *pip) ValidateVenv(ctx context.Context) error { return nil } -func (p *pip) EnsureVenv(ctx context.Context, cwd string, showOutput bool, infoWriter, errorWriter io.Writer) error { +func (p *pip) EnsureVenv(ctx context.Context, cwd string, useLanguageVersionTools, + showOutput bool, infoWriter, errorWriter io.Writer, +) error { // If we are using global/ambient Python, do nothing. if p.virtualenvOption == "" { return nil @@ -170,7 +173,7 @@ func (p *pip) EnsureVenv(ctx context.Context, cwd string, showOutput bool, infoW } if createVirtualEnv { - return p.InstallDependencies(ctx, cwd, showOutput, infoWriter, errorWriter) + return p.InstallDependencies(ctx, cwd, useLanguageVersionTools, showOutput, infoWriter, errorWriter) } return nil @@ -367,7 +370,7 @@ func ActivateVirtualEnv(environ []string, virtualEnvDir string) []string { } // InstallDependencies will create a new virtual environment and install dependencies in the root directory. -func InstallDependencies(ctx context.Context, cwd, venvDir string, showOutput bool, +func InstallDependencies(ctx context.Context, cwd, venvDir string, useLanguageVersionTools, showOutput bool, infoWriter, errorWriter io.Writer, ) error { printmsg := func(message string) { @@ -376,6 +379,12 @@ func InstallDependencies(ctx context.Context, cwd, venvDir string, showOutput bo } } + if useLanguageVersionTools { + if err := installPython(ctx, cwd, showOutput, infoWriter, errorWriter); err != nil { + return err + } + } + if venvDir != "" { printmsg("Creating virtual environment...") diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/poetry.go b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/poetry.go index 00146d1d5..1bb714768 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/poetry.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/poetry.go @@ -1,3 +1,17 @@ +// Copyright 2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package toolchain import ( @@ -82,22 +96,46 @@ func validateVersion(versionOut string) error { } func (p *poetry) InstallDependencies(ctx context.Context, - root string, showOutput bool, infoWriter, errorWriter io.Writer, + root string, useLanguageVersionTools, showOutput bool, infoWriter, errorWriter io.Writer, ) error { - // If pyproject.toml does not exist, but we have a requirements.txt, - // generate a new pyproject.toml. - pyprojectToml := filepath.Join(root, "pyproject.toml") - if _, err := os.Stat(pyprojectToml); err != nil && errors.Is(err, os.ErrNotExist) { - requirementsTxt := filepath.Join(root, "requirements.txt") - if _, err := os.Stat(requirementsTxt); err != nil && errors.Is(err, os.ErrNotExist) { + if _, err := searchup(root, "pyproject.toml"); err != nil { + if !errors.Is(err, os.ErrNotExist) { + return fmt.Errorf("error while looking for pyproject.toml in %s: %w", root, err) + } + // If pyproject.toml does not exist, look for a requirements.txt file and use + // it to generate a new pyproject.toml. + requirementsTxtDir, err := searchup(root, "requirements.txt") + if err != nil { + if !errors.Is(err, os.ErrNotExist) { + return fmt.Errorf("error while looking for requirements.txt in %s: %w", root, err) + } return fmt.Errorf("could not find pyproject.toml or requirements.txt in %s", root) } + requirementsTxt := filepath.Join(requirementsTxtDir, "requirements.txt") + pyprojectToml := filepath.Join(requirementsTxtDir, "pyproject.toml") if err := p.convertRequirementsTxt(requirementsTxt, pyprojectToml); err != nil { return err } } + if useLanguageVersionTools { + if err := installPython(ctx, root, showOutput, infoWriter, errorWriter); err != nil { + return err + } + } + poetryCmd := exec.Command(p.poetryExecutable, "install", "--no-ansi") //nolint:gosec + if useLanguageVersionTools { + // For poetry to work nicely with pyenv, we need to make poetry use the active python, + // otherwise poetry will use the python version used to run poetry itself. + use, _, _, err := usePyenv(root) + if err != nil { + return fmt.Errorf("checking for pyenv: %w", err) + } + if use { + poetryCmd.Env = append(os.Environ(), "POETRY_VIRTUALENVS_PREFER_ACTIVE_PYTHON=true") + } + } poetryCmd.Dir = p.directory poetryCmd.Stdout = infoWriter poetryCmd.Stderr = errorWriter @@ -186,11 +224,13 @@ func (p *poetry) ValidateVenv(ctx context.Context) error { return nil } -func (p *poetry) EnsureVenv(ctx context.Context, cwd string, showOutput bool, infoWriter, errorWriter io.Writer) error { +func (p *poetry) EnsureVenv(ctx context.Context, cwd string, useLanguageVersionTools, + showOutput bool, infoWriter, errorWriter io.Writer, +) error { _, err := p.virtualenvPath(ctx) if err != nil { // Couldn't get the virtualenv path, this means it does not exist. Let's create it. - return p.InstallDependencies(ctx, cwd, showOutput, infoWriter, errorWriter) + return p.InstallDependencies(ctx, cwd, useLanguageVersionTools, showOutput, infoWriter, errorWriter) } return nil } @@ -314,3 +354,17 @@ func dependenciesFromRequirementsTxt(r io.Reader) (map[string]string, error) { return deps, nil } + +func searchup(currentDir, fileToFind string) (string, error) { + if _, err := os.Stat(filepath.Join(currentDir, fileToFind)); err == nil { + return currentDir, nil + } else if !errors.Is(err, os.ErrNotExist) { + return "", err + } + parentDir := filepath.Dir(currentDir) + if currentDir == parentDir { + // Reached the root directory, file not found + return "", os.ErrNotExist + } + return searchup(parentDir, fileToFind) +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/shim_unix.go b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/shim_unix.go index b0cb1d142..8e72ea9a2 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/shim_unix.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/shim_unix.go @@ -1,7 +1,4 @@ -//go:build !windows -// +build !windows - -// Copyright 2020, Pulumi Corporation. +// Copyright 2020-2024, Pulumi Corporation. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -15,6 +12,9 @@ // See the License for the specific language governing permissions and // limitations under the License. +//go:build !windows +// +build !windows + package toolchain // This is to trigger a workaround for https://github.com/golang/go/issues/42919 diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/toolchain.go b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/toolchain.go index ecbe2ad70..39b510238 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/toolchain.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/python/toolchain/toolchain.go @@ -1,10 +1,29 @@ +// Copyright 2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package toolchain import ( "context" + "errors" + "fmt" "io" "os/exec" "runtime" + + "github.com/pulumi/pulumi/sdk/v3/go/common/util/fsutil" + "github.com/pulumi/pulumi/sdk/v3/go/common/util/logging" ) type typeChecker int @@ -28,6 +47,8 @@ const ( type PythonOptions struct { // The root directory of the project. Root string + // The program directory of the project. + ProgramDir string // Virtual environment to use, relative to `Root`. Virtualenv string // Use a typechecker to type check. @@ -49,9 +70,11 @@ type Info struct { type Toolchain interface { // InstallDependencies installs the dependencies of the project found in `cwd`. - InstallDependencies(ctx context.Context, cwd string, showOutput bool, infoWriter, errorWriter io.Writer) error + InstallDependencies(ctx context.Context, cwd string, useLanguageVersionTools, + showOutput bool, infoWriter, errorWriter io.Writer) error // EnsureVenv validates virtual environment of the toolchain and creates it if it doesn't exist. - EnsureVenv(ctx context.Context, cwd string, showOutput bool, infoWriter, errorWriter io.Writer) error + EnsureVenv(ctx context.Context, cwd string, useLanguageVersionTools, + showOutput bool, infoWriter, errorWriter io.Writer) error // ValidateVenv checks if the virtual environment of the toolchain is valid. ValidateVenv(ctx context.Context) error // ListPackages returns a list of Python packages installed in the toolchain. @@ -78,7 +101,11 @@ func Name(tc toolchain) string { func ResolveToolchain(options PythonOptions) (Toolchain, error) { if options.Toolchain == Poetry { - return newPoetry(options.Root) + dir := options.ProgramDir + if dir == "" { + dir = options.Root + } + return newPoetry(dir) } return newPip(options.Root, options.Virtualenv) } @@ -89,3 +116,62 @@ func virtualEnvBinDirName() string { } return "bin" } + +// Determines if we should use pyenv. To use pyenv we need: +// - pyenv installed +// - .python-version file in the current directory or any of its parents +func usePyenv(cwd string) (bool, string, string, error) { + versionFile, err := fsutil.Searchup(cwd, ".python-version") + if err != nil { + if !errors.Is(err, fsutil.ErrNotFound) { + return false, "", "", fmt.Errorf("error while looking for .python-version %s", err) + } + // No .python-version file found + return false, "", "", nil + } + logging.V(9).Infof("Python toolchain: found .python-version %s", versionFile) + pyenvPath, err := exec.LookPath("pyenv") + if err != nil { + if !errors.Is(err, exec.ErrNotFound) { + return false, "", "", fmt.Errorf("error while looking for pyenv %+v", err) + } + // No pyenv installed + logging.V(9).Infof("Python toolchain: found .python-version file at %s, but could not find pyenv executable", + versionFile) + return false, "", "", nil + } + return true, pyenvPath, versionFile, nil +} + +func installPython(ctx context.Context, cwd string, showOutput bool, infoWriter, errorWriter io.Writer) error { + use, pyenv, versionFile, err := usePyenv(cwd) + if err != nil { + return err + } + if !use { + return nil + } + + if showOutput { + _, err := infoWriter.Write([]byte(fmt.Sprintf("Installing python version from .python-version file at %s\n", + versionFile))) + if err != nil { + return fmt.Errorf("error while writing to infoWriter %s", err) + } + } + cmd := exec.CommandContext(ctx, pyenv, "install", "--skip-existing") + cmd.Dir = cwd + if showOutput { + cmd.Stdout = infoWriter + cmd.Stderr = errorWriter + } + err = cmd.Run() + if err != nil { + var exitErr *exec.ExitError + if errors.As(err, &exitErr) { + return fmt.Errorf("error while running pyenv install: %s", string(exitErr.Stderr)) + } + return fmt.Errorf("error while running pyenv install: %s", err) + } + return nil +} diff --git a/vendor/github.com/pulumi/pulumi/sdk/v3/version.go b/vendor/github.com/pulumi/pulumi/sdk/v3/version.go index 49b9d98f7..0d22cd5a6 100644 --- a/vendor/github.com/pulumi/pulumi/sdk/v3/version.go +++ b/vendor/github.com/pulumi/pulumi/sdk/v3/version.go @@ -1,3 +1,17 @@ +// Copyright 2024-2024, Pulumi Corporation. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + package sdk import ( diff --git a/vendor/github.com/tweekmonster/luser/.travis.yml b/vendor/github.com/tweekmonster/luser/.travis.yml deleted file mode 100644 index 41b592297..000000000 --- a/vendor/github.com/tweekmonster/luser/.travis.yml +++ /dev/null @@ -1,14 +0,0 @@ -language: go - -os: - - linux - - osx - -env: - - CGO_ENABLED=0 - -go: - - 1.2 - - 1.5 - - 1.7 - - tip diff --git a/vendor/github.com/tweekmonster/luser/LICENSE b/vendor/github.com/tweekmonster/luser/LICENSE deleted file mode 100644 index 5b27ad6f7..000000000 --- a/vendor/github.com/tweekmonster/luser/LICENSE +++ /dev/null @@ -1,20 +0,0 @@ -The MIT License -Copyright (c) 2016 Tommy Allen - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do -so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/vendor/github.com/tweekmonster/luser/README.md b/vendor/github.com/tweekmonster/luser/README.md deleted file mode 100644 index 9cee30db0..000000000 --- a/vendor/github.com/tweekmonster/luser/README.md +++ /dev/null @@ -1,74 +0,0 @@ -# luser - -[![GoDoc](https://godoc.org/github.com/tweekmonster/luser?status.svg)](https://godoc.org/github.com/tweekmonster/luser) -[![Build Status](https://travis-ci.org/tweekmonster/luser.svg?branch=master)](https://travis-ci.org/tweekmonster/luser) - -`luser` is a drop-in replacement for `os/user` which allows you to lookup users -and groups in cross-compiled builds without `cgo`. - - -## Overview - -`os/user` requires `cgo` to lookup users using the target OS's API. This is -the most reliable way to look up user and group information. However, -cross-compiling means that `os/user` will only work for the OS you're using. -`user.Current()` is usable when building without `cgo`, but doesn't always -work. The `$USER` and `$HOME` variables could be different from what you -expect or not even exist. - -If you want to cross-compile a relatively simple program that needs to write a -config file somewhere in the user's directory, the last thing you want to do is -figure out some elaborate build scheme involving virtual machines. - - -## Usage - -`luser` has the same API as `os/user`. You should be able to just replace -`user.` with `luser.` in your files and let `goimports` do the rest. The -returned `*User` and `*Group` types will have an `IsLuser` field indicating -whether or not a fallback method was used. - - -## Install - -Install the package with: - -```shell -$ go get github.com/tweekmonster/luser -``` - -A sample program called `luser` can be installed if you want to see the -fallback results on your platform: - -```shell -$ CGO_ENABLED=0 go install github.com/tweekmonster/luser/cmd/luser -$ luser -c -$ luser username -$ luser 1000 -``` - - -## Fallback lookup methods - -`os/user` functions are used when built with `cgo`. Otherwise, it falls back -to one of the following lookup methods: - -| Method | Used for | -|---------------|----------------------------------------------------------------| -| `/etc/passwd` | Parsed to lookup user information. (Unix, Linux) | -| `/etc/group` | Parsed to lookup group information. (Unix, Linux) | -| `getent` | Optional. Find user/group information. (Unix, Linux) | -| `dscacheutil` | Lookup user/group information via Directory Services. (Darwin) | -| `id` | Finding a user's groups when using `GroupIds()`. | - -**Note:** Windows should always work regardless of the build platform since it -uses `syscall` instead of `cgo`. - - -## Caveats - -- `luser.User` and `luser.Group` are new types. The underlying `user.*` types - are embedded, however (e.g. `u.User`). -- The lookup methods use `exec.Command()` and will be noticeably slower if - you're looking up users and groups a lot. -- Group-releated functions will only be available when compiling with Go 1.7+. diff --git a/vendor/github.com/tweekmonster/luser/current_cgo.go b/vendor/github.com/tweekmonster/luser/current_cgo.go deleted file mode 100644 index 37433d549..000000000 --- a/vendor/github.com/tweekmonster/luser/current_cgo.go +++ /dev/null @@ -1,14 +0,0 @@ -// +build !windows -// +build cgo - -package luser - -import "os/user" - -func currentUser() (*User, error) { - u, err := user.Current() - if err != nil { - return nil, err - } - return &User{User: u}, nil -} diff --git a/vendor/github.com/tweekmonster/luser/current_default.go b/vendor/github.com/tweekmonster/luser/current_default.go deleted file mode 100644 index 6b8f4af9e..000000000 --- a/vendor/github.com/tweekmonster/luser/current_default.go +++ /dev/null @@ -1,46 +0,0 @@ -// +build !windows -// +build !cgo - -package luser - -import ( - "os" - "os/user" - "strconv" - "sync" -) - -var currentUid = -1 -var current *User -var currentMu sync.Mutex - -func init() { - fallbackEnabled = true -} - -// The default stub uses $USER and $HOME to fill in the user. A more reliable -// method will be tried before falling back to the stub. -func currentUser() (*User, error) { - uid := os.Getuid() - if uid >= 0 { - if uid == currentUid && current != nil { - return current, nil - } - - currentMu.Lock() - defer currentMu.Unlock() - - currentUid = uid - u, err := lookupId(strconv.Itoa(uid)) - current = u - if err == nil { - return u, nil - } - } - - if u, err := user.Current(); err == nil { - return luser(u), nil - } - - return nil, ErrCurrentUser -} diff --git a/vendor/github.com/tweekmonster/luser/ds.go b/vendor/github.com/tweekmonster/luser/ds.go deleted file mode 100644 index 11b6e415f..000000000 --- a/vendor/github.com/tweekmonster/luser/ds.go +++ /dev/null @@ -1,77 +0,0 @@ -package luser - -import ( - "bufio" - "bytes" - "os/exec" - "os/user" - "strings" -) - -var dscacheutilExe = "" // path to 'dscacheutil' program. - -func init() { - if path, err := exec.LookPath("dscacheutil"); err == nil { - dscacheutilExe = path - } -} - -func dsParseUser(data []byte) *user.User { - u := &user.User{} - - scanner := bufio.NewScanner(bytes.NewReader(data)) - for scanner.Scan() { - line := scanner.Text() - if i := strings.Index(line, ": "); i >= 0 { - value := line[i+2:] - - switch line[:i] { - case "name": - u.Username = value - case "uid": - u.Uid = value - case "gid": - u.Gid = value - case "dir": - u.HomeDir = value - case "gecos": - if i := strings.Index(value, ","); i >= 0 { - value = value[:i] - } - u.Name = value - } - } - } - - return u -} - -func dsUser(username string) (*user.User, error) { - data, err := command(dscacheutilExe, "-q", "user", "-a", "name", username) - if err != nil { - return nil, err - } - - u := dsParseUser(data) - - if u.Uid != "" && u.Username != "" && u.HomeDir != "" { - return u, nil - } - - return nil, errNotFound -} - -func dsUserId(uid string) (*user.User, error) { - data, err := command(dscacheutilExe, "-q", "user", "-a", "uid", uid) - if err != nil { - return nil, err - } - - u := dsParseUser(data) - - if u.Uid != "" && u.Username != "" && u.HomeDir != "" { - return u, nil - } - - return nil, errNotFound -} diff --git a/vendor/github.com/tweekmonster/luser/ds_group.go b/vendor/github.com/tweekmonster/luser/ds_group.go deleted file mode 100644 index c7dec0b3d..000000000 --- a/vendor/github.com/tweekmonster/luser/ds_group.go +++ /dev/null @@ -1,59 +0,0 @@ -// +build go1.7 - -package luser - -import ( - "bufio" - "bytes" - "os/user" - "strings" -) - -func dsParseGroup(data []byte) *user.Group { - g := &user.Group{} - - scanner := bufio.NewScanner(bytes.NewReader(data)) - for scanner.Scan() { - line := scanner.Text() - if i := strings.Index(line, ": "); i >= 0 { - value := line[i+2:] - - switch line[:i] { - case "name": - g.Name = value - case "gid": - g.Gid = value - } - } - } - - return g -} - -func dsGroup(group string) (*user.Group, error) { - data, err := command(dscacheutilExe, "-q", "group", "-a", "name", group) - if err != nil { - return nil, err - } - - g := dsParseGroup(data) - if g.Name != "" && g.Gid != "" { - return g, nil - } - - return nil, errNotFound -} - -func dsGroupId(group string) (*user.Group, error) { - data, err := command(dscacheutilExe, "-q", "group", "-a", "gid", group) - if err != nil { - return nil, err - } - - g := dsParseGroup(data) - if g.Name != "" && g.Gid != "" { - return g, nil - } - - return nil, errNotFound -} diff --git a/vendor/github.com/tweekmonster/luser/errors.go b/vendor/github.com/tweekmonster/luser/errors.go deleted file mode 100644 index c3c1377b3..000000000 --- a/vendor/github.com/tweekmonster/luser/errors.go +++ /dev/null @@ -1,35 +0,0 @@ -package luser - -import "strconv" - -// UnknownUserIdError is returned by LookupId when -// a user cannot be found. -type UnknownUserIdError int - -func (e UnknownUserIdError) Error() string { - return "user: unknown userid " + strconv.Itoa(int(e)) -} - -// UnknownUserError is returned by Lookup when -// a user cannot be found. -type UnknownUserError string - -func (e UnknownUserError) Error() string { - return "user: unknown user " + string(e) -} - -// UnknownGroupIdError is returned by LookupGroupId when -// a group cannot be found. -type UnknownGroupIdError string - -func (e UnknownGroupIdError) Error() string { - return "group: unknown groupid " + string(e) -} - -// UnknownGroupError is returned by LookupGroup when -// a group cannot be found. -type UnknownGroupError string - -func (e UnknownGroupError) Error() string { - return "group: unknown group " + string(e) -} diff --git a/vendor/github.com/tweekmonster/luser/group.go b/vendor/github.com/tweekmonster/luser/group.go deleted file mode 100644 index ba787ce9a..000000000 --- a/vendor/github.com/tweekmonster/luser/group.go +++ /dev/null @@ -1,52 +0,0 @@ -// +build go1.7 - -package luser - -import "os/user" - -// Group represents a grouping of users. Embedded *user.Group reference: -// https://golang.org/pkg/os/user/#Group -type Group struct { - *user.Group - - // IsLuser is a flag indicating if the user was found without cgo. - IsLuser bool -} - -// LookupGroup looks up a group by name. If the group cannot be found, the -// returned error is of type UnknownGroupError. -func LookupGroup(name string) (*Group, error) { - if fallbackEnabled { - return lookupGroup(name) - } - - g, err := user.LookupGroup(name) - if err == nil { - return &Group{Group: g}, err - } - - return nil, err -} - -// LookupGroupId looks up a group by groupid. If the group cannot be found, the -// returned error is of type UnknownGroupIdError. -func LookupGroupId(gid string) (*Group, error) { - if fallbackEnabled { - return lookupGroupId(gid) - } - - g, err := user.LookupGroupId(gid) - if err == nil { - return &Group{Group: g}, err - } - - return nil, err -} - -// GroupIds returns the list of group IDs that the user is a member of. -func (u *User) GroupIds() ([]string, error) { - if u.IsLuser { - return u.lookupUserGroupIds() - } - return u.User.GroupIds() -} diff --git a/vendor/github.com/tweekmonster/luser/id.go b/vendor/github.com/tweekmonster/luser/id.go deleted file mode 100644 index e1d76a6e6..000000000 --- a/vendor/github.com/tweekmonster/luser/id.go +++ /dev/null @@ -1,29 +0,0 @@ -package luser - -import ( - "bytes" - "os/exec" - "strings" -) - -var idExe = "" // path to the 'id' program. - -func init() { - if path, err := exec.LookPath("id"); err == nil { - idExe = path - } -} - -func idGroupList(u *User) ([]string, error) { - data, err := command(idExe, "-G", u.Username) - if err != nil { - return nil, err - } - - data = bytes.TrimSpace(data) - if len(data) > 0 { - return strings.Fields(string(data)), nil - } - - return nil, errNotFound -} diff --git a/vendor/github.com/tweekmonster/luser/lookup.go b/vendor/github.com/tweekmonster/luser/lookup.go deleted file mode 100644 index 5a3879521..000000000 --- a/vendor/github.com/tweekmonster/luser/lookup.go +++ /dev/null @@ -1,56 +0,0 @@ -// +build !windows - -package luser - -import "strconv" - -// Lookup a user by username. -func lookupUser(username string) (*User, error) { - if _, err := strconv.Atoi(username); err == nil { - return nil, UnknownUserError(username) - } - - if dscacheutilExe != "" { - u, err := dsUser(username) - if err == nil { - return luser(u), nil - } - } - - u, err := getentUser(username) - if err == nil { - return luser(u), nil - } - - return nil, UnknownUserError(username) -} - -// Lookup user by UID. -func lookupId(uid string) (*User, error) { - id, err := strconv.Atoi(uid) - if err != nil { - return nil, err - } - - if dscacheutilExe != "" { - u, err := dsUserId(uid) - if err == nil { - return luser(u), nil - } - } - - u, err := getentUser(uid) - if err == nil { - return luser(u), nil - } - - return nil, UnknownUserIdError(id) -} - -func (u *User) lookupUserGroupIds() ([]string, error) { - if idExe != "" { - return idGroupList(u) - } - - return nil, ErrListGroups -} diff --git a/vendor/github.com/tweekmonster/luser/lookup_group.go b/vendor/github.com/tweekmonster/luser/lookup_group.go deleted file mode 100644 index b6315bf80..000000000 --- a/vendor/github.com/tweekmonster/luser/lookup_group.go +++ /dev/null @@ -1,47 +0,0 @@ -// +build !windows -// +build go1.7 - -package luser - -import "strconv" - -func lookupGroup(name string) (*Group, error) { - if _, err := strconv.Atoi(name); err == nil { - return nil, UnknownGroupError(name) - } - - if dscacheutilExe != "" { - g, err := dsGroup(name) - if err == nil { - return lgroup(g), nil - } - } - - g, err := getentGroup(name) - if err == nil { - return lgroup(g), nil - } - - return nil, UnknownGroupError(name) -} - -func lookupGroupId(gid string) (*Group, error) { - id, err := strconv.Atoi(gid) - if err != nil { - return nil, err - } - - if dscacheutilExe != "" { - g, err := dsGroupId(gid) - if err == nil { - return lgroup(g), nil - } - } - - g, err := getentGroup(gid) - if err == nil { - return lgroup(g), nil - } - - return nil, UnknownGroupIdError(id) -} diff --git a/vendor/github.com/tweekmonster/luser/lookup_group_windows.go b/vendor/github.com/tweekmonster/luser/lookup_group_windows.go deleted file mode 100644 index 516a7758b..000000000 --- a/vendor/github.com/tweekmonster/luser/lookup_group_windows.go +++ /dev/null @@ -1,13 +0,0 @@ -package luser - -func lookupGroup(name string) (*Group, error) { - return nil, errWin -} - -func lookupGroupId(gid string) (*Group, error) { - return nil, errWin -} - -func (u *User) lookupUserGroupIds() ([]string, error) { - return nil, ErrListGroups -} diff --git a/vendor/github.com/tweekmonster/luser/lookup_windows.go b/vendor/github.com/tweekmonster/luser/lookup_windows.go deleted file mode 100644 index 58d43ce75..000000000 --- a/vendor/github.com/tweekmonster/luser/lookup_windows.go +++ /dev/null @@ -1,29 +0,0 @@ -// Windows stub since syscall is used instead of cgo. os/user will work fine -// when cross-compiling Windows. Aside from currentUser(), the other functions -// should never excute since the original errors would need to include -// "requires cgo" in the message before calling these. - -package luser - -import ( - "errors" - "os/user" -) - -var errWin = errors.New("luser: you should not get this error") - -func currentUser() (*User, error) { - u, err := user.Current() - if err != nil { - return nil, err - } - return luser(u), nil -} - -func lookupUser(username string) (*User, error) { - return nil, errWin -} - -func lookupId(uid string) (*User, error) { - return nil, errWin -} diff --git a/vendor/github.com/tweekmonster/luser/luser.go b/vendor/github.com/tweekmonster/luser/luser.go deleted file mode 100644 index 8128cdd6e..000000000 --- a/vendor/github.com/tweekmonster/luser/luser.go +++ /dev/null @@ -1,77 +0,0 @@ -// Package luser is a drop-in replacement for 'os/user' which allows you to -// lookup users and groups in cross-compiled builds without 'cgo'. -// -// 'os/user' requires 'cgo' to lookup users using the target OS's API. This is -// the most reliable way to look up user and group information. However, -// cross-compiling means that 'os/user' will only work for the OS you're using. -// 'user.Current()' is usable when building without 'cgo', but doesn't always -// work. The '$USER' and '$HOME' variables could be different from what you -// expect or not even exist. -// -// If you want to cross-compile a relatively simple program that needs to write -// a config file somewhere in the user's directory, the last thing you want to -// do is figure out some elaborate build scheme involving virtual machines. -// -// When cgo is not available for a build, one of the following methods will be -// used to lookup user and group information: -// -// | Method | Used for | -// |---------------|----------------------------------------------------------------| -// | `/etc/passwd` | Parsed to lookup user information. (Unix, Linux) | -// | `/etc/group` | Parsed to lookup group information. (Unix, Linux) | -// | `getent` | Optional. Find user/group information. (Unix, Linux) | -// | `dscacheutil` | Lookup user/group information via Directory Services. (Darwin) | -// | `id` | Finding a user's groups when using `GroupIds()`. | -// -// You should be able to simply replace 'user.' with 'luser.' (in most cases). -package luser - -import "os/user" - -// Switched to true in current_default.go. Windows does not use a fallback. -var fallbackEnabled = false - -// User represents a user account. Embedded *user.User reference: -// https://golang.org/pkg/os/user/#User -type User struct { - *user.User - - IsLuser bool // flag indicating if the user was found without cgo. -} - -// Current returns the current user. On builds where cgo is available, this -// returns the result from user.Current(). Otherwise, alternate lookup methods -// are used before falling back to the built-in stub. -func Current() (*User, error) { - return currentUser() -} - -// Lookup looks up a user by username. If the user cannot be found, the -// returned error is of type UnknownUserError. -func Lookup(username string) (*User, error) { - if fallbackEnabled { - return lookupUser(username) - } - - u, err := user.Lookup(username) - if err == nil { - return &User{User: u}, nil - } - - return nil, err -} - -// LookupId looks up a user by userid. If the user cannot be found, the -// returned error is of type UnknownUserIdError. -func LookupId(uid string) (*User, error) { - if fallbackEnabled { - return lookupId(uid) - } - - u, err := user.LookupId(uid) - if err == nil { - return &User{User: u}, nil - } - - return nil, err -} diff --git a/vendor/github.com/tweekmonster/luser/misc.go b/vendor/github.com/tweekmonster/luser/misc.go deleted file mode 100644 index 4a7481527..000000000 --- a/vendor/github.com/tweekmonster/luser/misc.go +++ /dev/null @@ -1,33 +0,0 @@ -package luser - -import ( - "errors" - "os/exec" - "os/user" -) - -// ErrListGroups returned when LookupGroupId() has no fallback. -var ErrListGroups = errors.New("luser: unable to list groups") - -// ErrCurrentUser returned when Current() fails to get the user. -var ErrCurrentUser = errors.New("luser: unable to get current user") - -// Generic internal error indicating that a search function did its job but -// still couldn't find a user/group. -var errNotFound = errors.New("not found") - -// Wrap user.User with luser.User -func luser(u *user.User) *User { - return &User{User: u, IsLuser: true} -} - -// Convenience function for running a program and returning the output. -func command(program string, args ...string) ([]byte, error) { - cmd := exec.Command(program, args...) - out, err := cmd.Output() - if err != nil { - return nil, err - } - - return out, nil -} diff --git a/vendor/github.com/tweekmonster/luser/misc_group.go b/vendor/github.com/tweekmonster/luser/misc_group.go deleted file mode 100644 index 6a8f8824f..000000000 --- a/vendor/github.com/tweekmonster/luser/misc_group.go +++ /dev/null @@ -1,10 +0,0 @@ -// +build go1.7 - -package luser - -import "os/user" - -// Wrap user.Group with luser.Group -func lgroup(g *user.Group) *Group { - return &Group{Group: g, IsLuser: true} -} diff --git a/vendor/github.com/tweekmonster/luser/nss.go b/vendor/github.com/tweekmonster/luser/nss.go deleted file mode 100644 index 0b4114d5a..000000000 --- a/vendor/github.com/tweekmonster/luser/nss.go +++ /dev/null @@ -1,134 +0,0 @@ -package luser - -import ( - "bufio" - "bytes" - "os" - "os/exec" - "os/user" - "strconv" - "strings" -) - -// GetentParseFiles tells the getent fallback to prefer parsing the -// '/etc/passwd' and '/etc/group' files instead of executing the 'getent' -// program. This is on by default since the speed of parsing the files -// directly is comparible to the C API and is many times faster than executing -// the 'getent' program. If false, the files will still be parsed if 'getent' -// fails or isn't found. -var GetentParseFiles = true - -var ( - getentExe = "" // path to the 'getent' program. - passwdFilePath = "" // path to the 'passwd' file. - groupFilePath = "" // path to the 'group' file. -) - -func init() { - if path, err := exec.LookPath("getent"); err == nil { - getentExe = path - } - - if _, err := os.Stat("/etc/passwd"); err == nil { - passwdFilePath = "/etc/passwd" - } - - if _, err := os.Stat("/etc/group"); err == nil { - groupFilePath = "/etc/group" - } -} - -// Lookup user by parsing an database file first. If that fails, try with the -// 'getent' program. -func getent(database, key string) (string, error) { - if !GetentParseFiles && getentExe != "" { - data, err := command(getentExe, database, key) - if err == nil { - return string(bytes.TrimSpace(data)), nil - } - } - - dbfile := "" - switch database { - case "passwd": - dbfile = passwdFilePath - case "group": - dbfile = groupFilePath - } - - if dbfile != "" { - if line, err := searchEntityDatabase(dbfile, key); err == nil { - return line, nil - } - } - - return "", errNotFound -} - -func getentUser(key string) (*user.User, error) { - entity, err := getent("passwd", key) - if err != nil { - return nil, err - } - - parts := strings.Split(entity, ":") - if len(parts) < 6 { - return nil, errNotFound - } - - // Get name from GECOS. - name := parts[4] - if i := strings.Index(name, ","); i >= 0 { - name = name[:i] - } - - return &user.User{ - Username: parts[0], - Uid: parts[2], - Gid: parts[3], - Name: name, - HomeDir: parts[5], - }, nil -} - -func entityIndex(line string, index int) int { - f := func(c rune) bool { - if c == ':' { - index-- - return index == 0 - } - return false - } - - return strings.IndexFunc(line, f) -} - -// Searches an entity database for a matching name or id. -func searchEntityDatabase(filename, match string) (string, error) { - file, err := os.Open(filename) - if err != nil { - return "", err - } - defer file.Close() - - id := false - if _, err := strconv.Atoi(match); err == nil { - id = true - } - - prefix := match + ":" - scanner := bufio.NewScanner(file) - for scanner.Scan() { - line := scanner.Text() - if id { - i := entityIndex(line, 2) - if strings.HasPrefix(line[i+1:], prefix) { - return line, nil - } - } else if strings.HasPrefix(line, prefix) { - return line, nil - } - } - - return "", errNotFound -} diff --git a/vendor/github.com/tweekmonster/luser/nss_group.go b/vendor/github.com/tweekmonster/luser/nss_group.go deleted file mode 100644 index b3305d439..000000000 --- a/vendor/github.com/tweekmonster/luser/nss_group.go +++ /dev/null @@ -1,25 +0,0 @@ -// +build go1.7 - -package luser - -import ( - "os/user" - "strings" -) - -func getentGroup(key string) (*user.Group, error) { - entity, err := getent("group", key) - if err != nil { - return nil, err - } - - parts := strings.Split(entity, ":") - if len(parts) < 3 { - return nil, errNotFound - } - - return &user.Group{ - Name: parts[0], - Gid: parts[2], - }, nil -} diff --git a/vendor/modules.txt b/vendor/modules.txt index 608480957..f6e94e066 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -537,29 +537,29 @@ github.com/pulumi/pulumi-aws/sdk/v6/go/aws/autoscaling github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2 github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lb -# github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.53.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 v2.64.2 +## explicit; go 1.21 github.com/pulumi/pulumi-azure-native-sdk/authorization/v2 -# github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.45.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi-azure-native-sdk/compute/v2 v2.64.2 +## explicit; go 1.21 github.com/pulumi/pulumi-azure-native-sdk/compute/v2 -# github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.53.0 -## explicit; go 1.18 -github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 +# github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2 v2.64.2 +## explicit; go 1.21 +github.com/pulumi/pulumi-azure-native-sdk/containerservice/v2/v20240801 # github.com/pulumi/pulumi-azure-native-sdk/managedidentity/v2 v2.53.0 ## explicit; go 1.18 github.com/pulumi/pulumi-azure-native-sdk/managedidentity/v2 -# github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.45.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi-azure-native-sdk/network/v2 v2.64.2 +## explicit; go 1.21 github.com/pulumi/pulumi-azure-native-sdk/network/v2 -# github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.45.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi-azure-native-sdk/resources/v2 v2.64.2 +## explicit; go 1.21 github.com/pulumi/pulumi-azure-native-sdk/resources/v2 -# github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.45.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi-azure-native-sdk/storage/v2 v2.64.2 +## explicit; go 1.21 github.com/pulumi/pulumi-azure-native-sdk/storage/v2 -# github.com/pulumi/pulumi-azure-native-sdk/v2 v2.53.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi-azure-native-sdk/v2 v2.64.2 +## explicit; go 1.21 github.com/pulumi/pulumi-azure-native-sdk/v2/utilities # github.com/pulumi/pulumi-command/sdk v0.11.1 ## explicit; go 1.21 @@ -573,8 +573,8 @@ github.com/pulumi/pulumi-random/sdk/v4/go/random/internal ## explicit; go 1.21 github.com/pulumi/pulumi-tls/sdk/v5/go/tls github.com/pulumi/pulumi-tls/sdk/v5/go/tls/internal -# github.com/pulumi/pulumi/sdk/v3 v3.128.0 -## explicit; go 1.18 +# github.com/pulumi/pulumi/sdk/v3 v3.135.0 +## explicit; go 1.21 github.com/pulumi/pulumi/sdk/v3 github.com/pulumi/pulumi/sdk/v3/go/auto github.com/pulumi/pulumi/sdk/v3/go/auto/debug @@ -704,9 +704,6 @@ github.com/subosito/gotenv # github.com/texttheater/golang-levenshtein v1.0.1 ## explicit; go 1.13 github.com/texttheater/golang-levenshtein/levenshtein -# github.com/tweekmonster/luser v0.0.0-20161003172636-3fa38070dbd7 -## explicit -github.com/tweekmonster/luser # github.com/uber/jaeger-client-go v2.30.0+incompatible ## explicit github.com/uber/jaeger-client-go