cloud/azure/compute/models/virtual_machine_scale_set_vm_properties.go
package models
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
strfmt "github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
"github.com/go-openapi/errors"
)
// VirtualMachineScaleSetVMProperties Describes the properties of a virtual machine scale set virtual machine.
// swagger:model VirtualMachineScaleSetVMProperties
type VirtualMachineScaleSetVMProperties struct {
// The reference Id of the availability set to which this virtual machine belongs.
AvailabilitySet *SubResource `json:"availabilitySet,omitempty"`
// The diagnostics profile.
DiagnosticsProfile *DiagnosticsProfile `json:"diagnosticsProfile,omitempty"`
// The hardware profile.
HardwareProfile *HardwareProfile `json:"hardwareProfile,omitempty"`
// The virtual machine instance view.
// Read Only: true
InstanceView *VirtualMachineInstanceView `json:"instanceView,omitempty"`
// Specifies whether the latest model has been applied to the virtual machine.
// Read Only: true
LatestModelApplied *bool `json:"latestModelApplied,omitempty"`
// The license type, which is for bring your own license scenario.
LicenseType string `json:"licenseType,omitempty"`
// The network profile.
NetworkProfile *NetworkProfile `json:"networkProfile,omitempty"`
// The OS profile.
OsProfile *OSProfile `json:"osProfile,omitempty"`
// The provisioning state, which only appears in the response.
// Read Only: true
ProvisioningState string `json:"provisioningState,omitempty"`
// The storage profile.
StorageProfile *StorageProfile `json:"storageProfile,omitempty"`
// Azure VM unique ID.
// Read Only: true
VMID string `json:"vmId,omitempty"`
}
// Validate validates this virtual machine scale set VM properties
func (m *VirtualMachineScaleSetVMProperties) Validate(formats strfmt.Registry) error {
var res []error
if err := m.validateAvailabilitySet(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateDiagnosticsProfile(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateHardwareProfile(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateInstanceView(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateNetworkProfile(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateOsProfile(formats); err != nil {
// prop
res = append(res, err)
}
if err := m.validateStorageProfile(formats); err != nil {
// prop
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateAvailabilitySet(formats strfmt.Registry) error {
if swag.IsZero(m.AvailabilitySet) { // not required
return nil
}
if m.AvailabilitySet != nil {
if err := m.AvailabilitySet.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateDiagnosticsProfile(formats strfmt.Registry) error {
if swag.IsZero(m.DiagnosticsProfile) { // not required
return nil
}
if m.DiagnosticsProfile != nil {
if err := m.DiagnosticsProfile.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateHardwareProfile(formats strfmt.Registry) error {
if swag.IsZero(m.HardwareProfile) { // not required
return nil
}
if m.HardwareProfile != nil {
if err := m.HardwareProfile.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateInstanceView(formats strfmt.Registry) error {
if swag.IsZero(m.InstanceView) { // not required
return nil
}
if m.InstanceView != nil {
if err := m.InstanceView.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateNetworkProfile(formats strfmt.Registry) error {
if swag.IsZero(m.NetworkProfile) { // not required
return nil
}
if m.NetworkProfile != nil {
if err := m.NetworkProfile.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateOsProfile(formats strfmt.Registry) error {
if swag.IsZero(m.OsProfile) { // not required
return nil
}
if m.OsProfile != nil {
if err := m.OsProfile.Validate(formats); err != nil {
return err
}
}
return nil
}
func (m *VirtualMachineScaleSetVMProperties) validateStorageProfile(formats strfmt.Registry) error {
if swag.IsZero(m.StorageProfile) { // not required
return nil
}
if m.StorageProfile != nil {
if err := m.StorageProfile.Validate(formats); err != nil {
return err
}
}
return nil
}