f5bigip.ltm.ProfileRewriteUriRules
Explore with Pulumi AI
f5bigip.ltm.ProfileRewriteUriRules
Configures uri rewrite rules attached to the ltm rewrite profile
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as f5bigip from "@pulumi/f5bigip";
const tftest = new f5bigip.ltm.ProfileRewrite("tftest", {
name: "/Common/tf_profile",
defaultsFrom: "/Common/rewrite",
rewriteMode: "uri-translation",
});
const tftestrule1 = new f5bigip.ltm.ProfileRewriteUriRules("tftestrule1", {
profileName: tftest.name,
ruleName: "tf_rule",
ruleType: "request",
clients: [{
host: "www.foo.com",
scheme: "https",
}],
servers: [{
host: "www.bar.com",
path: "/this/",
scheme: "https",
port: "8888",
}],
});
const tftestrule2 = new f5bigip.ltm.ProfileRewriteUriRules("tftestrule2", {
profileName: tftest.name,
ruleName: "tf_rule2",
clients: [{
host: "www.baz.com",
path: "/that/",
scheme: "ftp",
port: "8888",
}],
servers: [{
host: "www.buz.com",
path: "/those/",
scheme: "ftps",
}],
});
import pulumi
import pulumi_f5bigip as f5bigip
tftest = f5bigip.ltm.ProfileRewrite("tftest",
name="/Common/tf_profile",
defaults_from="/Common/rewrite",
rewrite_mode="uri-translation")
tftestrule1 = f5bigip.ltm.ProfileRewriteUriRules("tftestrule1",
profile_name=tftest.name,
rule_name="tf_rule",
rule_type="request",
clients=[{
"host": "www.foo.com",
"scheme": "https",
}],
servers=[{
"host": "www.bar.com",
"path": "/this/",
"scheme": "https",
"port": "8888",
}])
tftestrule2 = f5bigip.ltm.ProfileRewriteUriRules("tftestrule2",
profile_name=tftest.name,
rule_name="tf_rule2",
clients=[{
"host": "www.baz.com",
"path": "/that/",
"scheme": "ftp",
"port": "8888",
}],
servers=[{
"host": "www.buz.com",
"path": "/those/",
"scheme": "ftps",
}])
package main
import (
"github.com/pulumi/pulumi-f5bigip/sdk/v3/go/f5bigip/ltm"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
tftest, err := ltm.NewProfileRewrite(ctx, "tftest", <m.ProfileRewriteArgs{
Name: pulumi.String("/Common/tf_profile"),
DefaultsFrom: pulumi.String("/Common/rewrite"),
RewriteMode: pulumi.String("uri-translation"),
})
if err != nil {
return err
}
_, err = ltm.NewProfileRewriteUriRules(ctx, "tftestrule1", <m.ProfileRewriteUriRulesArgs{
ProfileName: tftest.Name,
RuleName: pulumi.String("tf_rule"),
RuleType: pulumi.String("request"),
Clients: ltm.ProfileRewriteUriRulesClientArray{
<m.ProfileRewriteUriRulesClientArgs{
Host: pulumi.String("www.foo.com"),
Scheme: pulumi.String("https"),
},
},
Servers: ltm.ProfileRewriteUriRulesServerArray{
<m.ProfileRewriteUriRulesServerArgs{
Host: pulumi.String("www.bar.com"),
Path: pulumi.String("/this/"),
Scheme: pulumi.String("https"),
Port: pulumi.String("8888"),
},
},
})
if err != nil {
return err
}
_, err = ltm.NewProfileRewriteUriRules(ctx, "tftestrule2", <m.ProfileRewriteUriRulesArgs{
ProfileName: tftest.Name,
RuleName: pulumi.String("tf_rule2"),
Clients: ltm.ProfileRewriteUriRulesClientArray{
<m.ProfileRewriteUriRulesClientArgs{
Host: pulumi.String("www.baz.com"),
Path: pulumi.String("/that/"),
Scheme: pulumi.String("ftp"),
Port: pulumi.String("8888"),
},
},
Servers: ltm.ProfileRewriteUriRulesServerArray{
<m.ProfileRewriteUriRulesServerArgs{
Host: pulumi.String("www.buz.com"),
Path: pulumi.String("/those/"),
Scheme: pulumi.String("ftps"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using F5BigIP = Pulumi.F5BigIP;
return await Deployment.RunAsync(() =>
{
var tftest = new F5BigIP.Ltm.ProfileRewrite("tftest", new()
{
Name = "/Common/tf_profile",
DefaultsFrom = "/Common/rewrite",
RewriteMode = "uri-translation",
});
var tftestrule1 = new F5BigIP.Ltm.ProfileRewriteUriRules("tftestrule1", new()
{
ProfileName = tftest.Name,
RuleName = "tf_rule",
RuleType = "request",
Clients = new[]
{
new F5BigIP.Ltm.Inputs.ProfileRewriteUriRulesClientArgs
{
Host = "www.foo.com",
Scheme = "https",
},
},
Servers = new[]
{
new F5BigIP.Ltm.Inputs.ProfileRewriteUriRulesServerArgs
{
Host = "www.bar.com",
Path = "/this/",
Scheme = "https",
Port = "8888",
},
},
});
var tftestrule2 = new F5BigIP.Ltm.ProfileRewriteUriRules("tftestrule2", new()
{
ProfileName = tftest.Name,
RuleName = "tf_rule2",
Clients = new[]
{
new F5BigIP.Ltm.Inputs.ProfileRewriteUriRulesClientArgs
{
Host = "www.baz.com",
Path = "/that/",
Scheme = "ftp",
Port = "8888",
},
},
Servers = new[]
{
new F5BigIP.Ltm.Inputs.ProfileRewriteUriRulesServerArgs
{
Host = "www.buz.com",
Path = "/those/",
Scheme = "ftps",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.f5bigip.ltm.ProfileRewrite;
import com.pulumi.f5bigip.ltm.ProfileRewriteArgs;
import com.pulumi.f5bigip.ltm.ProfileRewriteUriRules;
import com.pulumi.f5bigip.ltm.ProfileRewriteUriRulesArgs;
import com.pulumi.f5bigip.ltm.inputs.ProfileRewriteUriRulesClientArgs;
import com.pulumi.f5bigip.ltm.inputs.ProfileRewriteUriRulesServerArgs;
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 tftest = new ProfileRewrite("tftest", ProfileRewriteArgs.builder()
.name("/Common/tf_profile")
.defaultsFrom("/Common/rewrite")
.rewriteMode("uri-translation")
.build());
var tftestrule1 = new ProfileRewriteUriRules("tftestrule1", ProfileRewriteUriRulesArgs.builder()
.profileName(tftest.name())
.ruleName("tf_rule")
.ruleType("request")
.clients(ProfileRewriteUriRulesClientArgs.builder()
.host("www.foo.com")
.scheme("https")
.build())
.servers(ProfileRewriteUriRulesServerArgs.builder()
.host("www.bar.com")
.path("/this/")
.scheme("https")
.port("8888")
.build())
.build());
var tftestrule2 = new ProfileRewriteUriRules("tftestrule2", ProfileRewriteUriRulesArgs.builder()
.profileName(tftest.name())
.ruleName("tf_rule2")
.clients(ProfileRewriteUriRulesClientArgs.builder()
.host("www.baz.com")
.path("/that/")
.scheme("ftp")
.port("8888")
.build())
.servers(ProfileRewriteUriRulesServerArgs.builder()
.host("www.buz.com")
.path("/those/")
.scheme("ftps")
.build())
.build());
}
}
resources:
tftest:
type: f5bigip:ltm:ProfileRewrite
properties:
name: /Common/tf_profile
defaultsFrom: /Common/rewrite
rewriteMode: uri-translation
tftestrule1:
type: f5bigip:ltm:ProfileRewriteUriRules
properties:
profileName: ${tftest.name}
ruleName: tf_rule
ruleType: request
clients:
- host: www.foo.com
scheme: https
servers:
- host: www.bar.com
path: /this/
scheme: https
port: '8888'
tftestrule2:
type: f5bigip:ltm:ProfileRewriteUriRules
properties:
profileName: ${tftest.name}
ruleName: tf_rule2
clients:
- host: www.baz.com
path: /that/
scheme: ftp
port: '8888'
servers:
- host: www.buz.com
path: /those/
scheme: ftps
Create ProfileRewriteUriRules Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ProfileRewriteUriRules(name: string, args: ProfileRewriteUriRulesArgs, opts?: CustomResourceOptions);
@overload
def ProfileRewriteUriRules(resource_name: str,
args: ProfileRewriteUriRulesArgs,
opts: Optional[ResourceOptions] = None)
@overload
def ProfileRewriteUriRules(resource_name: str,
opts: Optional[ResourceOptions] = None,
clients: Optional[Sequence[ProfileRewriteUriRulesClientArgs]] = None,
profile_name: Optional[str] = None,
rule_name: Optional[str] = None,
servers: Optional[Sequence[ProfileRewriteUriRulesServerArgs]] = None,
rule_type: Optional[str] = None)
func NewProfileRewriteUriRules(ctx *Context, name string, args ProfileRewriteUriRulesArgs, opts ...ResourceOption) (*ProfileRewriteUriRules, error)
public ProfileRewriteUriRules(string name, ProfileRewriteUriRulesArgs args, CustomResourceOptions? opts = null)
public ProfileRewriteUriRules(String name, ProfileRewriteUriRulesArgs args)
public ProfileRewriteUriRules(String name, ProfileRewriteUriRulesArgs args, CustomResourceOptions options)
type: f5bigip:ltm:ProfileRewriteUriRules
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ProfileRewriteUriRulesArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ProfileRewriteUriRulesArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ProfileRewriteUriRulesArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ProfileRewriteUriRulesArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ProfileRewriteUriRulesArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var profileRewriteUriRulesResource = new F5BigIP.Ltm.ProfileRewriteUriRules("profileRewriteUriRulesResource", new()
{
Clients = new[]
{
new F5BigIP.Ltm.Inputs.ProfileRewriteUriRulesClientArgs
{
Host = "string",
Scheme = "string",
Path = "string",
Port = "string",
},
},
ProfileName = "string",
RuleName = "string",
Servers = new[]
{
new F5BigIP.Ltm.Inputs.ProfileRewriteUriRulesServerArgs
{
Host = "string",
Scheme = "string",
Path = "string",
Port = "string",
},
},
RuleType = "string",
});
example, err := ltm.NewProfileRewriteUriRules(ctx, "profileRewriteUriRulesResource", <m.ProfileRewriteUriRulesArgs{
Clients: ltm.ProfileRewriteUriRulesClientArray{
<m.ProfileRewriteUriRulesClientArgs{
Host: pulumi.String("string"),
Scheme: pulumi.String("string"),
Path: pulumi.String("string"),
Port: pulumi.String("string"),
},
},
ProfileName: pulumi.String("string"),
RuleName: pulumi.String("string"),
Servers: ltm.ProfileRewriteUriRulesServerArray{
<m.ProfileRewriteUriRulesServerArgs{
Host: pulumi.String("string"),
Scheme: pulumi.String("string"),
Path: pulumi.String("string"),
Port: pulumi.String("string"),
},
},
RuleType: pulumi.String("string"),
})
var profileRewriteUriRulesResource = new ProfileRewriteUriRules("profileRewriteUriRulesResource", ProfileRewriteUriRulesArgs.builder()
.clients(ProfileRewriteUriRulesClientArgs.builder()
.host("string")
.scheme("string")
.path("string")
.port("string")
.build())
.profileName("string")
.ruleName("string")
.servers(ProfileRewriteUriRulesServerArgs.builder()
.host("string")
.scheme("string")
.path("string")
.port("string")
.build())
.ruleType("string")
.build());
profile_rewrite_uri_rules_resource = f5bigip.ltm.ProfileRewriteUriRules("profileRewriteUriRulesResource",
clients=[{
"host": "string",
"scheme": "string",
"path": "string",
"port": "string",
}],
profile_name="string",
rule_name="string",
servers=[{
"host": "string",
"scheme": "string",
"path": "string",
"port": "string",
}],
rule_type="string")
const profileRewriteUriRulesResource = new f5bigip.ltm.ProfileRewriteUriRules("profileRewriteUriRulesResource", {
clients: [{
host: "string",
scheme: "string",
path: "string",
port: "string",
}],
profileName: "string",
ruleName: "string",
servers: [{
host: "string",
scheme: "string",
path: "string",
port: "string",
}],
ruleType: "string",
});
type: f5bigip:ltm:ProfileRewriteUriRules
properties:
clients:
- host: string
path: string
port: string
scheme: string
profileName: string
ruleName: string
ruleType: string
servers:
- host: string
path: string
port: string
scheme: string
ProfileRewriteUriRules Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The ProfileRewriteUriRules resource accepts the following input properties:
- Clients
List<Pulumi.
F5Big IP. Ltm. Inputs. Profile Rewrite Uri Rules Client> - Block type. Each request is block type with following arguments.
- Profile
Name string - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- Rule
Name string - Specifies the name of the uri rule.
- Servers
List<Pulumi.
F5Big IP. Ltm. Inputs. Profile Rewrite Uri Rules Server> - Block type. Each request is block type with following arguments.
- Rule
Type string - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- Clients
[]Profile
Rewrite Uri Rules Client Args - Block type. Each request is block type with following arguments.
- Profile
Name string - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- Rule
Name string - Specifies the name of the uri rule.
- Servers
[]Profile
Rewrite Uri Rules Server Args - Block type. Each request is block type with following arguments.
- Rule
Type string - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- clients
List<Profile
Rewrite Uri Rules Client> - Block type. Each request is block type with following arguments.
- profile
Name String - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule
Name String - Specifies the name of the uri rule.
- servers
List<Profile
Rewrite Uri Rules Server> - Block type. Each request is block type with following arguments.
- rule
Type String - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- clients
Profile
Rewrite Uri Rules Client[] - Block type. Each request is block type with following arguments.
- profile
Name string - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule
Name string - Specifies the name of the uri rule.
- servers
Profile
Rewrite Uri Rules Server[] - Block type. Each request is block type with following arguments.
- rule
Type string - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- clients
Sequence[Profile
Rewrite Uri Rules Client Args] - Block type. Each request is block type with following arguments.
- profile_
name str - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule_
name str - Specifies the name of the uri rule.
- servers
Sequence[Profile
Rewrite Uri Rules Server Args] - Block type. Each request is block type with following arguments.
- rule_
type str - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- clients List<Property Map>
- Block type. Each request is block type with following arguments.
- profile
Name String - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule
Name String - Specifies the name of the uri rule.
- servers List<Property Map>
- Block type. Each request is block type with following arguments.
- rule
Type String - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
Outputs
All input properties are implicitly available as output properties. Additionally, the ProfileRewriteUriRules resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing ProfileRewriteUriRules Resource
Get an existing ProfileRewriteUriRules resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ProfileRewriteUriRulesState, opts?: CustomResourceOptions): ProfileRewriteUriRules
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
clients: Optional[Sequence[ProfileRewriteUriRulesClientArgs]] = None,
profile_name: Optional[str] = None,
rule_name: Optional[str] = None,
rule_type: Optional[str] = None,
servers: Optional[Sequence[ProfileRewriteUriRulesServerArgs]] = None) -> ProfileRewriteUriRules
func GetProfileRewriteUriRules(ctx *Context, name string, id IDInput, state *ProfileRewriteUriRulesState, opts ...ResourceOption) (*ProfileRewriteUriRules, error)
public static ProfileRewriteUriRules Get(string name, Input<string> id, ProfileRewriteUriRulesState? state, CustomResourceOptions? opts = null)
public static ProfileRewriteUriRules get(String name, Output<String> id, ProfileRewriteUriRulesState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Clients
List<Pulumi.
F5Big IP. Ltm. Inputs. Profile Rewrite Uri Rules Client> - Block type. Each request is block type with following arguments.
- Profile
Name string - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- Rule
Name string - Specifies the name of the uri rule.
- Rule
Type string - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- Servers
List<Pulumi.
F5Big IP. Ltm. Inputs. Profile Rewrite Uri Rules Server> - Block type. Each request is block type with following arguments.
- Clients
[]Profile
Rewrite Uri Rules Client Args - Block type. Each request is block type with following arguments.
- Profile
Name string - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- Rule
Name string - Specifies the name of the uri rule.
- Rule
Type string - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- Servers
[]Profile
Rewrite Uri Rules Server Args - Block type. Each request is block type with following arguments.
- clients
List<Profile
Rewrite Uri Rules Client> - Block type. Each request is block type with following arguments.
- profile
Name String - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule
Name String - Specifies the name of the uri rule.
- rule
Type String - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- servers
List<Profile
Rewrite Uri Rules Server> - Block type. Each request is block type with following arguments.
- clients
Profile
Rewrite Uri Rules Client[] - Block type. Each request is block type with following arguments.
- profile
Name string - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule
Name string - Specifies the name of the uri rule.
- rule
Type string - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- servers
Profile
Rewrite Uri Rules Server[] - Block type. Each request is block type with following arguments.
- clients
Sequence[Profile
Rewrite Uri Rules Client Args] - Block type. Each request is block type with following arguments.
- profile_
name str - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule_
name str - Specifies the name of the uri rule.
- rule_
type str - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- servers
Sequence[Profile
Rewrite Uri Rules Server Args] - Block type. Each request is block type with following arguments.
- clients List<Property Map>
- Block type. Each request is block type with following arguments.
- profile
Name String - Name of the rewrite profile. ( policy name should be in full path which is combination of partition and policy name )
- rule
Name String - Specifies the name of the uri rule.
- rule
Type String - Specifies the type of the uri rule. Valid choices are:
request, response, both
. Default value is:both
- servers List<Property Map>
- Block type. Each request is block type with following arguments.
Supporting Types
ProfileRewriteUriRulesClient, ProfileRewriteUriRulesClientArgs
ProfileRewriteUriRulesServer, ProfileRewriteUriRulesServerArgs
Package Details
- Repository
- f5 BIG-IP pulumi/pulumi-f5bigip
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
bigip
Terraform Provider.