From b8d1477c565465db8077f916ba5a5beaf01ca8d3 Mon Sep 17 00:00:00 2001 From: Hentioe Date: Thu, 26 Nov 2020 16:03:13 +0800 Subject: Added models for creating virtual machines --- .../model/virtual_machines/create_or_update.ex | 29 +++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/lib/azure_ex/model/virtual_machines/create_or_update.ex b/lib/azure_ex/model/virtual_machines/create_or_update.ex index e719c0d..937300b 100644 --- a/lib/azure_ex/model/virtual_machines/create_or_update.ex +++ b/lib/azure_ex/model/virtual_machines/create_or_update.ex @@ -3,7 +3,14 @@ defmodule AzureEx.Model.VirtualMachines.CreateOrUpdate do use TypedStruct - alias __MODULE__.{Properties, NetworkInterfaceReference, StorageProfile} + alias __MODULE__.{ + Properties, + NetworkInterfaceReference, + StorageProfile, + LinuxConfiguration, + SshConfiguration, + SshPublicKey + } typedstruct module: HardwareProfile do @derive Jason.Encoder @@ -38,12 +45,32 @@ defmodule AzureEx.Model.VirtualMachines.CreateOrUpdate do field :networkInterfaces, [NetworkInterfaceReference.t()] end + typedstruct module: SshPublicKey do + @derive Jason.Encoder + + field :path, String.t() + field :keyData, String.t() + end + + typedstruct module: SshConfiguration do + @derive Jason.Encoder + + field :publicKeys, [SshPublicKey.t()] + end + + typedstruct module: LinuxConfiguration do + @derive Jason.Encoder + + field :ssh, SshConfiguration.t() + end + typedstruct module: OSProfile do @derive Jason.Encoder field :adminPassword, String.t() field :adminUsername, String.t() field :computerName, String.t() + field :linuxConfiguration, LinuxConfiguration.t() end typedstruct module: Properties do -- cgit v1.2.3