UNPKG

@azure/arm-automation

Version:

AutomationClient Library with typescript type definitions for node.js and browser.

2,058 lines (1,970 loc) 182 kB
/* * 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. */ import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; import * as msRest from "@azure/ms-rest-js"; export { BaseResource, CloudError }; /** * The account SKU. */ export interface Sku { /** * Gets or sets the SKU name of the account. Possible values include: 'Free', 'Basic' */ name: SkuNameEnum; /** * Gets or sets the SKU family. */ family?: string; /** * Gets or sets the SKU capacity. */ capacity?: number; } /** * The core properties of ARM resources */ export interface Resource extends BaseResource { /** * Fully qualified resource Id for the resource * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * The name of the resource * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * The type of the resource. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; } /** * The resource model definition for a ARM tracked top level resource */ export interface TrackedResource extends Resource { /** * Resource tags. */ tags?: { [propertyName: string]: string }; /** * The Azure Region where the resource lives */ location?: string; } /** * Definition of the automation account type. */ export interface AutomationAccount extends TrackedResource { /** * Gets or sets the SKU of account. */ sku?: Sku; /** * Gets or sets the last modified by. */ lastModifiedBy?: string; /** * Gets status of account. Possible values include: 'Ok', 'Unavailable', 'Suspended' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly state?: AutomationAccountState; /** * Gets the creation time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Gets the last modified time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; /** * Gets or sets the etag of the resource. */ etag?: string; } /** * The parameters supplied to the create or update automation account operation. */ export interface AutomationAccountCreateOrUpdateParameters { /** * Gets or sets account SKU. */ sku?: Sku; /** * Gets or sets name of the resource. */ name?: string; /** * Gets or sets the location of the resource. */ location?: string; /** * Gets or sets the tags attached to the resource. */ tags?: { [propertyName: string]: string }; } /** * Provider, Resource and Operation values */ export interface OperationDisplay { /** * Service provider: Microsoft.Automation */ provider?: string; /** * Resource on which the operation is performed: Runbooks, Jobs etc. */ resource?: string; /** * Operation type: Read, write, delete, etc. */ operation?: string; } /** * Automation REST API operation */ export interface Operation { /** * Operation name: {provider}/{resource}/{operation} */ name?: string; /** * Provider, Resource and Operation values */ display?: OperationDisplay; } /** * Definition of the statistic. */ export interface Statistics { /** * Gets the property value of the statistic. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly counterProperty?: string; /** * Gets the value of the statistic. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly counterValue?: number; /** * Gets the startTime of the statistic. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startTime?: Date; /** * Gets the endTime of the statistic. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly endTime?: Date; /** * Gets the id. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; } /** * Definition of usage counter name. */ export interface UsageCounterName { /** * Gets or sets the usage counter name. */ value?: string; /** * Gets or sets the localized usage counter name. */ localizedValue?: string; } /** * Definition of Usage. */ export interface Usage { /** * Gets or sets the id of the resource. */ id?: string; /** * Gets or sets the usage counter name. */ name?: UsageCounterName; /** * Gets or sets the usage unit name. */ unit?: string; /** * Gets or sets the current usage value. */ currentValue?: number; /** * Gets or sets max limit. -1 for unlimited */ limit?: number; /** * Gets or sets the throttle status. */ throttleStatus?: string; } /** * Automation key which is used to register a DSC Node */ export interface Key { /** * Automation key name. Possible values include: 'Primary', 'Secondary' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly keyName?: AutomationKeyName; /** * Automation key permissions. Possible values include: 'Read', 'Full' * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly permissions?: AutomationKeyPermissions; /** * Value of the Automation Key used for registration. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly value?: string; } /** * An interface representing KeyListResult. */ export interface KeyListResult { /** * Lists the automation keys. */ keys?: Key[]; } /** * The parameters supplied to the update automation account operation. */ export interface AutomationAccountUpdateParameters { /** * Gets or sets account SKU. */ sku?: Sku; /** * Gets or sets the name of the resource. */ name?: string; /** * Gets or sets the location of the resource. */ location?: string; /** * Gets or sets the tags attached to the resource. */ tags?: { [propertyName: string]: string }; } /** * ARM proxy resource. */ export interface ProxyResource extends Resource { } /** * Error response of an operation failure */ export interface ErrorResponse { /** * Error code */ code?: string; /** * Error message indicating why the operation failed. */ message?: string; } /** * The parameters supplied to the create or update or replace certificate operation. */ export interface CertificateCreateOrUpdateParameters { /** * Gets or sets the name of the certificate. */ name: string; /** * Gets or sets the base64 encoded value of the certificate. */ base64Value: string; /** * Gets or sets the description of the certificate. */ description?: string; /** * Gets or sets the thumbprint of the certificate. */ thumbprint?: string; /** * Gets or sets the is exportable flag of the certificate. */ isExportable?: boolean; } /** * Definition of the certificate. */ export interface Certificate extends ProxyResource { /** * Gets the thumbprint of the certificate. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly thumbprint?: string; /** * Gets the expiry time of the certificate. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly expiryTime?: Date; /** * Gets the is exportable flag of the certificate. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly isExportable?: boolean; /** * Gets the creation time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Gets the last modified time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the update certificate operation. */ export interface CertificateUpdateParameters { /** * Gets or sets the name of the certificate. */ name?: string; /** * Gets or sets the description of the certificate. */ description?: string; } /** * The connection type property associated with the entity. */ export interface ConnectionTypeAssociationProperty { /** * Gets or sets the name of the connection type. */ name?: string; } /** * The parameters supplied to the create or update connection operation. */ export interface ConnectionCreateOrUpdateParameters { /** * Gets or sets the name of the connection. */ name: string; /** * Gets or sets the description of the connection. */ description?: string; /** * Gets or sets the connectionType of the connection. */ connectionType: ConnectionTypeAssociationProperty; /** * Gets or sets the field definition properties of the connection. */ fieldDefinitionValues?: { [propertyName: string]: string }; } /** * Definition of the connection. */ export interface Connection extends ProxyResource { /** * Gets or sets the connectionType of the connection. */ connectionType?: ConnectionTypeAssociationProperty; /** * Gets the field definition values of the connection. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly fieldDefinitionValues?: { [propertyName: string]: string }; /** * Gets the creation time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Gets the last modified time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the update connection operation. */ export interface ConnectionUpdateParameters { /** * Gets or sets the name of the connection. */ name?: string; /** * Gets or sets the description of the connection. */ description?: string; /** * Gets or sets the field definition values of the connection. */ fieldDefinitionValues?: { [propertyName: string]: string }; } /** * Definition of the connection fields. */ export interface FieldDefinition { /** * Gets or sets the isEncrypted flag of the connection field definition. */ isEncrypted?: boolean; /** * Gets or sets the isOptional flag of the connection field definition. */ isOptional?: boolean; /** * Gets or sets the type of the connection field definition. */ type: string; } /** * Definition of the connection type. */ export interface ConnectionType { /** * Gets the id of the resource. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * Gets the name of the connection type. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Resource type * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; /** * Gets or sets a Boolean value to indicate if the connection type is global. */ isGlobal?: boolean; /** * Gets the field definitions of the connection type. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly fieldDefinitions?: { [propertyName: string]: FieldDefinition }; /** * Gets the creation time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the create or update connection type operation. */ export interface ConnectionTypeCreateOrUpdateParameters { /** * Gets or sets the name of the connection type. */ name: string; /** * Gets or sets a Boolean value to indicate if the connection type is global. */ isGlobal?: boolean; /** * Gets or sets the field definitions of the connection type. */ fieldDefinitions: { [propertyName: string]: FieldDefinition }; } /** * The parameters supplied to the create or update credential operation. */ export interface CredentialCreateOrUpdateParameters { /** * Gets or sets the name of the credential. */ name: string; /** * Gets or sets the user name of the credential. */ userName: string; /** * Gets or sets the password of the credential. */ password: string; /** * Gets or sets the description of the credential. */ description?: string; } /** * Definition of the credential. */ export interface Credential extends ProxyResource { /** * Gets the user name of the credential. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly userName?: string; /** * Gets the creation time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Gets the last modified time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the Update credential operation. */ export interface CredentialUpdateParameters { /** * Gets or sets the name of the credential. */ name?: string; /** * Gets or sets the user name of the credential. */ userName?: string; /** * Gets or sets the password of the credential. */ password?: string; /** * Gets or sets the description of the credential. */ description?: string; } /** * Definition of the runbook property type. */ export interface ContentHash { /** * Gets or sets the content hash algorithm used to hash the content. */ algorithm: string; /** * Gets or sets expected hash value of the content. */ value: string; } /** * Definition of the content source. */ export interface ContentSource { /** * Gets or sets the hash. */ hash?: ContentHash; /** * Gets or sets the content source type. Possible values include: 'embeddedContent', 'uri' */ type?: ContentSourceType; /** * Gets or sets the value of the content. This is based on the content source type. */ value?: string; /** * Gets or sets the version of the content. */ version?: string; } /** * Definition of the configuration parameter type. */ export interface DscConfigurationParameter { /** * Gets or sets the type of the parameter. */ type?: string; /** * Gets or sets a Boolean value to indicate whether the parameter is mandatory or not. */ isMandatory?: boolean; /** * Get or sets the position of the parameter. */ position?: number; /** * Gets or sets the default value of parameter. */ defaultValue?: string; } /** * The parameters supplied to the create or update configuration operation. */ export interface DscConfigurationCreateOrUpdateParameters { /** * Gets or sets verbose log option. */ logVerbose?: boolean; /** * Gets or sets progress log option. */ logProgress?: boolean; /** * Gets or sets the source. */ source: ContentSource; /** * Gets or sets the configuration parameters. */ parameters?: { [propertyName: string]: DscConfigurationParameter }; /** * Gets or sets the description of the configuration. */ description?: string; /** * Gets or sets name of the resource. */ name?: string; /** * Gets or sets the location of the resource. */ location?: string; /** * Gets or sets the tags attached to the resource. */ tags?: { [propertyName: string]: string }; } /** * Definition of the configuration type. */ export interface DscConfiguration extends TrackedResource { /** * Gets or sets the provisioning state of the configuration. Possible values include: 'Succeeded' */ provisioningState?: DscConfigurationProvisioningState; /** * Gets or sets the job count of the configuration. */ jobCount?: number; /** * Gets or sets the configuration parameters. */ parameters?: { [propertyName: string]: DscConfigurationParameter }; /** * Gets or sets the source. */ source?: ContentSource; /** * Gets or sets the state of the configuration. Possible values include: 'New', 'Edit', * 'Published' */ state?: DscConfigurationState; /** * Gets or sets verbose log option. */ logVerbose?: boolean; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets the number of compiled node configurations. */ nodeConfigurationCount?: number; /** * Gets or sets the description. */ description?: string; /** * Gets or sets the etag of the resource. */ etag?: string; } /** * The parameters supplied to the create or update configuration operation. */ export interface DscConfigurationUpdateParameters { /** * Gets or sets verbose log option. */ logVerbose?: boolean; /** * Gets or sets progress log option. */ logProgress?: boolean; /** * Gets or sets the source. */ source: ContentSource; /** * Gets or sets the configuration parameters. */ parameters?: { [propertyName: string]: DscConfigurationParameter }; /** * Gets or sets the description of the configuration. */ description?: string; /** * Gets or sets name of the resource. */ name?: string; /** * Gets or sets the tags attached to the resource. */ tags?: { [propertyName: string]: string }; } /** * Definition of RunAs credential to use for hybrid worker. */ export interface RunAsCredentialAssociationProperty { /** * Gets or sets the name of the credential. */ name?: string; } /** * Definition of hybrid runbook worker. */ export interface HybridRunbookWorker { /** * Gets or sets the worker machine name. */ name?: string; /** * Gets or sets the assigned machine IP address. */ ip?: string; /** * Gets or sets the registration time of the worker machine. */ registrationTime?: Date; /** * Last Heartbeat from the Worker */ lastSeenDateTime?: Date; } /** * Definition of hybrid runbook worker group. */ export interface HybridRunbookWorkerGroup { /** * Gets or sets the id of the resource. */ id?: string; /** * Gets or sets the name of the group. */ name?: string; /** * Gets or sets the list of hybrid runbook workers. */ hybridRunbookWorkers?: HybridRunbookWorker[]; /** * Sets the credential of a worker group. */ credential?: RunAsCredentialAssociationProperty; /** * Type of the HybridWorkerGroup. Possible values include: 'User', 'System' */ groupType?: GroupTypeEnum; } /** * Parameters supplied to the update operation. */ export interface HybridRunbookWorkerGroupUpdateParameters { /** * Sets the credential of a worker group. */ credential?: RunAsCredentialAssociationProperty; } /** * The schedule property associated with the entity. */ export interface ScheduleAssociationProperty { /** * Gets or sets the name of the Schedule. */ name?: string; } /** * The runbook property associated with the entity. */ export interface RunbookAssociationProperty { /** * Gets or sets the name of the runbook. */ name?: string; } /** * Definition of the job schedule. */ export interface JobSchedule { /** * Gets the id of the resource. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * Gets the name of the variable. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Resource type * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; /** * Gets or sets the id of job schedule. */ jobScheduleId?: string; /** * Gets or sets the schedule. */ schedule?: ScheduleAssociationProperty; /** * Gets or sets the runbook. */ runbook?: RunbookAssociationProperty; /** * Gets or sets the hybrid worker group that the scheduled job should run on. */ runOn?: string; /** * Gets or sets the parameters of the job schedule. */ parameters?: { [propertyName: string]: string }; } /** * The parameters supplied to the create job schedule operation. */ export interface JobScheduleCreateParameters { /** * Gets or sets the schedule. */ schedule: ScheduleAssociationProperty; /** * Gets or sets the runbook. */ runbook: RunbookAssociationProperty; /** * Gets or sets the hybrid worker group that the scheduled job should run on. */ runOn?: string; /** * Gets or sets a list of job properties. */ parameters?: { [propertyName: string]: string }; } /** * Definition of the linked workspace. */ export interface LinkedWorkspace { /** * Gets the id of the linked workspace. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; } /** * Definition of the activity parameter validation set. */ export interface ActivityParameterValidationSet { /** * Gets or sets the name of the activity parameter validation set member. */ memberValue?: string; } /** * Definition of the activity parameter. */ export interface ActivityParameter { /** * Gets or sets the name of the activity parameter. */ name?: string; /** * Gets or sets the type of the activity parameter. */ type?: string; /** * Gets or sets a Boolean value that indicates true if the parameter is required. If the value is * false, the parameter is optional. */ isMandatory?: boolean; /** * Gets or sets a Boolean value that indicates true if the parameter is dynamic. */ isDynamic?: boolean; /** * Gets or sets the position of the activity parameter. */ position?: number; /** * Gets or sets a Boolean value that indicates true if the parameter can take values from the * incoming pipeline objects. This setting is used if the cmdlet must access the complete input * object. false indicates that the parameter cannot take values from the complete input object. */ valueFromPipeline?: boolean; /** * Gets or sets a Boolean value that indicates true if the parameter can be filled from a * property of the incoming pipeline object that has the same name as this parameter. false * indicates that the parameter cannot be filled from the incoming pipeline object property with * the same name. */ valueFromPipelineByPropertyName?: boolean; /** * Gets or sets a Boolean value that indicates true if the cmdlet parameter accepts all the * remaining command-line arguments that are associated with this parameter in the form of an * array. false if the cmdlet parameter does not accept all the remaining argument values. */ valueFromRemainingArguments?: boolean; /** * Gets or sets the description of the activity parameter. */ description?: string; /** * Gets or sets the validation set of activity parameter. */ validationSet?: ActivityParameterValidationSet[]; } /** * Definition of the activity parameter set. */ export interface ActivityParameterSet { /** * Gets or sets the name of the activity parameter set. */ name?: string; /** * Gets or sets the parameters of the activity parameter set. */ parameters?: ActivityParameter[]; } /** * Definition of the activity output type. */ export interface ActivityOutputType { /** * Gets or sets the name of the activity output type. */ name?: string; /** * Gets or sets the type of the activity output type. */ type?: string; } /** * Definition of the activity. */ export interface Activity { /** * Gets or sets the id of the resource. */ id?: string; /** * Gets the name of the activity. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Gets or sets the user name of the activity. */ definition?: string; /** * Gets or sets the parameter sets of the activity. */ parameterSets?: ActivityParameterSet[]; /** * Gets or sets the output types of the activity. */ outputTypes?: ActivityOutputType[]; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * Definition of the module error info type. */ export interface ModuleErrorInfo { /** * Gets or sets the error code. */ code?: string; /** * Gets or sets the error message. */ message?: string; } /** * Definition of the content link. */ export interface ContentLink { /** * Gets or sets the uri of the runbook content. */ uri?: string; /** * Gets or sets the hash. */ contentHash?: ContentHash; /** * Gets or sets the version of the content. */ version?: string; } /** * Definition of the module type. */ export interface Module extends TrackedResource { /** * Gets or sets the isGlobal flag of the module. */ isGlobal?: boolean; /** * Gets or sets the version of the module. */ version?: string; /** * Gets or sets the size in bytes of the module. */ sizeInBytes?: number; /** * Gets or sets the activity count of the module. */ activityCount?: number; /** * Gets or sets the provisioning state of the module. Possible values include: 'Created', * 'Creating', 'StartingImportModuleRunbook', 'RunningImportModuleRunbook', 'ContentRetrieved', * 'ContentDownloaded', 'ContentValidated', 'ConnectionTypeImported', 'ContentStored', * 'ModuleDataStored', 'ActivitiesStored', 'ModuleImportRunbookComplete', 'Succeeded', 'Failed', * 'Cancelled', 'Updating' */ provisioningState?: ModuleProvisioningState; /** * Gets or sets the contentLink of the module. */ contentLink?: ContentLink; /** * Gets or sets the error info of the module. */ error?: ModuleErrorInfo; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; /** * Gets or sets type of module, if its composite or not. */ isComposite?: boolean; /** * Gets or sets the etag of the resource. */ etag?: string; } /** * The parameters supplied to the create or update module operation. */ export interface ModuleCreateOrUpdateParameters { /** * Gets or sets the module content link. */ contentLink: ContentLink; /** * Gets or sets name of the resource. */ name?: string; /** * Gets or sets the location of the resource. */ location?: string; /** * Gets or sets the tags attached to the resource. */ tags?: { [propertyName: string]: string }; } /** * The parameters supplied to the update module operation. */ export interface ModuleUpdateParameters { /** * Gets or sets the module content link. */ contentLink?: ContentLink; /** * Gets or sets name of the resource. */ name?: string; /** * Gets or sets the location of the resource. */ location?: string; /** * Gets or sets the tags attached to the resource. */ tags?: { [propertyName: string]: string }; } /** * Information about a field of a type. */ export interface TypeField { /** * Gets or sets the name of the field. */ name?: string; /** * Gets or sets the type of the field. */ type?: string; } /** * The properties of the create advanced schedule monthly occurrence. */ export interface AdvancedScheduleMonthlyOccurrence { /** * Occurrence of the week within the month. Must be between 1 and 5 */ occurrence?: number; /** * Day of the occurrence. Must be one of monday, tuesday, wednesday, thursday, friday, saturday, * sunday. Possible values include: 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', * 'Saturday', 'Sunday' */ day?: ScheduleDay; } /** * The properties of the create Advanced Schedule. */ export interface AdvancedSchedule { /** * Days of the week that the job should execute on. */ weekDays?: string[]; /** * Days of the month that the job should execute on. Must be between 1 and 31. */ monthDays?: number[]; /** * Occurrences of days within a month. */ monthlyOccurrences?: AdvancedScheduleMonthlyOccurrence[]; } /** * The parameters supplied to the create or update schedule operation. */ export interface ScheduleCreateOrUpdateParameters { /** * Gets or sets the name of the Schedule. */ name: string; /** * Gets or sets the description of the schedule. */ description?: string; /** * Gets or sets the start time of the schedule. */ startTime: Date; /** * Gets or sets the end time of the schedule. */ expiryTime?: Date; /** * Gets or sets the interval of the schedule. */ interval?: any; /** * Possible values include: 'OneTime', 'Day', 'Hour', 'Week', 'Month' */ frequency: ScheduleFrequency; /** * Gets or sets the time zone of the schedule. */ timeZone?: string; /** * Gets or sets the AdvancedSchedule. */ advancedSchedule?: AdvancedSchedule; } /** * Definition of schedule parameters. */ export interface ScheduleProperties { /** * Gets or sets the start time of the schedule. */ startTime?: Date; /** * Gets the start time's offset in minutes. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startTimeOffsetMinutes?: number; /** * Gets or sets the end time of the schedule. */ expiryTime?: Date; /** * Gets or sets the expiry time's offset in minutes. */ expiryTimeOffsetMinutes?: number; /** * Gets or sets a value indicating whether this schedule is enabled. Default value: false. */ isEnabled?: boolean; /** * Gets or sets the next run time of the schedule. */ nextRun?: Date; /** * Gets or sets the next run time's offset in minutes. */ nextRunOffsetMinutes?: number; /** * Gets or sets the interval of the schedule. */ interval?: number; /** * Gets or sets the frequency of the schedule. Possible values include: 'OneTime', 'Day', 'Hour', * 'Week', 'Month' */ frequency?: ScheduleFrequency; /** * Gets or sets the time zone of the schedule. */ timeZone?: string; /** * Gets or sets the advanced schedule. */ advancedSchedule?: AdvancedSchedule; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * Definition of the schedule. */ export interface Schedule extends ProxyResource { /** * Gets or sets the start time of the schedule. */ startTime?: Date; /** * Gets the start time's offset in minutes. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly startTimeOffsetMinutes?: number; /** * Gets or sets the end time of the schedule. */ expiryTime?: Date; /** * Gets or sets the expiry time's offset in minutes. */ expiryTimeOffsetMinutes?: number; /** * Gets or sets a value indicating whether this schedule is enabled. Default value: false. */ isEnabled?: boolean; /** * Gets or sets the next run time of the schedule. */ nextRun?: Date; /** * Gets or sets the next run time's offset in minutes. */ nextRunOffsetMinutes?: number; /** * Gets or sets the interval of the schedule. */ interval?: number; /** * Gets or sets the frequency of the schedule. Possible values include: 'OneTime', 'Day', 'Hour', * 'Week', 'Month' */ frequency?: ScheduleFrequency; /** * Gets or sets the time zone of the schedule. */ timeZone?: string; /** * Gets or sets the advanced schedule. */ advancedSchedule?: AdvancedSchedule; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the update schedule operation. */ export interface ScheduleUpdateParameters { /** * Gets or sets the name of the Schedule. */ name?: string; /** * Gets or sets the description of the schedule. */ description?: string; /** * Gets or sets a value indicating whether this schedule is enabled. */ isEnabled?: boolean; } /** * The parameters supplied to the create or update variable operation. */ export interface VariableCreateOrUpdateParameters { /** * Gets or sets the name of the variable. */ name: string; /** * Gets or sets the value of the variable. */ value?: string; /** * Gets or sets the description of the variable. */ description?: string; /** * Gets or sets the encrypted flag of the variable. */ isEncrypted?: boolean; } /** * Definition of the variable. */ export interface Variable extends ProxyResource { /** * Gets or sets the value of the variable. */ value?: string; /** * Gets or sets the encrypted flag of the variable. */ isEncrypted?: boolean; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the update variable operation. */ export interface VariableUpdateParameters { /** * Gets or sets the name of the variable. */ name?: string; /** * Gets or sets the value of the variable. */ value?: string; /** * Gets or sets the description of the variable. */ description?: string; } /** * Definition of the webhook type. */ export interface Webhook extends ProxyResource { /** * Gets or sets the value of the enabled flag of the webhook. Default value: false. */ isEnabled?: boolean; /** * Gets or sets the webhook uri. */ uri?: string; /** * Gets or sets the expiry time. */ expiryTime?: Date; /** * Gets or sets the last invoked time. */ lastInvokedTime?: Date; /** * Gets or sets the parameters of the job that is created when the webhook calls the runbook it * is associated with. */ parameters?: { [propertyName: string]: string }; /** * Gets or sets the runbook the webhook is associated with. */ runbook?: RunbookAssociationProperty; /** * Gets or sets the name of the hybrid worker group the webhook job will run on. */ runOn?: string; /** * Gets or sets the creation time. */ creationTime?: Date; /** * Gets or sets the last modified time. */ lastModifiedTime?: Date; /** * Details of the user who last modified the Webhook */ lastModifiedBy?: string; /** * Gets or sets the description. */ description?: string; } /** * The parameters supplied to the update webhook operation. */ export interface WebhookUpdateParameters { /** * Gets or sets the name of the webhook. */ name?: string; /** * Gets or sets the value of the enabled flag of webhook. */ isEnabled?: boolean; /** * Gets or sets the name of the hybrid worker group the webhook job will run on. */ runOn?: string; /** * Gets or sets the parameters of the job. */ parameters?: { [propertyName: string]: string }; /** * Gets or sets the description of the webhook. */ description?: string; } /** * The parameters supplied to the create or update webhook operation. */ export interface WebhookCreateOrUpdateParameters { /** * Gets or sets the name of the webhook. */ name: string; /** * Gets or sets the value of the enabled flag of webhook. */ isEnabled?: boolean; /** * Gets or sets the uri. */ uri?: string; /** * Gets or sets the expiry time. */ expiryTime?: Date; /** * Gets or sets the parameters of the job. */ parameters?: { [propertyName: string]: string }; /** * Gets or sets the runbook. */ runbook?: RunbookAssociationProperty; /** * Gets or sets the name of the hybrid worker group the webhook job will run on. */ runOn?: string; } /** * Definition of the watcher type. */ export interface Watcher extends TrackedResource { /** * Gets or sets the frequency at which the watcher is invoked. */ executionFrequencyInSeconds?: number; /** * Gets or sets the name of the script the watcher is attached to, i.e. the name of an existing * runbook. */ scriptName?: string; /** * Gets or sets the parameters of the script. */ scriptParameters?: { [propertyName: string]: string }; /** * Gets or sets the name of the hybrid worker group the watcher will run on. */ scriptRunOn?: string; /** * Gets the current status of the watcher. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly status?: string; /** * Gets or sets the creation time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Gets or sets the last modified time. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * Details of the user who last modified the watcher. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedBy?: string; /** * Gets or sets the description. */ description?: string; /** * Gets or sets the etag of the resource. */ etag?: string; } /** * An interface representing WatcherUpdateParameters. */ export interface WatcherUpdateParameters { /** * Gets or sets the frequency at which the watcher is invoked. */ executionFrequencyInSeconds?: number; /** * Gets or sets the name of the resource. */ name?: string; } /** * Windows specific update configuration. */ export interface WindowsProperties { /** * Update classification included in the software update configuration. A comma separated string * with required values. Possible values include: 'Unclassified', 'Critical', 'Security', * 'UpdateRollup', 'FeaturePack', 'ServicePack', 'Definition', 'Tools', 'Updates' */ includedUpdateClassifications?: WindowsUpdateClasses; /** * KB numbers excluded from the software update configuration. */ excludedKbNumbers?: string[]; /** * KB numbers included from the software update configuration. */ includedKbNumbers?: string[]; /** * Reboot setting for the software update configuration. */ rebootSetting?: string; } /** * Linux specific update configuration. */ export interface LinuxProperties { /** * Update classifications included in the software update configuration. Possible values include: * 'Unclassified', 'Critical', 'Security', 'Other' */ includedPackageClassifications?: LinuxUpdateClasses; /** * packages excluded from the software update configuration. */ excludedPackageNameMasks?: string[]; /** * packages included from the software update configuration. */ includedPackageNameMasks?: string[]; /** * Reboot setting for the software update configuration. */ rebootSetting?: string; } /** * Tag filter information for the VM. */ export interface TagSettingsProperties { /** * Dictionary of tags with its list of values. */ tags?: { [propertyName: string]: string[] }; /** * Filter VMs by Any or All specified tags. Possible values include: 'All', 'Any' */ filterOperator?: TagOperators; } /** * Azure query for the update configuration. */ export interface AzureQueryProperties { /** * List of Subscription or Resource Group ARM Ids. */ scope?: string[]; /** * List of locations to scope the query to. */ locations?: string[]; /** * Tag settings for the VM. */ tagSettings?: TagSettingsProperties; } /** * Non Azure query for the update configuration. */ export interface NonAzureQueryProperties { /** * Log Analytics Saved Search name. */ functionAlias?: string; /** * Workspace Id for Log Analytics in which the saved Search is resided. */ workspaceId?: string; } /** * Group specific to the update configuration. */ export interface TargetProperties { /** * List of Azure queries in the software update configuration. */ azureQueries?: AzureQueryProperties[]; /** * List of non Azure queries in the software update configuration. */ nonAzureQueries?: NonAzureQueryProperties[]; } /** * Update specific properties of the software update configuration. */ export interface UpdateConfiguration { /** * operating system of target machines. Possible values include: 'Windows', 'Linux' */ operatingSystem: OperatingSystemType; /** * Windows specific update configuration. */ windows?: WindowsProperties; /** * Linux specific update configuration. */ linux?: LinuxProperties; /** * Maximum time allowed for the software update configuration run. Duration needs to be specified * using the format PT[n]H[n]M[n]S as per ISO8601 */ duration?: string; /** * List of azure resource Ids for azure virtual machines targeted by the software update * configuration. */ azureVirtualMachines?: string[]; /** * List of names of non-azure machines targeted by the software update configuration. */ nonAzureComputerNames?: string[]; /** * Group targets for the software update configuration. */ targets?: TargetProperties; } /** * Task properties of the software update configuration. */ export interface TaskProperties { /** * Gets or sets the parameters of the task. */ parameters?: { [propertyName: string]: string }; /** * Gets or sets the name of the runbook. */ source?: string; } /** * Task properties of the software update configuration. */ export interface SoftwareUpdateConfigurationTasks { /** * Pre task properties. */ preTask?: TaskProperties; /** * Post task properties. */ postTask?: TaskProperties; } /** * Software update configuration properties. */ export interface SoftwareUpdateConfiguration extends BaseResource { /** * Resource name. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Resource Id. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * Resource type * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; /** * update specific properties for the Software update configuration */ updateConfiguration: UpdateConfiguration; /** * Schedule information for the Software update configuration */ scheduleInfo: ScheduleProperties; /** * Provisioning state for the software update configuration, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * Details of provisioning error */ error?: ErrorResponse; /** * Creation time of the resource, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * CreatedBy property, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly createdBy?: string; /** * Last time resource was modified, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * LastModifiedBy property, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedBy?: string; /** * Tasks information for the Software update configuration. */ tasks?: SoftwareUpdateConfigurationTasks; } /** * object returned when requesting a collection of software update configuration */ export interface CollectionItemUpdateConfiguration { /** * List of azure resource Ids for azure virtual machines targeted by the software update * configuration. */ azureVirtualMachines?: string[]; /** * Maximum time allowed for the software update configuration run. Duration needs to be specified * using the format PT[n]H[n]M[n]S as per ISO8601 */ duration?: string; } /** * Software update configuration collection item properties. */ export interface SoftwareUpdateConfigurationCollectionItem { /** * Name of the software update configuration. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Resource Id of the software update configuration * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * Update specific properties of the software update configuration. */ updateConfiguration?: CollectionItemUpdateConfiguration; /** * execution frequency of the schedule associated with the software update configuration. * Possible values include: 'OneTime', 'Day', 'Hour', 'Week', 'Month' */ frequency?: ScheduleFrequency; /** * the start time of the update. */ startTime?: Date; /** * Creation time of the software update configuration, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly creationTime?: Date; /** * Last time software update configuration was modified, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly lastModifiedTime?: Date; /** * Provisioning state for the software update configuration, which only appears in the response. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly provisioningState?: string; /** * ext run time of the update. */ nextRun?: Date; } /** * result of listing all software update configuration */ export interface SoftwareUpdateConfigurationListResult { /** * outer object returned when listing all software update configurations */ value?: SoftwareUpdateConfigurationCollectionItem[]; } /** * Software update configuration Run Navigation model. */ export interface UpdateConfigurationNavigation { /** * Name of the software update configuration triggered the software update configuration run * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; } /** * Task properties of the software update configuration. */ export interface SoftareUpdateConfigurationRunTaskProperties { /** * The status of the task. */ status?: string; /** * The name of the source of the task. */ source?: string; /** * The job id of the task. */ jobId?: string; } /** * Software update configuration run tasks model. */ export interface SoftareUpdateConfigurationRunTasks { /** * Pre task properties. */ preTask?: SoftareUpdateConfigurationRunTaskProperties; /** * Post task properties. */ postTask?: SoftareUpdateConfigurationRunTaskProperties; } /** * Software update configuration Run properties. */ export interface SoftwareUpdateConfigurationRun { /** * Name of the software update configuration run. * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** * Resource Id of the software update configuration run * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** * software update configuration triggered this run */ softwareUpdateConfiguration?: UpdateConfigurationNavigation;