azure-cli
Version:
Microsoft Azure Cross Platform Command Line tool
141 lines (135 loc) • 3.87 kB
JavaScript
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
* regenerated.
*/
;
const models = require('./index');
/**
* Describes a Virtual Machine Extension Image.
*
* @extends models['Resource']
*/
class VirtualMachineExtensionImage extends models['Resource'] {
/**
* Create a VirtualMachineExtensionImage.
* @member {string} operatingSystem The operating system this extension
* supports.
* @member {string} computeRole The type of role (IaaS or PaaS) this
* extension supports.
* @member {string} handlerSchema The schema defined by publisher, where
* extension consumers should provide settings in a matching schema.
* @member {boolean} [vmScaleSetEnabled] Whether the extension can be used on
* xRP VMScaleSets. By default existing extensions are usable on scalesets,
* but there might be cases where a publisher wants to explicitly indicate
* the extension is only enabled for CRP VMs but not VMSS.
* @member {boolean} [supportsMultipleExtensions] Whether the handler can
* support multiple extensions.
*/
constructor() {
super();
}
/**
* Defines the metadata of VirtualMachineExtensionImage
*
* @returns {object} metadata of VirtualMachineExtensionImage
*
*/
mapper() {
return {
required: false,
serializedName: 'VirtualMachineExtensionImage',
type: {
name: 'Composite',
className: 'VirtualMachineExtensionImage',
modelProperties: {
id: {
required: false,
readOnly: true,
serializedName: 'id',
type: {
name: 'String'
}
},
name: {
required: false,
readOnly: true,
serializedName: 'name',
type: {
name: 'String'
}
},
type: {
required: false,
readOnly: true,
serializedName: 'type',
type: {
name: 'String'
}
},
location: {
required: true,
serializedName: 'location',
type: {
name: 'String'
}
},
tags: {
required: false,
serializedName: 'tags',
type: {
name: 'Dictionary',
value: {
required: false,
serializedName: 'StringElementType',
type: {
name: 'String'
}
}
}
},
operatingSystem: {
required: true,
serializedName: 'properties.operatingSystem',
type: {
name: 'String'
}
},
computeRole: {
required: true,
serializedName: 'properties.computeRole',
type: {
name: 'String'
}
},
handlerSchema: {
required: true,
serializedName: 'properties.handlerSchema',
type: {
name: 'String'
}
},
vmScaleSetEnabled: {
required: false,
serializedName: 'properties.vmScaleSetEnabled',
type: {
name: 'Boolean'
}
},
supportsMultipleExtensions: {
required: false,
serializedName: 'properties.supportsMultipleExtensions',
type: {
name: 'Boolean'
}
}
}
}
};
}
}
module.exports = VirtualMachineExtensionImage;