pulumi / pulumi-azure-native

Azure Native Provider
Apache License 2.0
129 stars 35 forks source link

Support for ADT Event route #1165

Open SeanErvinson opened 3 years ago

SeanErvinson commented 3 years ago

I know that Azure Digital Twin is fairly new but is there any example to create event route for an Azure Digital Twin instance using Azure Native? Can't seem to find any documentation about it.

Is there a workaround at this moment?

8KPXeFe

mikhailshilkov commented 3 years ago

Hey @SeanErvinson thank you for your question.

I can't spot anything about event routes in the Open API spec that is the source for our SDKs...

Could you do me a favor: create an event route in the portal, the go to the Automation -> Export template tab on the left and see if your route is in the generated template? If so, could you paste that snippet here?

SeanErvinson commented 3 years ago

Hi @mikhailshilkov, here's the snippet

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "digitalTwinsInstances_dev_adt_name": {
            "defaultValue": "dev-adt",
            "type": "String"
        }
    },
    "variables": {},
    "resources": [
        {
            "type": "Microsoft.DigitalTwins/digitalTwinsInstances",
            "apiVersion": "2020-12-01",
            "name": "[parameters('digitalTwinsInstances_dev_adt_name')]",
            "location": "westus2",
            "tags": {
                "env": "dev"
            },
            "properties": {
                "privateEndpointConnections": [],
                "publicNetworkAccess": "Enabled"
            }
        },
        {
            "type": "Microsoft.DigitalTwins/digitalTwinsInstances/endpoints",
            "apiVersion": "2020-12-01",
            "name": "[concat(parameters('digitalTwinsInstances_dev_adt_name'), '/TwinUpdates')]",
            "dependsOn": [
                "[resourceId('Microsoft.DigitalTwins/digitalTwinsInstances', parameters('digitalTwinsInstances_dev_adt_name'))]"
            ],
            "properties": {
                "authenticationType": "KeyBased",
                "endpointType": "EventHub",
                "connectionStringPrimaryKey": "Endpoint=sb://***/;SharedAccessKeyName=***;SharedAccessKey=***;EntityPath=***",
                "connectionStringSecondaryKey": "Endpoint=sb://***/;SharedAccessKeyName=***;SharedAccessKey=***;EntityPath=***"
            }
        }
    ]
}

It doesn't seem that azure exposes the event route just yet.

mikhailshilkov commented 3 years ago

Thank you! Yeah, that's what I was afraid of...

Actually, it looks like event routes are a part of the data plane API: https://github.com/Azure/azure-rest-api-specs/blob/9b489ff217acd3bd6d62b2932e42d3c08ed4d08c/specification/digitaltwins/data-plane/Microsoft.DigitalTwins/stable/2020-10-31/digitaltwins.json#L1084

Azure Native is currently based on ARM API (control plane) so unfortunately I don't think we can support event routes until they make it to ARM.

XavierGeerinck commented 2 years ago

Any update on this by accident? Would love to be able to create the Event Routes. Will ping Microsoft as well