public async Task DeleteVirtualMachine()
        {
            #region Snippet:Managing_VirtualMachines_DeleteVirtualMachine
            ArmClient    armClient    = new ArmClient(new DefaultAzureCredential());
            Subscription subscription = armClient.DefaultSubscription;
            // first we need to get the resource group
            string        rgName        = "myRgName";
            ResourceGroup resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);

            // Now we get the virtual machine container from the resource group
            VirtualMachineContainer vmContainer = resourceGroup.GetVirtualMachines();
            string         vmName = "myVM";
            VirtualMachine vm     = await vmContainer.GetAsync(vmName);

            await vm.DeleteAsync();

            #endregion Snippet:Managing_VirtualMachines_DeleteVirtualMachine
        }
        public async Task ListAllVirtualMachines()
        {
            #region Snippet:Managing_VirtualMachines_ListAllVirtualMachines
            ArmClient    armClient    = new ArmClient(new DefaultAzureCredential());
            Subscription subscription = armClient.DefaultSubscription;
            // first we need to get the resource group
            string        rgName        = "myRgName";
            ResourceGroup resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);

            // Now we get the virtual machine container from the resource group
            VirtualMachineContainer vmContainer = resourceGroup.GetVirtualMachines();
            // With ListAsync(), we can get a list of the virtual machines in the container
            AsyncPageable <VirtualMachine> response = vmContainer.GetAllAsync();
            await foreach (VirtualMachine vm in response)
            {
                Console.WriteLine(vm.Data.Name);
            }
            #endregion Snippet:Managing_VirtualMachines_ListAllVirtualMachines
        }
示例#3
0
 /// <summary>
 /// Initializes a new instance of <see cref="VirtualMachineModelBuilderBase"/>.
 /// </summary>
 /// <param name="containerOperations"> The <see cref="VirtualMachineContainer"/> that the virtual machine will be built in. </param>
 /// <param name="vm"> The data model representing the virtual machine to create. </param>
 protected VirtualMachineModelBuilderBase(VirtualMachineContainer containerOperations, VirtualMachineData vm)
     : base(containerOperations, vm)
 {
 }
        // TODO: GENERATOR Update Builder after models are incorporated in generated models

        internal VirtualMachineModelBuilder(VirtualMachineContainer containerOperations, VirtualMachineData vm) : base(containerOperations, vm)
        {
            // _model.Name = vmName;
            //_model = new VirtualMachine(location);
        }
        public async Task CreateVirtualMachine()
        {
            #region Snippet:Managing_VirtualMachines_CreateAVirtualMachine
            ArmClient    armClient    = new ArmClient(new DefaultAzureCredential());
            Subscription subscription = armClient.DefaultSubscription;
            // first we need to get the resource group
            string        rgName        = "myRgName";
            ResourceGroup resourceGroup = await subscription.GetResourceGroups().GetAsync(rgName);

            // Now we get the virtual machine container from the resource group
            VirtualMachineContainer vmContainer = resourceGroup.GetVirtualMachines();
            // Use the same location as the resource group
            string vmName = "myVM";
            var    input  = new VirtualMachineData(resourceGroup.Data.Location)
            {
                HardwareProfile = new HardwareProfile()
                {
                    VmSize = VirtualMachineSizeTypes.StandardF2
                },
                OsProfile = new OSProfile()
                {
                    AdminUsername      = "******",
                    ComputerName       = "myVM",
                    LinuxConfiguration = new LinuxConfiguration()
                    {
                        DisablePasswordAuthentication = true,
                        Ssh = new SshConfiguration()
                        {
                            PublicKeys =
                            {
                                new SshPublicKeyInfo()
                                {
                                    Path    = $"/home/adminUser/.ssh/authorized_keys",
                                    KeyData = "<value of the public ssh key>",
                                }
                            }
                        }
                    }
                },
                NetworkProfile = new NetworkProfile()
                {
                    NetworkInterfaces =
                    {
                        new NetworkInterfaceReference()
                        {
                            Id      = "/subscriptions/<subscriptionId>/resourceGroups/<rgName>/providers/Microsoft.Network/networkInterfaces/<nicName>",
                            Primary = true,
                        }
                    }
                },
                StorageProfile = new StorageProfile()
                {
                    OsDisk = new OSDisk(DiskCreateOptionTypes.FromImage)
                    {
                        OsType      = OperatingSystemTypes.Linux,
                        Caching     = CachingTypes.ReadWrite,
                        ManagedDisk = new ManagedDiskParameters()
                        {
                            StorageAccountType = StorageAccountTypes.StandardLRS
                        }
                    },
                    ImageReference = new ImageReference()
                    {
                        Publisher = "Canonical",
                        Offer     = "UbuntuServer",
                        Sku       = "16.04-LTS",
                        Version   = "latest",
                    }
                }
            };
            VirtualMachineCreateOrUpdateOperation lro = await vmContainer.CreateOrUpdateAsync(vmName, input);

            VirtualMachine vm = lro.Value;
            #endregion Snippet:Managing_VirtualMachines_CreateAVirtualMachine
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="VirtualMachineModelBuilder"/> class.
 /// </summary>
 /// <param name="containerOperations"> The container to create the virtual machine in. </param>
 /// <param name="vm"> The data model representing the virtual machine to create. </param>
 public VirtualMachineModelBuilder(VirtualMachineContainer containerOperations, VirtualMachineData vm) : base(containerOperations, vm)
 {
     // TODO: GENERATOR Update Builder after models are incorporated in generated models
     // _model.Name = vmName;
     //_model = new VirtualMachine(location);
 }