File: vendor_sku_create.py

package info (click to toggle)
python-azure 20230112%2Bgit-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 749,544 kB
  • sloc: python: 6,815,827; javascript: 287; makefile: 195; xml: 109; sh: 105
file content (122 lines) | stat: -rw-r--r-- 5,966 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

from azure.identity import DefaultAzureCredential
from azure.mgmt.hybridnetwork import HybridNetworkManagementClient

"""
# PREREQUISITES
    pip install azure-identity
    pip install azure-mgmt-hybridnetwork
# USAGE
    python vendor_sku_create.py

    Before run the sample, please set the values of the client ID, tenant ID and client secret
    of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
    AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
    https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""


def main():
    client = HybridNetworkManagementClient(
        credential=DefaultAzureCredential(),
        subscription_id="subid",
    )

    response = client.vendor_skus.begin_create_or_update(
        vendor_name="TestVendor",
        sku_name="TestSku",
        parameters={
            "properties": {
                "deploymentMode": "PrivateEdgeZone",
                "managedApplicationTemplate": {},
                "networkFunctionTemplate": {
                    "networkFunctionRoleConfigurations": [
                        {
                            "customProfile": {"metadataConfigurationPath": "/var/logs/network.cfg"},
                            "networkInterfaces": [
                                {
                                    "ipConfigurations": [
                                        {
                                            "dnsServers": None,
                                            "gateway": "",
                                            "ipAddress": "",
                                            "ipAllocationMethod": "Dynamic",
                                            "ipVersion": "IPv4",
                                            "subnet": "",
                                        }
                                    ],
                                    "macAddress": "",
                                    "networkInterfaceName": "nic1",
                                    "vmSwitchType": "Wan",
                                },
                                {
                                    "ipConfigurations": [
                                        {
                                            "dnsServers": None,
                                            "gateway": "",
                                            "ipAddress": "",
                                            "ipAllocationMethod": "Dynamic",
                                            "ipVersion": "IPv4",
                                            "subnet": "",
                                        }
                                    ],
                                    "macAddress": "",
                                    "networkInterfaceName": "nic2",
                                    "vmSwitchType": "Management",
                                },
                            ],
                            "osProfile": {
                                "adminUsername": "dummyuser",
                                "customData": "base-64 encoded string of custom data",
                                "linuxConfiguration": {
                                    "ssh": {
                                        "publicKeys": [
                                            {
                                                "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAwrr66r8n6B8Y0zMF3dOpXEapIQD9DiYQ6D6/zwor9o39jSkHNiMMER/GETBbzP83LOcekm02aRjo55ArO7gPPVvCXbrirJu9pkm4AC4BBre5xSLS= user@constoso-DSH",
                                                "path": "home/user/.ssh/authorized_keys",
                                            }
                                        ]
                                    }
                                },
                            },
                            "roleName": "test",
                            "roleType": "VirtualMachine",
                            "storageProfile": {
                                "dataDisks": [{"createOption": "Empty", "diskSizeGB": 10, "name": "DataDisk1"}],
                                "imageReference": {
                                    "offer": "UbuntuServer",
                                    "publisher": "Canonical",
                                    "sku": "18.04-LTS",
                                    "version": "18.04.201804262",
                                },
                                "osDisk": {
                                    "diskSizeGB": 30,
                                    "name": "vhdName",
                                    "osType": "Linux",
                                    "vhd": {
                                        "uri": "https://contoso.net/link/vnd.vhd?sp=rl&st=2020-10-08T20:38:19Z&se=2020-12-09T19:38:00Z&sv=2019-12-12&sr=b&sig=7BM2f4yOw%3D"
                                    },
                                },
                            },
                            "virtualMachineSize": "Standard_D3_v2",
                        }
                    ]
                },
                "networkFunctionType": "VirtualNetworkFunction",
                "preview": True,
            }
        },
    ).result()
    print(response)


# x-ms-original-file: specification/hybridnetwork/resource-manager/Microsoft.HybridNetwork/preview/2022-01-01-preview/examples/VendorSkuCreate.json
if __name__ == "__main__":
    main()