Managed Cluster Application
The application resource. Azure REST API version: 2023-03-01-preview. Other available API versions: 2023-07-01-preview, 2023-09-01-preview.
Example Usage
Put an application with maximum parameters
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var managedClusterApplication = new AzureNative.ServiceFabric.ManagedClusterApplication("managedClusterApplication", new()
{
ApplicationName = "myApp",
ClusterName = "myCluster",
Location = "eastus",
Parameters =
{
{ "param1", "value1" },
},
ResourceGroupName = "resRg",
Tags =
{
{ "a", "b" },
},
UpgradePolicy = new AzureNative.ServiceFabric.Inputs.ApplicationUpgradePolicyArgs
{
ApplicationHealthPolicy = new AzureNative.ServiceFabric.Inputs.ApplicationHealthPolicyArgs
{
ConsiderWarningAsError = true,
DefaultServiceTypeHealthPolicy = new AzureNative.ServiceFabric.Inputs.ServiceTypeHealthPolicyArgs
{
MaxPercentUnhealthyPartitionsPerService = 0,
MaxPercentUnhealthyReplicasPerPartition = 0,
MaxPercentUnhealthyServices = 0,
},
MaxPercentUnhealthyDeployedApplications = 0,
ServiceTypeHealthPolicyMap =
{
{ "myService", new AzureNative.ServiceFabric.Inputs.ServiceTypeHealthPolicyArgs
{
MaxPercentUnhealthyPartitionsPerService = 30,
MaxPercentUnhealthyReplicasPerPartition = 30,
MaxPercentUnhealthyServices = 30,
} },
},
},
ForceRestart = false,
InstanceCloseDelayDuration = 600,
RecreateApplication = false,
RollingUpgradeMonitoringPolicy = new AzureNative.ServiceFabric.Inputs.RollingUpgradeMonitoringPolicyArgs
{
FailureAction = "Rollback",
HealthCheckRetryTimeout = "00:10:00",
HealthCheckStableDuration = "00:05:00",
HealthCheckWaitDuration = "00:02:00",
UpgradeDomainTimeout = "00:15:00",
UpgradeTimeout = "01:00:00",
},
UpgradeMode = "UnmonitoredAuto",
UpgradeReplicaSetCheckTimeout = 3600,
},
Version = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0",
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-azure-native-sdk/servicefabric/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := servicefabric.NewManagedClusterApplication(ctx, "managedClusterApplication", &servicefabric.ManagedClusterApplicationArgs{
ApplicationName: pulumi.String("myApp"),
ClusterName: pulumi.String("myCluster"),
Location: pulumi.String("eastus"),
Parameters: pulumi.StringMap{
"param1": pulumi.String("value1"),
},
ResourceGroupName: pulumi.String("resRg"),
Tags: pulumi.StringMap{
"a": pulumi.String("b"),
},
UpgradePolicy: servicefabric.ApplicationUpgradePolicyResponse{
ApplicationHealthPolicy: interface{}{
ConsiderWarningAsError: pulumi.Bool(true),
DefaultServiceTypeHealthPolicy: &servicefabric.ServiceTypeHealthPolicyArgs{
MaxPercentUnhealthyPartitionsPerService: pulumi.Int(0),
MaxPercentUnhealthyReplicasPerPartition: pulumi.Int(0),
MaxPercentUnhealthyServices: pulumi.Int(0),
},
MaxPercentUnhealthyDeployedApplications: pulumi.Int(0),
ServiceTypeHealthPolicyMap: servicefabric.ServiceTypeHealthPolicyMap{
"myService": &servicefabric.ServiceTypeHealthPolicyArgs{
MaxPercentUnhealthyPartitionsPerService: pulumi.Int(30),
MaxPercentUnhealthyReplicasPerPartition: pulumi.Int(30),
MaxPercentUnhealthyServices: pulumi.Int(30),
},
},
},
ForceRestart: pulumi.Bool(false),
InstanceCloseDelayDuration: pulumi.Float64(600),
RecreateApplication: pulumi.Bool(false),
RollingUpgradeMonitoringPolicy: &servicefabric.RollingUpgradeMonitoringPolicyArgs{
FailureAction: pulumi.String("Rollback"),
HealthCheckRetryTimeout: pulumi.String("00:10:00"),
HealthCheckStableDuration: pulumi.String("00:05:00"),
HealthCheckWaitDuration: pulumi.String("00:02:00"),
UpgradeDomainTimeout: pulumi.String("00:15:00"),
UpgradeTimeout: pulumi.String("01:00:00"),
},
UpgradeMode: pulumi.String("UnmonitoredAuto"),
UpgradeReplicaSetCheckTimeout: pulumi.Float64(3600),
},
Version: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.servicefabric.ManagedClusterApplication;
import com.pulumi.azurenative.servicefabric.ManagedClusterApplicationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var managedClusterApplication = new ManagedClusterApplication("managedClusterApplication", ManagedClusterApplicationArgs.builder()
.applicationName("myApp")
.clusterName("myCluster")
.location("eastus")
.parameters(Map.of("param1", "value1"))
.resourceGroupName("resRg")
.tags(Map.of("a", "b"))
.upgradePolicy(Map.ofEntries(
Map.entry("applicationHealthPolicy", Map.ofEntries(
Map.entry("considerWarningAsError", true),
Map.entry("defaultServiceTypeHealthPolicy", Map.ofEntries(
Map.entry("maxPercentUnhealthyPartitionsPerService", 0),
Map.entry("maxPercentUnhealthyReplicasPerPartition", 0),
Map.entry("maxPercentUnhealthyServices", 0)
)),
Map.entry("maxPercentUnhealthyDeployedApplications", 0),
Map.entry("serviceTypeHealthPolicyMap", Map.of("myService", Map.ofEntries(
Map.entry("maxPercentUnhealthyPartitionsPerService", 30),
Map.entry("maxPercentUnhealthyReplicasPerPartition", 30),
Map.entry("maxPercentUnhealthyServices", 30)
)))
)),
Map.entry("forceRestart", false),
Map.entry("instanceCloseDelayDuration", 600),
Map.entry("recreateApplication", false),
Map.entry("rollingUpgradeMonitoringPolicy", Map.ofEntries(
Map.entry("failureAction", "Rollback"),
Map.entry("healthCheckRetryTimeout", "00:10:00"),
Map.entry("healthCheckStableDuration", "00:05:00"),
Map.entry("healthCheckWaitDuration", "00:02:00"),
Map.entry("upgradeDomainTimeout", "00:15:00"),
Map.entry("upgradeTimeout", "01:00:00")
)),
Map.entry("upgradeMode", "UnmonitoredAuto"),
Map.entry("upgradeReplicaSetCheckTimeout", 3600)
))
.version("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0")
.build());
}
}
Content copied to clipboard
Put an application with minimum parameters
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var managedClusterApplication = new AzureNative.ServiceFabric.ManagedClusterApplication("managedClusterApplication", new()
{
ApplicationName = "myApp",
ClusterName = "myCluster",
Location = "eastus",
ResourceGroupName = "resRg",
Version = "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0",
});
});
Content copied to clipboard
package main
import (
"github.com/pulumi/pulumi-azure-native-sdk/servicefabric/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := servicefabric.NewManagedClusterApplication(ctx, "managedClusterApplication", &servicefabric.ManagedClusterApplicationArgs{
ApplicationName: pulumi.String("myApp"),
ClusterName: pulumi.String("myCluster"),
Location: pulumi.String("eastus"),
ResourceGroupName: pulumi.String("resRg"),
Version: pulumi.String("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0"),
})
if err != nil {
return err
}
return nil
})
}
Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.servicefabric.ManagedClusterApplication;
import com.pulumi.azurenative.servicefabric.ManagedClusterApplicationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var managedClusterApplication = new ManagedClusterApplication("managedClusterApplication", ManagedClusterApplicationArgs.builder()
.applicationName("myApp")
.clusterName("myCluster")
.location("eastus")
.resourceGroupName("resRg")
.version("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/managedclusters/myCluster/applicationTypes/myAppType/versions/1.0")
.build());
}
}
Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:servicefabric:ManagedClusterApplication myApp /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/managedclusters/{clusterName}/applications/{applicationName}
Content copied to clipboard