jkawamoto/roadie

View on GitHub
cloud/azure/compute/models/virtual_machine_scale_set_o_s_profile.go

Summary

Maintainability
C
1 day
Test Coverage
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"
)

// VirtualMachineScaleSetOSProfile Describes a virtual machine scale set OS profile.
// swagger:model VirtualMachineScaleSetOSProfile
type VirtualMachineScaleSetOSProfile struct {

    // The admin user password.
    AdminPassword string `json:"adminPassword,omitempty"`

    // The admin user name.
    AdminUsername string `json:"adminUsername,omitempty"`

    // The computer name prefix.
    ComputerNamePrefix string `json:"computerNamePrefix,omitempty"`

    // A base-64 encoded string of custom data.
    CustomData string `json:"customData,omitempty"`

    // The Linux Configuration of the OS profile.
    LinuxConfiguration *LinuxConfiguration `json:"linuxConfiguration,omitempty"`

    // The List of certificates for addition to the VM.
    Secrets []*VaultSecretGroup `json:"secrets"`

    // The Windows Configuration of the OS profile.
    WindowsConfiguration *WindowsConfiguration `json:"windowsConfiguration,omitempty"`
}

// Validate validates this virtual machine scale set o s profile
func (m *VirtualMachineScaleSetOSProfile) Validate(formats strfmt.Registry) error {
    var res []error

    if err := m.validateLinuxConfiguration(formats); err != nil {
        // prop
        res = append(res, err)
    }

    if err := m.validateSecrets(formats); err != nil {
        // prop
        res = append(res, err)
    }

    if err := m.validateWindowsConfiguration(formats); err != nil {
        // prop
        res = append(res, err)
    }

    if len(res) > 0 {
        return errors.CompositeValidationError(res...)
    }
    return nil
}

func (m *VirtualMachineScaleSetOSProfile) validateLinuxConfiguration(formats strfmt.Registry) error {

    if swag.IsZero(m.LinuxConfiguration) { // not required
        return nil
    }

    if m.LinuxConfiguration != nil {

        if err := m.LinuxConfiguration.Validate(formats); err != nil {
            return err
        }
    }

    return nil
}

func (m *VirtualMachineScaleSetOSProfile) validateSecrets(formats strfmt.Registry) error {

    if swag.IsZero(m.Secrets) { // not required
        return nil
    }

    for i := 0; i < len(m.Secrets); i++ {

        if swag.IsZero(m.Secrets[i]) { // not required
            continue
        }

        if m.Secrets[i] != nil {

            if err := m.Secrets[i].Validate(formats); err != nil {
                return err
            }
        }

    }

    return nil
}

func (m *VirtualMachineScaleSetOSProfile) validateWindowsConfiguration(formats strfmt.Registry) error {

    if swag.IsZero(m.WindowsConfiguration) { // not required
        return nil
    }

    if m.WindowsConfiguration != nil {

        if err := m.WindowsConfiguration.Validate(formats); err != nil {
            return err
        }
    }

    return nil
}