diff --git a/lib/services/automationManagement/lib/models/azureQueryProperties.js b/lib/services/automationManagement/lib/models/azureQueryProperties.js new file mode 100644 index 0000000000..d856eb6ce2 --- /dev/null +++ b/lib/services/automationManagement/lib/models/azureQueryProperties.js @@ -0,0 +1,87 @@ +/* + * 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. + */ + +'use strict'; + +/** + * Azure query for the update configuration. + * + */ +class AzureQueryProperties { + /** + * Create a AzureQueryProperties. + * @member {array} [scope] List of Subscription or Resource Group ARM Ids. + * @member {array} [location] List of locations to scope the query to. + * @member {object} [tagSettings] Tag settings for the VM. + * @member {object} [tagSettings.tags] Dictionary of tags with its list of + * values. + * @member {string} [tagSettings.filterOperator] Filter VMs by Any or All + * specified tags. Possible values include: 'All', 'Any' + */ + constructor() { + } + + /** + * Defines the metadata of AzureQueryProperties + * + * @returns {object} metadata of AzureQueryProperties + * + */ + mapper() { + return { + required: false, + serializedName: 'AzureQueryProperties', + type: { + name: 'Composite', + className: 'AzureQueryProperties', + modelProperties: { + scope: { + required: false, + serializedName: 'scope', + type: { + name: 'Sequence', + element: { + required: false, + serializedName: 'StringElementType', + type: { + name: 'String' + } + } + } + }, + location: { + required: false, + serializedName: 'location', + type: { + name: 'Sequence', + element: { + required: false, + serializedName: 'StringElementType', + type: { + name: 'String' + } + } + } + }, + tagSettings: { + required: false, + serializedName: 'tagSettings', + type: { + name: 'Composite', + className: 'TagSettingsProperties' + } + } + } + } + }; + } +} + +module.exports = AzureQueryProperties; diff --git a/lib/services/automationManagement/lib/models/index.d.ts b/lib/services/automationManagement/lib/models/index.d.ts index 636a0014c2..3a5278d0e2 100644 --- a/lib/services/automationManagement/lib/models/index.d.ts +++ b/lib/services/automationManagement/lib/models/index.d.ts @@ -1570,6 +1570,54 @@ export interface LinuxProperties { rebootSetting?: string; } +/** + * @class + * Initializes a new instance of the TagSettingsProperties class. + * @constructor + * Tag filter information for the VM. + * + * @member {object} [tags] Dictionary of tags with its list of values. + * @member {string} [filterOperator] Filter VMs by Any or All specified tags. + * Possible values include: 'All', 'Any' + */ +export interface TagSettingsProperties { + tags?: { [propertyName: string]: string[] }; + filterOperator?: string; +} + +/** + * @class + * Initializes a new instance of the AzureQueryProperties class. + * @constructor + * Azure query for the update configuration. + * + * @member {array} [scope] List of Subscription or Resource Group ARM Ids. + * @member {array} [location] List of locations to scope the query to. + * @member {object} [tagSettings] Tag settings for the VM. + * @member {object} [tagSettings.tags] Dictionary of tags with its list of + * values. + * @member {string} [tagSettings.filterOperator] Filter VMs by Any or All + * specified tags. Possible values include: 'All', 'Any' + */ +export interface AzureQueryProperties { + scope?: string[]; + location?: string[]; + tagSettings?: TagSettingsProperties; +} + +/** + * @class + * Initializes a new instance of the TargetProperties class. + * @constructor + * Group specific to the update configuration. + * + * @member {array} [azureQueries] List of Azure queries in the software update + * configuration. + */ +export interface TargetProperties { + azureQueries?: AzureQueryProperties[]; +} + /** * @class * Initializes a new instance of the UpdateConfiguration class. @@ -1607,6 +1655,10 @@ export interface LinuxProperties { * virtual machines targeted by the software update configuration. * @member {array} [nonAzureComputerNames] List of names of non-azure machines * targeted by the software update configuration. + * @member {object} [targets] Group targets for the software update + * configuration. + * @member {array} [targets.azureQueries] List of Azure queries in the software + * update configuration. */ export interface UpdateConfiguration { operatingSystem: string; @@ -1615,6 +1667,7 @@ export interface UpdateConfiguration { duration?: moment.Duration; azureVirtualMachines?: string[]; nonAzureComputerNames?: string[]; + targets?: TargetProperties; } /** @@ -1662,6 +1715,10 @@ export interface UpdateConfiguration { * configuration. * @member {array} [updateConfiguration.nonAzureComputerNames] List of names of * non-azure machines targeted by the software update configuration. + * @member {object} [updateConfiguration.targets] Group targets for the + * software update configuration. + * @member {array} [updateConfiguration.targets.azureQueries] List of Azure + * queries in the software update configuration. * @member {object} scheduleInfo Schedule information for the Software update * configuration * @member {date} [scheduleInfo.startTime] Gets or sets the start time of the diff --git a/lib/services/automationManagement/lib/models/index.js b/lib/services/automationManagement/lib/models/index.js index d58720acf3..c5ae1ffd9a 100644 --- a/lib/services/automationManagement/lib/models/index.js +++ b/lib/services/automationManagement/lib/models/index.js @@ -88,6 +88,9 @@ exports.Watcher = require('./watcher'); exports.WatcherUpdateParameters = require('./watcherUpdateParameters'); exports.WindowsProperties = require('./windowsProperties'); exports.LinuxProperties = require('./linuxProperties'); +exports.TagSettingsProperties = require('./tagSettingsProperties'); +exports.AzureQueryProperties = require('./azureQueryProperties'); +exports.TargetProperties = require('./targetProperties'); exports.UpdateConfiguration = require('./updateConfiguration'); exports.SoftwareUpdateConfiguration = require('./softwareUpdateConfiguration'); exports.CollectionItemUpdateConfiguration = require('./collectionItemUpdateConfiguration'); diff --git a/lib/services/automationManagement/lib/models/softwareUpdateConfiguration.js b/lib/services/automationManagement/lib/models/softwareUpdateConfiguration.js index 47ee95120a..c115a62c0e 100644 --- a/lib/services/automationManagement/lib/models/softwareUpdateConfiguration.js +++ b/lib/services/automationManagement/lib/models/softwareUpdateConfiguration.js @@ -61,6 +61,10 @@ class SoftwareUpdateConfiguration extends models['BaseResource'] { * configuration. * @member {array} [updateConfiguration.nonAzureComputerNames] List of names * of non-azure machines targeted by the software update configuration. + * @member {object} [updateConfiguration.targets] Group targets for the + * software update configuration. + * @member {array} [updateConfiguration.targets.azureQueries] List of Azure + * queries in the software update configuration. * @member {object} scheduleInfo Schedule information for the Software update * configuration * @member {date} [scheduleInfo.startTime] Gets or sets the start time of the diff --git a/lib/services/automationManagement/lib/models/tagSettingsProperties.js b/lib/services/automationManagement/lib/models/tagSettingsProperties.js new file mode 100644 index 0000000000..6caf46de7e --- /dev/null +++ b/lib/services/automationManagement/lib/models/tagSettingsProperties.js @@ -0,0 +1,76 @@ +/* + * 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. + */ + +'use strict'; + +/** + * Tag filter information for the VM. + * + */ +class TagSettingsProperties { + /** + * Create a TagSettingsProperties. + * @member {object} [tags] Dictionary of tags with its list of values. + * @member {string} [filterOperator] Filter VMs by Any or All specified tags. + * Possible values include: 'All', 'Any' + */ + constructor() { + } + + /** + * Defines the metadata of TagSettingsProperties + * + * @returns {object} metadata of TagSettingsProperties + * + */ + mapper() { + return { + required: false, + serializedName: 'TagSettingsProperties', + type: { + name: 'Composite', + className: 'TagSettingsProperties', + modelProperties: { + tags: { + required: false, + serializedName: 'tags', + type: { + name: 'Dictionary', + value: { + required: false, + serializedName: 'ArrayElementType', + type: { + name: 'Sequence', + element: { + required: false, + serializedName: 'StringElementType', + type: { + name: 'String' + } + } + } + } + } + }, + filterOperator: { + required: false, + serializedName: 'filterOperator', + type: { + name: 'Enum', + allowedValues: [ 'All', 'Any' ] + } + } + } + } + }; + } +} + +module.exports = TagSettingsProperties; diff --git a/lib/services/automationManagement/lib/models/targetProperties.js b/lib/services/automationManagement/lib/models/targetProperties.js new file mode 100644 index 0000000000..f7ecd24f08 --- /dev/null +++ b/lib/services/automationManagement/lib/models/targetProperties.js @@ -0,0 +1,61 @@ +/* + * 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. + */ + +'use strict'; + +/** + * Group specific to the update configuration. + * + */ +class TargetProperties { + /** + * Create a TargetProperties. + * @member {array} [azureQueries] List of Azure queries in the software + * update configuration. + */ + constructor() { + } + + /** + * Defines the metadata of TargetProperties + * + * @returns {object} metadata of TargetProperties + * + */ + mapper() { + return { + required: false, + serializedName: 'TargetProperties', + type: { + name: 'Composite', + className: 'TargetProperties', + modelProperties: { + azureQueries: { + required: false, + serializedName: 'azureQueries', + type: { + name: 'Sequence', + element: { + required: false, + serializedName: 'AzureQueryPropertiesElementType', + type: { + name: 'Composite', + className: 'AzureQueryProperties' + } + } + } + } + } + } + }; + } +} + +module.exports = TargetProperties; diff --git a/lib/services/automationManagement/lib/models/updateConfiguration.js b/lib/services/automationManagement/lib/models/updateConfiguration.js index e2624ad4b5..1c6e6bc95e 100644 --- a/lib/services/automationManagement/lib/models/updateConfiguration.js +++ b/lib/services/automationManagement/lib/models/updateConfiguration.js @@ -48,6 +48,10 @@ class UpdateConfiguration { * azure virtual machines targeted by the software update configuration. * @member {array} [nonAzureComputerNames] List of names of non-azure * machines targeted by the software update configuration. + * @member {object} [targets] Group targets for the software update + * configuration. + * @member {array} [targets.azureQueries] List of Azure queries in the + * software update configuration. */ constructor() { } @@ -124,6 +128,14 @@ class UpdateConfiguration { } } } + }, + targets: { + required: false, + serializedName: 'targets', + type: { + name: 'Composite', + className: 'TargetProperties' + } } } } diff --git a/lib/services/automationManagement/lib/operations/index.d.ts b/lib/services/automationManagement/lib/operations/index.d.ts index 06b0f956f9..3af7e176c9 100644 --- a/lib/services/automationManagement/lib/operations/index.d.ts +++ b/lib/services/automationManagement/lib/operations/index.d.ts @@ -6805,6 +6805,12 @@ export interface SoftwareUpdateConfigurations { * of names of non-azure machines targeted by the software update * configuration. * + * @param {object} [parameters.updateConfiguration.targets] Group targets for + * the software update configuration. + * + * @param {array} [parameters.updateConfiguration.targets.azureQueries] List of + * Azure queries in the software update configuration. + * * @param {object} parameters.scheduleInfo Schedule information for the * Software update configuration * @@ -6948,6 +6954,12 @@ export interface SoftwareUpdateConfigurations { * of names of non-azure machines targeted by the software update * configuration. * + * @param {object} [parameters.updateConfiguration.targets] Group targets for + * the software update configuration. + * + * @param {array} [parameters.updateConfiguration.targets.azureQueries] List of + * Azure queries in the software update configuration. + * * @param {object} parameters.scheduleInfo Schedule information for the * Software update configuration * diff --git a/lib/services/automationManagement/lib/operations/softwareUpdateConfigurations.js b/lib/services/automationManagement/lib/operations/softwareUpdateConfigurations.js index f22d9985d7..d54b2a451d 100644 --- a/lib/services/automationManagement/lib/operations/softwareUpdateConfigurations.js +++ b/lib/services/automationManagement/lib/operations/softwareUpdateConfigurations.js @@ -82,6 +82,12 @@ const WebResource = msRest.WebResource; * of names of non-azure machines targeted by the software update * configuration. * + * @param {object} [parameters.updateConfiguration.targets] Group targets for + * the software update configuration. + * + * @param {array} [parameters.updateConfiguration.targets.azureQueries] List of + * Azure queries in the software update configuration. + * * @param {object} parameters.scheduleInfo Schedule information for the * Software update configuration * @@ -934,6 +940,12 @@ class SoftwareUpdateConfigurations { * of names of non-azure machines targeted by the software update * configuration. * + * @param {object} [parameters.updateConfiguration.targets] Group targets for + * the software update configuration. + * + * @param {array} [parameters.updateConfiguration.targets.azureQueries] List of + * Azure queries in the software update configuration. + * * @param {object} parameters.scheduleInfo Schedule information for the * Software update configuration * @@ -1089,6 +1101,12 @@ class SoftwareUpdateConfigurations { * of names of non-azure machines targeted by the software update * configuration. * + * @param {object} [parameters.updateConfiguration.targets] Group targets for + * the software update configuration. + * + * @param {array} [parameters.updateConfiguration.targets.azureQueries] List of + * Azure queries in the software update configuration. + * * @param {object} parameters.scheduleInfo Schedule information for the * Software update configuration *