Rules Engine Args
data class RulesEngineArgs(val enabled: Output<Boolean>? = null, val frontdoorName: Output<String>? = null, val name: Output<String>? = null, val resourceGroupName: Output<String>? = null, val rules: Output<List<RulesEngineRuleArgs>>? = null) : ConvertibleToJava<RulesEngineArgs>
!>IMPORTANT This deploys an Azure Front Door (classic) resource which has been deprecated and will receive security updates only. Please migrate your existing Azure Front Door (classic) deployments to the new Azure Front Door (standard/premium) resources. For your convenience, the service team has exposed a Front Door Classic
to Front Door Standard/Premium
migration tool to allow you to migrate your existing Front Door Classic
instances to the new Front Door Standard/Premium
product tiers. Manages an Azure Front Door (classic) Rules Engine configuration and rules.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.frontdoor.Frontdoor;
import com.pulumi.azure.frontdoor.FrontdoorArgs;
import com.pulumi.azure.frontdoor.inputs.FrontdoorBackendPoolArgs;
import com.pulumi.azure.frontdoor.inputs.FrontdoorBackendPoolHealthProbeArgs;
import com.pulumi.azure.frontdoor.inputs.FrontdoorBackendPoolLoadBalancingArgs;
import com.pulumi.azure.frontdoor.inputs.FrontdoorFrontendEndpointArgs;
import com.pulumi.azure.frontdoor.inputs.FrontdoorRoutingRuleArgs;
import com.pulumi.azure.frontdoor.RulesEngine;
import com.pulumi.azure.frontdoor.RulesEngineArgs;
import com.pulumi.azure.frontdoor.inputs.RulesEngineRuleArgs;
import com.pulumi.azure.frontdoor.inputs.RulesEngineRuleActionArgs;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleFrontdoor = new Frontdoor("exampleFrontdoor", FrontdoorArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.backendPools(FrontdoorBackendPoolArgs.builder()
.name("exampleBackendBing")
.loadBalancingName("exampleLoadBalancingSettings1")
.healthProbeName("exampleHealthProbeSetting1")
.backends(FrontdoorBackendPoolBackendArgs.builder()
.hostHeader("www.bing.com")
.address("www.bing.com")
.httpPort(80)
.httpsPort(443)
.build())
.build())
.backendPoolHealthProbes(FrontdoorBackendPoolHealthProbeArgs.builder()
.name("exampleHealthProbeSetting1")
.build())
.backendPoolLoadBalancings(FrontdoorBackendPoolLoadBalancingArgs.builder()
.name("exampleLoadBalancingSettings1")
.build())
.frontendEndpoints(FrontdoorFrontendEndpointArgs.builder()
.name("exampleFrontendEndpoint1")
.hostName("example-FrontDoor.azurefd.net")
.build())
.routingRules(FrontdoorRoutingRuleArgs.builder()
.name("exampleRoutingRule1")
.acceptedProtocols(
"Http",
"Https")
.patternsToMatches("/*")
.frontendEndpoints("exampleFrontendEndpoint1")
.build())
.build());
var exampleRulesEngine = new RulesEngine("exampleRulesEngine", RulesEngineArgs.builder()
.frontdoorName(exampleFrontdoor.name())
.resourceGroupName(exampleFrontdoor.resourceGroupName())
.rules(
RulesEngineRuleArgs.builder()
.name("debuggingoutput")
.priority(1)
.action(RulesEngineRuleActionArgs.builder()
.responseHeaders(RulesEngineRuleActionResponseHeaderArgs.builder()
.headerActionType("Append")
.headerName("X-TEST-HEADER")
.value("Append Header Rule")
.build())
.build())
.build(),
RulesEngineRuleArgs.builder()
.name("overwriteorigin")
.priority(2)
.matchConditions(RulesEngineRuleMatchConditionArgs.builder()
.variable("RequestMethod")
.operator("Equal")
.values(
"GET",
"POST")
.build())
.action(RulesEngineRuleActionArgs.builder()
.responseHeaders(
RulesEngineRuleActionResponseHeaderArgs.builder()
.headerActionType("Overwrite")
.headerName("Access-Control-Allow-Origin")
.value("*")
.build(),
RulesEngineRuleActionResponseHeaderArgs.builder()
.headerActionType("Overwrite")
.headerName("Access-Control-Allow-Credentials")
.value("true")
.build())
.build())
.build())
.build());
}
}
Content copied to clipboard
Import
Azure Front Door Rules Engine's can be imported using the resource id
, e.g.
$ pulumi import azure:frontdoor/rulesEngine:RulesEngine example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Network/frontdoors/frontdoor1/rulesEngines/rule1
Content copied to clipboard
Constructors
Link copied to clipboard
fun RulesEngineArgs(enabled: Output<Boolean>? = null, frontdoorName: Output<String>? = null, name: Output<String>? = null, resourceGroupName: Output<String>? = null, rules: Output<List<RulesEngineRuleArgs>>? = null)