UNPKG

@pulumi/f5bigip

Version:

A Pulumi package for creating and managing F5 BigIP resources.

115 lines 4.73 kB
"use strict"; // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** Object.defineProperty(exports, "__esModule", { value: true }); exports.ProfileRewriteUriRules = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("../utilities"); /** * `f5bigip.ltm.ProfileRewriteUriRules` Configures uri rewrite rules attached to the ltm rewrite profile * * ## Example Usage * * ```typescript * 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", * }], * }); * ``` */ class ProfileRewriteUriRules extends pulumi.CustomResource { /** * Get an existing ProfileRewriteUriRules resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name, id, state, opts) { return new ProfileRewriteUriRules(name, state, Object.assign(Object.assign({}, opts), { id: id })); } /** * Returns true if the given object is an instance of ProfileRewriteUriRules. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj) { if (obj === undefined || obj === null) { return false; } return obj['__pulumiType'] === ProfileRewriteUriRules.__pulumiType; } constructor(name, argsOrState, opts) { let resourceInputs = {}; opts = opts || {}; if (opts.id) { const state = argsOrState; resourceInputs["clients"] = state ? state.clients : undefined; resourceInputs["profileName"] = state ? state.profileName : undefined; resourceInputs["ruleName"] = state ? state.ruleName : undefined; resourceInputs["ruleType"] = state ? state.ruleType : undefined; resourceInputs["servers"] = state ? state.servers : undefined; } else { const args = argsOrState; if ((!args || args.clients === undefined) && !opts.urn) { throw new Error("Missing required property 'clients'"); } if ((!args || args.profileName === undefined) && !opts.urn) { throw new Error("Missing required property 'profileName'"); } if ((!args || args.ruleName === undefined) && !opts.urn) { throw new Error("Missing required property 'ruleName'"); } if ((!args || args.servers === undefined) && !opts.urn) { throw new Error("Missing required property 'servers'"); } resourceInputs["clients"] = args ? args.clients : undefined; resourceInputs["profileName"] = args ? args.profileName : undefined; resourceInputs["ruleName"] = args ? args.ruleName : undefined; resourceInputs["ruleType"] = args ? args.ruleType : undefined; resourceInputs["servers"] = args ? args.servers : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(ProfileRewriteUriRules.__pulumiType, name, resourceInputs, opts); } } exports.ProfileRewriteUriRules = ProfileRewriteUriRules; /** @internal */ ProfileRewriteUriRules.__pulumiType = 'f5bigip:ltm/profileRewriteUriRules:ProfileRewriteUriRules'; //# sourceMappingURL=profileRewriteUriRules.js.map