1. Packages
  2. Alibaba Cloud Provider
  3. API Docs
  4. ga
  5. getForwardingRules
Alibaba Cloud v3.66.0 published on Friday, Nov 15, 2024 by Pulumi

alicloud.ga.getForwardingRules

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.66.0 published on Friday, Nov 15, 2024 by Pulumi

    This data source provides the Global Accelerator (GA) Forwarding Rules of the current Alibaba Cloud user.

    NOTE: Available in v1.120.0+.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const example = alicloud.ga.getForwardingRules({
        acceleratorId: "example_value",
        listenerId: "example_value",
        ids: ["example_value"],
    });
    export const firstGaForwardingRuleId = example.then(example => example.forwardingRules?.[0]?.id);
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    example = alicloud.ga.get_forwarding_rules(accelerator_id="example_value",
        listener_id="example_value",
        ids=["example_value"])
    pulumi.export("firstGaForwardingRuleId", example.forwarding_rules[0].id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ga"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := ga.GetForwardingRules(ctx, &ga.GetForwardingRulesArgs{
    			AcceleratorId: "example_value",
    			ListenerId:    "example_value",
    			Ids: []string{
    				"example_value",
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("firstGaForwardingRuleId", example.ForwardingRules[0].Id)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var example = AliCloud.Ga.GetForwardingRules.Invoke(new()
        {
            AcceleratorId = "example_value",
            ListenerId = "example_value",
            Ids = new[]
            {
                "example_value",
            },
        });
    
        return new Dictionary<string, object?>
        {
            ["firstGaForwardingRuleId"] = example.Apply(getForwardingRulesResult => getForwardingRulesResult.ForwardingRules[0]?.Id),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.ga.GaFunctions;
    import com.pulumi.alicloud.ga.inputs.GetForwardingRulesArgs;
    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) {
            final var example = GaFunctions.getForwardingRules(GetForwardingRulesArgs.builder()
                .acceleratorId("example_value")
                .listenerId("example_value")
                .ids("example_value")
                .build());
    
            ctx.export("firstGaForwardingRuleId", example.applyValue(getForwardingRulesResult -> getForwardingRulesResult.forwardingRules()[0].id()));
        }
    }
    
    variables:
      example:
        fn::invoke:
          Function: alicloud:ga:getForwardingRules
          Arguments:
            acceleratorId: example_value
            listenerId: example_value
            ids:
              - example_value
    outputs:
      firstGaForwardingRuleId: ${example.forwardingRules[0].id}
    

    Using getForwardingRules

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getForwardingRules(args: GetForwardingRulesArgs, opts?: InvokeOptions): Promise<GetForwardingRulesResult>
    function getForwardingRulesOutput(args: GetForwardingRulesOutputArgs, opts?: InvokeOptions): Output<GetForwardingRulesResult>
    def get_forwarding_rules(accelerator_id: Optional[str] = None,
                             ids: Optional[Sequence[str]] = None,
                             listener_id: Optional[str] = None,
                             output_file: Optional[str] = None,
                             status: Optional[str] = None,
                             opts: Optional[InvokeOptions] = None) -> GetForwardingRulesResult
    def get_forwarding_rules_output(accelerator_id: Optional[pulumi.Input[str]] = None,
                             ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                             listener_id: Optional[pulumi.Input[str]] = None,
                             output_file: Optional[pulumi.Input[str]] = None,
                             status: Optional[pulumi.Input[str]] = None,
                             opts: Optional[InvokeOptions] = None) -> Output[GetForwardingRulesResult]
    func GetForwardingRules(ctx *Context, args *GetForwardingRulesArgs, opts ...InvokeOption) (*GetForwardingRulesResult, error)
    func GetForwardingRulesOutput(ctx *Context, args *GetForwardingRulesOutputArgs, opts ...InvokeOption) GetForwardingRulesResultOutput

    > Note: This function is named GetForwardingRules in the Go SDK.

    public static class GetForwardingRules 
    {
        public static Task<GetForwardingRulesResult> InvokeAsync(GetForwardingRulesArgs args, InvokeOptions? opts = null)
        public static Output<GetForwardingRulesResult> Invoke(GetForwardingRulesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetForwardingRulesResult> getForwardingRules(GetForwardingRulesArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: alicloud:ga/getForwardingRules:getForwardingRules
      arguments:
        # arguments dictionary

    The following arguments are supported:

    AcceleratorId string
    The ID of the Global Accelerator instance.
    ListenerId string
    The ID of the listener.
    Ids List<string>
    A list of Forwarding Rule IDs.
    OutputFile string
    File name where to save data source results (after running pulumi preview).
    Status string
    The status of the acceleration region. Valid values: active, configuring.
    AcceleratorId string
    The ID of the Global Accelerator instance.
    ListenerId string
    The ID of the listener.
    Ids []string
    A list of Forwarding Rule IDs.
    OutputFile string
    File name where to save data source results (after running pulumi preview).
    Status string
    The status of the acceleration region. Valid values: active, configuring.
    acceleratorId String
    The ID of the Global Accelerator instance.
    listenerId String
    The ID of the listener.
    ids List<String>
    A list of Forwarding Rule IDs.
    outputFile String
    File name where to save data source results (after running pulumi preview).
    status String
    The status of the acceleration region. Valid values: active, configuring.
    acceleratorId string
    The ID of the Global Accelerator instance.
    listenerId string
    The ID of the listener.
    ids string[]
    A list of Forwarding Rule IDs.
    outputFile string
    File name where to save data source results (after running pulumi preview).
    status string
    The status of the acceleration region. Valid values: active, configuring.
    accelerator_id str
    The ID of the Global Accelerator instance.
    listener_id str
    The ID of the listener.
    ids Sequence[str]
    A list of Forwarding Rule IDs.
    output_file str
    File name where to save data source results (after running pulumi preview).
    status str
    The status of the acceleration region. Valid values: active, configuring.
    acceleratorId String
    The ID of the Global Accelerator instance.
    listenerId String
    The ID of the listener.
    ids List<String>
    A list of Forwarding Rule IDs.
    outputFile String
    File name where to save data source results (after running pulumi preview).
    status String
    The status of the acceleration region. Valid values: active, configuring.

    getForwardingRules Result

    The following output properties are available:

    AcceleratorId string
    ForwardingRules List<Pulumi.AliCloud.Ga.Outputs.GetForwardingRulesForwardingRule>
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids List<string>
    ListenerId string
    OutputFile string
    Status string
    AcceleratorId string
    ForwardingRules []GetForwardingRulesForwardingRule
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids []string
    ListenerId string
    OutputFile string
    Status string
    acceleratorId String
    forwardingRules List<GetForwardingRulesForwardingRule>
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    listenerId String
    outputFile String
    status String
    acceleratorId string
    forwardingRules GetForwardingRulesForwardingRule[]
    id string
    The provider-assigned unique ID for this managed resource.
    ids string[]
    listenerId string
    outputFile string
    status string
    accelerator_id str
    forwarding_rules Sequence[GetForwardingRulesForwardingRule]
    id str
    The provider-assigned unique ID for this managed resource.
    ids Sequence[str]
    listener_id str
    output_file str
    status str
    acceleratorId String
    forwardingRules List<Property Map>
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    listenerId String
    outputFile String
    status String

    Supporting Types

    GetForwardingRulesForwardingRule

    ForwardingRuleId string
    Forwarding Policy ID.
    ForwardingRuleName string
    Forwarding policy name. The length of the name is 2-128 English or Chinese characters.
    ForwardingRuleStatus string
    Forwarding Policy Status.
    Id string
    ListenerId string
    The ID of the listener.
    Priority int
    Forwarding policy priority.
    RuleActions List<Pulumi.AliCloud.Ga.Inputs.GetForwardingRulesForwardingRuleRuleAction>
    The IP protocol used by the GA instance. order - Forwarding priority. rule_action_type - Forward action type. forward_group_config - Forwarding configuration. server_group_tuples - Terminal node group configuration. endpoint_group_id - Terminal node group ID.
    RuleConditions List<Pulumi.AliCloud.Ga.Inputs.GetForwardingRulesForwardingRuleRuleCondition>
    Forward action. rule_condition_type - Forwarding condition type. path_config - Path configuration information. values - The length of the path is 1-128 characters. host_config - Domain name configuration information. values - The domain name is 3-128 characters long.
    ForwardingRuleId string
    Forwarding Policy ID.
    ForwardingRuleName string
    Forwarding policy name. The length of the name is 2-128 English or Chinese characters.
    ForwardingRuleStatus string
    Forwarding Policy Status.
    Id string
    ListenerId string
    The ID of the listener.
    Priority int
    Forwarding policy priority.
    RuleActions []GetForwardingRulesForwardingRuleRuleAction
    The IP protocol used by the GA instance. order - Forwarding priority. rule_action_type - Forward action type. forward_group_config - Forwarding configuration. server_group_tuples - Terminal node group configuration. endpoint_group_id - Terminal node group ID.
    RuleConditions []GetForwardingRulesForwardingRuleRuleCondition
    Forward action. rule_condition_type - Forwarding condition type. path_config - Path configuration information. values - The length of the path is 1-128 characters. host_config - Domain name configuration information. values - The domain name is 3-128 characters long.
    forwardingRuleId String
    Forwarding Policy ID.
    forwardingRuleName String
    Forwarding policy name. The length of the name is 2-128 English or Chinese characters.
    forwardingRuleStatus String
    Forwarding Policy Status.
    id String
    listenerId String
    The ID of the listener.
    priority Integer
    Forwarding policy priority.
    ruleActions List<GetForwardingRulesForwardingRuleRuleAction>
    The IP protocol used by the GA instance. order - Forwarding priority. rule_action_type - Forward action type. forward_group_config - Forwarding configuration. server_group_tuples - Terminal node group configuration. endpoint_group_id - Terminal node group ID.
    ruleConditions List<GetForwardingRulesForwardingRuleRuleCondition>
    Forward action. rule_condition_type - Forwarding condition type. path_config - Path configuration information. values - The length of the path is 1-128 characters. host_config - Domain name configuration information. values - The domain name is 3-128 characters long.
    forwardingRuleId string
    Forwarding Policy ID.
    forwardingRuleName string
    Forwarding policy name. The length of the name is 2-128 English or Chinese characters.
    forwardingRuleStatus string
    Forwarding Policy Status.
    id string
    listenerId string
    The ID of the listener.
    priority number
    Forwarding policy priority.
    ruleActions GetForwardingRulesForwardingRuleRuleAction[]
    The IP protocol used by the GA instance. order - Forwarding priority. rule_action_type - Forward action type. forward_group_config - Forwarding configuration. server_group_tuples - Terminal node group configuration. endpoint_group_id - Terminal node group ID.
    ruleConditions GetForwardingRulesForwardingRuleRuleCondition[]
    Forward action. rule_condition_type - Forwarding condition type. path_config - Path configuration information. values - The length of the path is 1-128 characters. host_config - Domain name configuration information. values - The domain name is 3-128 characters long.
    forwarding_rule_id str
    Forwarding Policy ID.
    forwarding_rule_name str
    Forwarding policy name. The length of the name is 2-128 English or Chinese characters.
    forwarding_rule_status str
    Forwarding Policy Status.
    id str
    listener_id str
    The ID of the listener.
    priority int
    Forwarding policy priority.
    rule_actions Sequence[GetForwardingRulesForwardingRuleRuleAction]
    The IP protocol used by the GA instance. order - Forwarding priority. rule_action_type - Forward action type. forward_group_config - Forwarding configuration. server_group_tuples - Terminal node group configuration. endpoint_group_id - Terminal node group ID.
    rule_conditions Sequence[GetForwardingRulesForwardingRuleRuleCondition]
    Forward action. rule_condition_type - Forwarding condition type. path_config - Path configuration information. values - The length of the path is 1-128 characters. host_config - Domain name configuration information. values - The domain name is 3-128 characters long.
    forwardingRuleId String
    Forwarding Policy ID.
    forwardingRuleName String
    Forwarding policy name. The length of the name is 2-128 English or Chinese characters.
    forwardingRuleStatus String
    Forwarding Policy Status.
    id String
    listenerId String
    The ID of the listener.
    priority Number
    Forwarding policy priority.
    ruleActions List<Property Map>
    The IP protocol used by the GA instance. order - Forwarding priority. rule_action_type - Forward action type. forward_group_config - Forwarding configuration. server_group_tuples - Terminal node group configuration. endpoint_group_id - Terminal node group ID.
    ruleConditions List<Property Map>
    Forward action. rule_condition_type - Forwarding condition type. path_config - Path configuration information. values - The length of the path is 1-128 characters. host_config - Domain name configuration information. values - The domain name is 3-128 characters long.

    GetForwardingRulesForwardingRuleRuleAction

    GetForwardingRulesForwardingRuleRuleActionForwardGroupConfig

    GetForwardingRulesForwardingRuleRuleActionForwardGroupConfigServerGroupTuple

    GetForwardingRulesForwardingRuleRuleCondition

    GetForwardingRulesForwardingRuleRuleConditionHostConfig

    Values List<string>
    Values []string
    values List<String>
    values string[]
    values Sequence[str]
    values List<String>

    GetForwardingRulesForwardingRuleRuleConditionPathConfig

    Values List<string>
    Values []string
    values List<String>
    values string[]
    values Sequence[str]
    values List<String>

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo
    Alibaba Cloud v3.66.0 published on Friday, Nov 15, 2024 by Pulumi