PageRenderTime 26ms CodeModel.GetById 18ms RepoModel.GetById 0ms app.codeStats 1ms

/sdk/compute/mgmt-v2019_03_01/src/main/java/com/microsoft/azure/management/compute/v2019_03_01/VirtualMachineScaleSetOSProfile.java

http://github.com/WindowsAzure/azure-sdk-for-java
Java | 244 lines | 68 code | 24 blank | 152 comment | 0 complexity | e80aaddaf6c10653ff5af0ca0754ae00 MD5 | raw file
Possible License(s): MIT
  1. /**
  2. * Copyright (c) Microsoft Corporation. All rights reserved.
  3. * Licensed under the MIT License. See License.txt in the project root for
  4. * license information.
  5. *
  6. * Code generated by Microsoft (R) AutoRest Code Generator.
  7. */
  8. package com.microsoft.azure.management.compute.v2019_03_01;
  9. import java.util.List;
  10. import com.fasterxml.jackson.annotation.JsonProperty;
  11. /**
  12. * Describes a virtual machine scale set OS profile.
  13. */
  14. public class VirtualMachineScaleSetOSProfile {
  15. /**
  16. * Specifies the computer name prefix for all of the virtual machines in
  17. * the scale set. Computer name prefixes must be 1 to 15 characters long.
  18. */
  19. @JsonProperty(value = "computerNamePrefix")
  20. private String computerNamePrefix;
  21. /**
  22. * Specifies the name of the administrator account. <br><br>
  23. * **Windows-only restriction:** Cannot end in "." <br><br>
  24. * **Disallowed values:** "administrator", "admin", "user", "user1",
  25. * "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser",
  26. * "adm", "admin2", "aspnet", "backup", "console", "david", "guest",
  27. * "john", "owner", "root", "server", "sql", "support", "support_388945a0",
  28. * "sys", "test2", "test3", "user4", "user5". <br><br>
  29. * **Minimum-length (Linux):** 1 character <br><br>
  30. * **Max-length (Linux):** 64 characters <br><br> **Max-length
  31. * (Windows):** 20 characters <br><br><li> For root
  32. * access to the Linux VM, see [Using root privileges on Linux virtual
  33. * machines in
  34. * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)<br><li>
  35. * For a list of built-in system users on Linux that should not be used in
  36. * this field, see [Selecting User Names for Linux on
  37. * Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  38. */
  39. @JsonProperty(value = "adminUsername")
  40. private String adminUsername;
  41. /**
  42. * Specifies the password of the administrator account.
  43. * <br><br> **Minimum-length (Windows):** 8 characters
  44. * <br><br> **Minimum-length (Linux):** 6 characters
  45. * <br><br> **Max-length (Windows):** 123 characters
  46. * <br><br> **Max-length (Linux):** 72 characters
  47. * <br><br> **Complexity requirements:** 3 out of 4 conditions
  48. * below need to be fulfilled <br> Has lower characters <br>Has
  49. * upper characters <br> Has a digit <br> Has a special
  50. * character (Regex match [\W_]) <br><br> **Disallowed
  51. * values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word",
  52. * "pass@word1", "Password!", "Password1", "Password22", "iloveyou!"
  53. * <br><br> For resetting the password, see [How to reset the
  54. * Remote Desktop service or its login password in a Windows
  55. * VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)
  56. * <br><br> For resetting root password, see [Manage users,
  57. * SSH, and check or repair disks on Azure Linux VMs using the VMAccess
  58. * Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password).
  59. */
  60. @JsonProperty(value = "adminPassword")
  61. private String adminPassword;
  62. /**
  63. * Specifies a base-64 encoded string of custom data. The base-64 encoded
  64. * string is decoded to a binary array that is saved as a file on the
  65. * Virtual Machine. The maximum length of the binary array is 65535 bytes.
  66. * <br><br> For using cloud-init for your VM, see [Using
  67. * cloud-init to customize a Linux VM during
  68. * creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  69. */
  70. @JsonProperty(value = "customData")
  71. private String customData;
  72. /**
  73. * Specifies Windows operating system settings on the virtual machine.
  74. */
  75. @JsonProperty(value = "windowsConfiguration")
  76. private WindowsConfiguration windowsConfiguration;
  77. /**
  78. * Specifies the Linux operating system settings on the virtual machine.
  79. * <br><br>For a list of supported Linux distributions, see
  80. * [Linux on Azure-Endorsed
  81. * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  82. * <br><br> For running non-endorsed distributions, see
  83. * [Information for Non-Endorsed
  84. * Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  85. */
  86. @JsonProperty(value = "linuxConfiguration")
  87. private LinuxConfiguration linuxConfiguration;
  88. /**
  89. * Specifies set of certificates that should be installed onto the virtual
  90. * machines in the scale set.
  91. */
  92. @JsonProperty(value = "secrets")
  93. private List<VaultSecretGroup> secrets;
  94. /**
  95. * Get specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long.
  96. *
  97. * @return the computerNamePrefix value
  98. */
  99. public String computerNamePrefix() {
  100. return this.computerNamePrefix;
  101. }
  102. /**
  103. * Set specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long.
  104. *
  105. * @param computerNamePrefix the computerNamePrefix value to set
  106. * @return the VirtualMachineScaleSetOSProfile object itself.
  107. */
  108. public VirtualMachineScaleSetOSProfile withComputerNamePrefix(String computerNamePrefix) {
  109. this.computerNamePrefix = computerNamePrefix;
  110. return this;
  111. }
  112. /**
  113. * Get specifies the name of the administrator account. &lt;br&gt;&lt;br&gt; **Windows-only restriction:** Cannot end in "." &lt;br&gt;&lt;br&gt; **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". &lt;br&gt;&lt;br&gt; **Minimum-length (Linux):** 1 character &lt;br&gt;&lt;br&gt; **Max-length (Linux):** 64 characters &lt;br&gt;&lt;br&gt; **Max-length (Windows):** 20 characters &lt;br&gt;&lt;br&gt;&lt;li&gt; For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)&lt;br&gt;&lt;li&gt; For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  114. *
  115. * @return the adminUsername value
  116. */
  117. public String adminUsername() {
  118. return this.adminUsername;
  119. }
  120. /**
  121. * Set specifies the name of the administrator account. &lt;br&gt;&lt;br&gt; **Windows-only restriction:** Cannot end in "." &lt;br&gt;&lt;br&gt; **Disallowed values:** "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5". &lt;br&gt;&lt;br&gt; **Minimum-length (Linux):** 1 character &lt;br&gt;&lt;br&gt; **Max-length (Linux):** 64 characters &lt;br&gt;&lt;br&gt; **Max-length (Windows):** 20 characters &lt;br&gt;&lt;br&gt;&lt;li&gt; For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)&lt;br&gt;&lt;li&gt; For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  122. *
  123. * @param adminUsername the adminUsername value to set
  124. * @return the VirtualMachineScaleSetOSProfile object itself.
  125. */
  126. public VirtualMachineScaleSetOSProfile withAdminUsername(String adminUsername) {
  127. this.adminUsername = adminUsername;
  128. return this;
  129. }
  130. /**
  131. * Get specifies the password of the administrator account. &lt;br&gt;&lt;br&gt; **Minimum-length (Windows):** 8 characters &lt;br&gt;&lt;br&gt; **Minimum-length (Linux):** 6 characters &lt;br&gt;&lt;br&gt; **Max-length (Windows):** 123 characters &lt;br&gt;&lt;br&gt; **Max-length (Linux):** 72 characters &lt;br&gt;&lt;br&gt; **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled &lt;br&gt; Has lower characters &lt;br&gt;Has upper characters &lt;br&gt; Has a digit &lt;br&gt; Has a special character (Regex match [\W_]) &lt;br&gt;&lt;br&gt; **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" &lt;br&gt;&lt;br&gt; For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) &lt;br&gt;&lt;br&gt; For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password).
  132. *
  133. * @return the adminPassword value
  134. */
  135. public String adminPassword() {
  136. return this.adminPassword;
  137. }
  138. /**
  139. * Set specifies the password of the administrator account. &lt;br&gt;&lt;br&gt; **Minimum-length (Windows):** 8 characters &lt;br&gt;&lt;br&gt; **Minimum-length (Linux):** 6 characters &lt;br&gt;&lt;br&gt; **Max-length (Windows):** 123 characters &lt;br&gt;&lt;br&gt; **Max-length (Linux):** 72 characters &lt;br&gt;&lt;br&gt; **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled &lt;br&gt; Has lower characters &lt;br&gt;Has upper characters &lt;br&gt; Has a digit &lt;br&gt; Has a special character (Regex match [\W_]) &lt;br&gt;&lt;br&gt; **Disallowed values:** "abc@123", "P@$$w0rd", "P@ssw0rd", "P@ssword123", "Pa$$word", "pass@word1", "Password!", "Password1", "Password22", "iloveyou!" &lt;br&gt;&lt;br&gt; For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json) &lt;br&gt;&lt;br&gt; For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password).
  140. *
  141. * @param adminPassword the adminPassword value to set
  142. * @return the VirtualMachineScaleSetOSProfile object itself.
  143. */
  144. public VirtualMachineScaleSetOSProfile withAdminPassword(String adminPassword) {
  145. this.adminPassword = adminPassword;
  146. return this;
  147. }
  148. /**
  149. * Get specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. &lt;br&gt;&lt;br&gt; For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  150. *
  151. * @return the customData value
  152. */
  153. public String customData() {
  154. return this.customData;
  155. }
  156. /**
  157. * Set specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes. &lt;br&gt;&lt;br&gt; For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  158. *
  159. * @param customData the customData value to set
  160. * @return the VirtualMachineScaleSetOSProfile object itself.
  161. */
  162. public VirtualMachineScaleSetOSProfile withCustomData(String customData) {
  163. this.customData = customData;
  164. return this;
  165. }
  166. /**
  167. * Get specifies Windows operating system settings on the virtual machine.
  168. *
  169. * @return the windowsConfiguration value
  170. */
  171. public WindowsConfiguration windowsConfiguration() {
  172. return this.windowsConfiguration;
  173. }
  174. /**
  175. * Set specifies Windows operating system settings on the virtual machine.
  176. *
  177. * @param windowsConfiguration the windowsConfiguration value to set
  178. * @return the VirtualMachineScaleSetOSProfile object itself.
  179. */
  180. public VirtualMachineScaleSetOSProfile withWindowsConfiguration(WindowsConfiguration windowsConfiguration) {
  181. this.windowsConfiguration = windowsConfiguration;
  182. return this;
  183. }
  184. /**
  185. * Get specifies the Linux operating system settings on the virtual machine. &lt;br&gt;&lt;br&gt;For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) &lt;br&gt;&lt;br&gt; For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  186. *
  187. * @return the linuxConfiguration value
  188. */
  189. public LinuxConfiguration linuxConfiguration() {
  190. return this.linuxConfiguration;
  191. }
  192. /**
  193. * Set specifies the Linux operating system settings on the virtual machine. &lt;br&gt;&lt;br&gt;For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json) &lt;br&gt;&lt;br&gt; For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json).
  194. *
  195. * @param linuxConfiguration the linuxConfiguration value to set
  196. * @return the VirtualMachineScaleSetOSProfile object itself.
  197. */
  198. public VirtualMachineScaleSetOSProfile withLinuxConfiguration(LinuxConfiguration linuxConfiguration) {
  199. this.linuxConfiguration = linuxConfiguration;
  200. return this;
  201. }
  202. /**
  203. * Get specifies set of certificates that should be installed onto the virtual machines in the scale set.
  204. *
  205. * @return the secrets value
  206. */
  207. public List<VaultSecretGroup> secrets() {
  208. return this.secrets;
  209. }
  210. /**
  211. * Set specifies set of certificates that should be installed onto the virtual machines in the scale set.
  212. *
  213. * @param secrets the secrets value to set
  214. * @return the VirtualMachineScaleSetOSProfile object itself.
  215. */
  216. public VirtualMachineScaleSetOSProfile withSecrets(List<VaultSecretGroup> secrets) {
  217. this.secrets = secrets;
  218. return this;
  219. }
  220. }