1. Packages
  2. Cisco IOS XE Resource Provider
  3. API Docs
  4. MdtSubscription
Cisco IOS XE v0.0.1 published on Friday, Sep 22, 2023 by lbrlabs

iosxe.MdtSubscription

Explore with Pulumi AI

This resource can manage the MDT Subscription configuration.

Example Usage

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Iosxe = Lbrlabs.PulumiPackage.Iosxe;

return await Deployment.RunAsync(() => 
{
    var example = new Iosxe.MdtSubscription("example", new()
    {
        Encoding = "encode-kvgpb",
        FilterXpath = "/ios-events-ios-xe-oper:ospf-neighbor-state-change",
        Receivers = new[]
        {
            new Iosxe.Inputs.MdtSubscriptionReceiverArgs
            {
                Address = "5.6.7.8",
                Port = 57600,
                Protocol = "grpc-tcp",
            },
        },
        SourceAddress = "1.2.3.4",
        SourceVrf = "Mgmt-vrf",
        Stream = "yang-notif-native",
        SubscriptionId = 101,
        UpdatePolicyOnChange = true,
    });

});
Copy
package main

import (
	"github.com/lbrlabs/pulumi-iosxe/sdk/go/iosxe"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := iosxe.NewMdtSubscription(ctx, "example", &iosxe.MdtSubscriptionArgs{
			Encoding:    pulumi.String("encode-kvgpb"),
			FilterXpath: pulumi.String("/ios-events-ios-xe-oper:ospf-neighbor-state-change"),
			Receivers: iosxe.MdtSubscriptionReceiverArray{
				&iosxe.MdtSubscriptionReceiverArgs{
					Address:  pulumi.String("5.6.7.8"),
					Port:     pulumi.Int(57600),
					Protocol: pulumi.String("grpc-tcp"),
				},
			},
			SourceAddress:        pulumi.String("1.2.3.4"),
			SourceVrf:            pulumi.String("Mgmt-vrf"),
			Stream:               pulumi.String("yang-notif-native"),
			SubscriptionId:       pulumi.Int(101),
			UpdatePolicyOnChange: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.iosxe.MdtSubscription;
import com.pulumi.iosxe.MdtSubscriptionArgs;
import com.pulumi.iosxe.inputs.MdtSubscriptionReceiverArgs;
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 example = new MdtSubscription("example", MdtSubscriptionArgs.builder()        
            .encoding("encode-kvgpb")
            .filterXpath("/ios-events-ios-xe-oper:ospf-neighbor-state-change")
            .receivers(MdtSubscriptionReceiverArgs.builder()
                .address("5.6.7.8")
                .port(57600)
                .protocol("grpc-tcp")
                .build())
            .sourceAddress("1.2.3.4")
            .sourceVrf("Mgmt-vrf")
            .stream("yang-notif-native")
            .subscriptionId(101)
            .updatePolicyOnChange(true)
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as iosxe from "@lbrlabs/pulumi-iosxe";

const example = new iosxe.MdtSubscription("example", {
    encoding: "encode-kvgpb",
    filterXpath: "/ios-events-ios-xe-oper:ospf-neighbor-state-change",
    receivers: [{
        address: "5.6.7.8",
        port: 57600,
        protocol: "grpc-tcp",
    }],
    sourceAddress: "1.2.3.4",
    sourceVrf: "Mgmt-vrf",
    stream: "yang-notif-native",
    subscriptionId: 101,
    updatePolicyOnChange: true,
});
Copy
import pulumi
import lbrlabs_pulumi_iosxe as iosxe

example = iosxe.MdtSubscription("example",
    encoding="encode-kvgpb",
    filter_xpath="/ios-events-ios-xe-oper:ospf-neighbor-state-change",
    receivers=[iosxe.MdtSubscriptionReceiverArgs(
        address="5.6.7.8",
        port=57600,
        protocol="grpc-tcp",
    )],
    source_address="1.2.3.4",
    source_vrf="Mgmt-vrf",
    stream="yang-notif-native",
    subscription_id=101,
    update_policy_on_change=True)
Copy
resources:
  example:
    type: iosxe:MdtSubscription
    properties:
      encoding: encode-kvgpb
      filterXpath: /ios-events-ios-xe-oper:ospf-neighbor-state-change
      receivers:
        - address: 5.6.7.8
          port: 57600
          protocol: grpc-tcp
      sourceAddress: 1.2.3.4
      sourceVrf: Mgmt-vrf
      stream: yang-notif-native
      subscriptionId: 101
      updatePolicyOnChange: true
Copy

Create MdtSubscription Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new MdtSubscription(name: string, args: MdtSubscriptionArgs, opts?: CustomResourceOptions);
@overload
def MdtSubscription(resource_name: str,
                    args: MdtSubscriptionArgs,
                    opts: Optional[ResourceOptions] = None)

@overload
def MdtSubscription(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    subscription_id: Optional[int] = None,
                    device: Optional[str] = None,
                    encoding: Optional[str] = None,
                    filter_xpath: Optional[str] = None,
                    receivers: Optional[Sequence[MdtSubscriptionReceiverArgs]] = None,
                    source_address: Optional[str] = None,
                    source_vrf: Optional[str] = None,
                    stream: Optional[str] = None,
                    update_policy_on_change: Optional[bool] = None,
                    update_policy_periodic: Optional[int] = None)
func NewMdtSubscription(ctx *Context, name string, args MdtSubscriptionArgs, opts ...ResourceOption) (*MdtSubscription, error)
public MdtSubscription(string name, MdtSubscriptionArgs args, CustomResourceOptions? opts = null)
public MdtSubscription(String name, MdtSubscriptionArgs args)
public MdtSubscription(String name, MdtSubscriptionArgs args, CustomResourceOptions options)
type: iosxe:MdtSubscription
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. MdtSubscriptionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. MdtSubscriptionArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. MdtSubscriptionArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. MdtSubscriptionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. MdtSubscriptionArgs
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 mdtSubscriptionResource = new Iosxe.MdtSubscription("mdtSubscriptionResource", new()
{
    SubscriptionId = 0,
    Device = "string",
    Encoding = "string",
    FilterXpath = "string",
    Receivers = new[]
    {
        new Iosxe.Inputs.MdtSubscriptionReceiverArgs
        {
            Address = "string",
            Port = 0,
            Protocol = "string",
        },
    },
    SourceAddress = "string",
    SourceVrf = "string",
    Stream = "string",
    UpdatePolicyOnChange = false,
    UpdatePolicyPeriodic = 0,
});
Copy
example, err := iosxe.NewMdtSubscription(ctx, "mdtSubscriptionResource", &iosxe.MdtSubscriptionArgs{
	SubscriptionId: pulumi.Int(0),
	Device:         pulumi.String("string"),
	Encoding:       pulumi.String("string"),
	FilterXpath:    pulumi.String("string"),
	Receivers: iosxe.MdtSubscriptionReceiverArray{
		&iosxe.MdtSubscriptionReceiverArgs{
			Address:  pulumi.String("string"),
			Port:     pulumi.Int(0),
			Protocol: pulumi.String("string"),
		},
	},
	SourceAddress:        pulumi.String("string"),
	SourceVrf:            pulumi.String("string"),
	Stream:               pulumi.String("string"),
	UpdatePolicyOnChange: pulumi.Bool(false),
	UpdatePolicyPeriodic: pulumi.Int(0),
})
Copy
var mdtSubscriptionResource = new MdtSubscription("mdtSubscriptionResource", MdtSubscriptionArgs.builder()
    .subscriptionId(0)
    .device("string")
    .encoding("string")
    .filterXpath("string")
    .receivers(MdtSubscriptionReceiverArgs.builder()
        .address("string")
        .port(0)
        .protocol("string")
        .build())
    .sourceAddress("string")
    .sourceVrf("string")
    .stream("string")
    .updatePolicyOnChange(false)
    .updatePolicyPeriodic(0)
    .build());
Copy
mdt_subscription_resource = iosxe.MdtSubscription("mdtSubscriptionResource",
    subscription_id=0,
    device="string",
    encoding="string",
    filter_xpath="string",
    receivers=[{
        "address": "string",
        "port": 0,
        "protocol": "string",
    }],
    source_address="string",
    source_vrf="string",
    stream="string",
    update_policy_on_change=False,
    update_policy_periodic=0)
Copy
const mdtSubscriptionResource = new iosxe.MdtSubscription("mdtSubscriptionResource", {
    subscriptionId: 0,
    device: "string",
    encoding: "string",
    filterXpath: "string",
    receivers: [{
        address: "string",
        port: 0,
        protocol: "string",
    }],
    sourceAddress: "string",
    sourceVrf: "string",
    stream: "string",
    updatePolicyOnChange: false,
    updatePolicyPeriodic: 0,
});
Copy
type: iosxe:MdtSubscription
properties:
    device: string
    encoding: string
    filterXpath: string
    receivers:
        - address: string
          port: 0
          protocol: string
    sourceAddress: string
    sourceVrf: string
    stream: string
    subscriptionId: 0
    updatePolicyOnChange: false
    updatePolicyPeriodic: 0
Copy

MdtSubscription 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 MdtSubscription resource accepts the following input properties:

SubscriptionId This property is required. int
Unique subscription identifier. - Range: 0-2147483647
Device string
A device name from the provider configuration.
Encoding string
Update notification encoding
FilterXpath string
XPath expression describing the set of objects wanted as part of the subscription
Receivers List<Lbrlabs.PulumiPackage.Iosxe.Inputs.MdtSubscriptionReceiver>
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
SourceAddress string
The source address for the notifications
SourceVrf string
Network instance name for the VRF
Stream string
The name of the event stream being subscribed to
UpdatePolicyOnChange bool
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
UpdatePolicyPeriodic int
Period of update notifications in hundredths of a second - Range: 0-4294967295
SubscriptionId This property is required. int
Unique subscription identifier. - Range: 0-2147483647
Device string
A device name from the provider configuration.
Encoding string
Update notification encoding
FilterXpath string
XPath expression describing the set of objects wanted as part of the subscription
Receivers []MdtSubscriptionReceiverArgs
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
SourceAddress string
The source address for the notifications
SourceVrf string
Network instance name for the VRF
Stream string
The name of the event stream being subscribed to
UpdatePolicyOnChange bool
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
UpdatePolicyPeriodic int
Period of update notifications in hundredths of a second - Range: 0-4294967295
subscriptionId This property is required. Integer
Unique subscription identifier. - Range: 0-2147483647
device String
A device name from the provider configuration.
encoding String
Update notification encoding
filterXpath String
XPath expression describing the set of objects wanted as part of the subscription
receivers List<MdtSubscriptionReceiver>
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
sourceAddress String
The source address for the notifications
sourceVrf String
Network instance name for the VRF
stream String
The name of the event stream being subscribed to
updatePolicyOnChange Boolean
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
updatePolicyPeriodic Integer
Period of update notifications in hundredths of a second - Range: 0-4294967295
subscriptionId This property is required. number
Unique subscription identifier. - Range: 0-2147483647
device string
A device name from the provider configuration.
encoding string
Update notification encoding
filterXpath string
XPath expression describing the set of objects wanted as part of the subscription
receivers MdtSubscriptionReceiver[]
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
sourceAddress string
The source address for the notifications
sourceVrf string
Network instance name for the VRF
stream string
The name of the event stream being subscribed to
updatePolicyOnChange boolean
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
updatePolicyPeriodic number
Period of update notifications in hundredths of a second - Range: 0-4294967295
subscription_id This property is required. int
Unique subscription identifier. - Range: 0-2147483647
device str
A device name from the provider configuration.
encoding str
Update notification encoding
filter_xpath str
XPath expression describing the set of objects wanted as part of the subscription
receivers Sequence[MdtSubscriptionReceiverArgs]
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
source_address str
The source address for the notifications
source_vrf str
Network instance name for the VRF
stream str
The name of the event stream being subscribed to
update_policy_on_change bool
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
update_policy_periodic int
Period of update notifications in hundredths of a second - Range: 0-4294967295
subscriptionId This property is required. Number
Unique subscription identifier. - Range: 0-2147483647
device String
A device name from the provider configuration.
encoding String
Update notification encoding
filterXpath String
XPath expression describing the set of objects wanted as part of the subscription
receivers List<Property Map>
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
sourceAddress String
The source address for the notifications
sourceVrf String
Network instance name for the VRF
stream String
The name of the event stream being subscribed to
updatePolicyOnChange Boolean
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
updatePolicyPeriodic Number
Period of update notifications in hundredths of a second - Range: 0-4294967295

Outputs

All input properties are implicitly available as output properties. Additionally, the MdtSubscription 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 MdtSubscription Resource

Get an existing MdtSubscription 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?: MdtSubscriptionState, opts?: CustomResourceOptions): MdtSubscription
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        device: Optional[str] = None,
        encoding: Optional[str] = None,
        filter_xpath: Optional[str] = None,
        receivers: Optional[Sequence[MdtSubscriptionReceiverArgs]] = None,
        source_address: Optional[str] = None,
        source_vrf: Optional[str] = None,
        stream: Optional[str] = None,
        subscription_id: Optional[int] = None,
        update_policy_on_change: Optional[bool] = None,
        update_policy_periodic: Optional[int] = None) -> MdtSubscription
func GetMdtSubscription(ctx *Context, name string, id IDInput, state *MdtSubscriptionState, opts ...ResourceOption) (*MdtSubscription, error)
public static MdtSubscription Get(string name, Input<string> id, MdtSubscriptionState? state, CustomResourceOptions? opts = null)
public static MdtSubscription get(String name, Output<String> id, MdtSubscriptionState state, CustomResourceOptions options)
resources:  _:    type: iosxe:MdtSubscription    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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.
The following state arguments are supported:
Device string
A device name from the provider configuration.
Encoding string
Update notification encoding
FilterXpath string
XPath expression describing the set of objects wanted as part of the subscription
Receivers List<Lbrlabs.PulumiPackage.Iosxe.Inputs.MdtSubscriptionReceiver>
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
SourceAddress string
The source address for the notifications
SourceVrf string
Network instance name for the VRF
Stream string
The name of the event stream being subscribed to
SubscriptionId int
Unique subscription identifier. - Range: 0-2147483647
UpdatePolicyOnChange bool
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
UpdatePolicyPeriodic int
Period of update notifications in hundredths of a second - Range: 0-4294967295
Device string
A device name from the provider configuration.
Encoding string
Update notification encoding
FilterXpath string
XPath expression describing the set of objects wanted as part of the subscription
Receivers []MdtSubscriptionReceiverArgs
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
SourceAddress string
The source address for the notifications
SourceVrf string
Network instance name for the VRF
Stream string
The name of the event stream being subscribed to
SubscriptionId int
Unique subscription identifier. - Range: 0-2147483647
UpdatePolicyOnChange bool
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
UpdatePolicyPeriodic int
Period of update notifications in hundredths of a second - Range: 0-4294967295
device String
A device name from the provider configuration.
encoding String
Update notification encoding
filterXpath String
XPath expression describing the set of objects wanted as part of the subscription
receivers List<MdtSubscriptionReceiver>
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
sourceAddress String
The source address for the notifications
sourceVrf String
Network instance name for the VRF
stream String
The name of the event stream being subscribed to
subscriptionId Integer
Unique subscription identifier. - Range: 0-2147483647
updatePolicyOnChange Boolean
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
updatePolicyPeriodic Integer
Period of update notifications in hundredths of a second - Range: 0-4294967295
device string
A device name from the provider configuration.
encoding string
Update notification encoding
filterXpath string
XPath expression describing the set of objects wanted as part of the subscription
receivers MdtSubscriptionReceiver[]
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
sourceAddress string
The source address for the notifications
sourceVrf string
Network instance name for the VRF
stream string
The name of the event stream being subscribed to
subscriptionId number
Unique subscription identifier. - Range: 0-2147483647
updatePolicyOnChange boolean
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
updatePolicyPeriodic number
Period of update notifications in hundredths of a second - Range: 0-4294967295
device str
A device name from the provider configuration.
encoding str
Update notification encoding
filter_xpath str
XPath expression describing the set of objects wanted as part of the subscription
receivers Sequence[MdtSubscriptionReceiverArgs]
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
source_address str
The source address for the notifications
source_vrf str
Network instance name for the VRF
stream str
The name of the event stream being subscribed to
subscription_id int
Unique subscription identifier. - Range: 0-2147483647
update_policy_on_change bool
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
update_policy_periodic int
Period of update notifications in hundredths of a second - Range: 0-4294967295
device String
A device name from the provider configuration.
encoding String
Update notification encoding
filterXpath String
XPath expression describing the set of objects wanted as part of the subscription
receivers List<Property Map>
Configuration of receivers of configured subscriptions. Use of this is deprecated. Use mdt-receiver-names instead.
sourceAddress String
The source address for the notifications
sourceVrf String
Network instance name for the VRF
stream String
The name of the event stream being subscribed to
subscriptionId Number
Unique subscription identifier. - Range: 0-2147483647
updatePolicyOnChange Boolean
If true, there is no initial update notification with the current value of all the data. NOT CURRENTLY SUPPORTED. If specified, must be false
updatePolicyPeriodic Number
Period of update notifications in hundredths of a second - Range: 0-4294967295

Supporting Types

MdtSubscriptionReceiver
, MdtSubscriptionReceiverArgs

Address This property is required. string
Port This property is required. int
Protocol This property is required. string
Address This property is required. string
Port This property is required. int
Protocol This property is required. string
address This property is required. String
port This property is required. Integer
protocol This property is required. String
address This property is required. string
port This property is required. number
protocol This property is required. string
address This property is required. str
port This property is required. int
protocol This property is required. str
address This property is required. String
port This property is required. Number
protocol This property is required. String

Import

 $ pulumi import iosxe:index/mdtSubscription:MdtSubscription example "Cisco-IOS-XE-mdt-cfg:mdt-config-data/mdt-subscription=101"
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
iosxe lbrlabs/pulumi-iosxe
License
Apache-2.0
Notes
This Pulumi package is based on the iosxe Terraform Provider.