1package batch
2
3// Copyright (c) Microsoft Corporation. All rights reserved.
4// Licensed under the MIT License. See License.txt in the project root for license information.
5//
6// Code generated by Microsoft (R) AutoRest Code Generator.
7// Changes may cause incorrect behavior and will be lost if the code is regenerated.
8
9// AccessScope enumerates the values for access scope.
10type AccessScope string
11
12const (
13	// Job Grants access to perform all operations on the Job containing the Task.
14	Job AccessScope = "job"
15)
16
17// PossibleAccessScopeValues returns an array of possible values for the AccessScope const type.
18func PossibleAccessScopeValues() []AccessScope {
19	return []AccessScope{Job}
20}
21
22// AllocationState enumerates the values for allocation state.
23type AllocationState string
24
25const (
26	// Resizing The Pool is resizing; that is, Compute Nodes are being added to or removed from the Pool.
27	Resizing AllocationState = "resizing"
28	// Steady The Pool is not resizing. There are no changes to the number of Compute Nodes in the Pool in
29	// progress. A Pool enters this state when it is created and when no operations are being performed on the
30	// Pool to change the number of Compute Nodes.
31	Steady AllocationState = "steady"
32	// Stopping The Pool was resizing, but the user has requested that the resize be stopped, but the stop
33	// request has not yet been completed.
34	Stopping AllocationState = "stopping"
35)
36
37// PossibleAllocationStateValues returns an array of possible values for the AllocationState const type.
38func PossibleAllocationStateValues() []AllocationState {
39	return []AllocationState{Resizing, Steady, Stopping}
40}
41
42// AutoUserScope enumerates the values for auto user scope.
43type AutoUserScope string
44
45const (
46	// Pool Specifies that the Task runs as the common auto user Account which is created on every Compute Node
47	// in a Pool.
48	Pool AutoUserScope = "pool"
49	// Task Specifies that the service should create a new user for the Task.
50	Task AutoUserScope = "task"
51)
52
53// PossibleAutoUserScopeValues returns an array of possible values for the AutoUserScope const type.
54func PossibleAutoUserScopeValues() []AutoUserScope {
55	return []AutoUserScope{Pool, Task}
56}
57
58// CachingType enumerates the values for caching type.
59type CachingType string
60
61const (
62	// None The caching mode for the disk is not enabled.
63	None CachingType = "none"
64	// ReadOnly The caching mode for the disk is read only.
65	ReadOnly CachingType = "readonly"
66	// ReadWrite The caching mode for the disk is read and write.
67	ReadWrite CachingType = "readwrite"
68)
69
70// PossibleCachingTypeValues returns an array of possible values for the CachingType const type.
71func PossibleCachingTypeValues() []CachingType {
72	return []CachingType{None, ReadOnly, ReadWrite}
73}
74
75// CertificateFormat enumerates the values for certificate format.
76type CertificateFormat string
77
78const (
79	// Cer The Certificate is a base64-encoded X.509 Certificate.
80	Cer CertificateFormat = "cer"
81	// Pfx The Certificate is a PFX (PKCS#12) formatted Certificate or Certificate chain.
82	Pfx CertificateFormat = "pfx"
83)
84
85// PossibleCertificateFormatValues returns an array of possible values for the CertificateFormat const type.
86func PossibleCertificateFormatValues() []CertificateFormat {
87	return []CertificateFormat{Cer, Pfx}
88}
89
90// CertificateState enumerates the values for certificate state.
91type CertificateState string
92
93const (
94	// Active The Certificate is available for use in Pools.
95	Active CertificateState = "active"
96	// DeleteFailed The user requested that the Certificate be deleted, but there are Pools that still have
97	// references to the Certificate, or it is still installed on one or more Nodes. (The latter can occur if
98	// the Certificate has been removed from the Pool, but the Compute Node has not yet restarted. Compute
99	// Nodes refresh their Certificates only when they restart.) You may use the cancel Certificate delete
100	// operation to cancel the delete, or the delete Certificate operation to retry the delete.
101	DeleteFailed CertificateState = "deletefailed"
102	// Deleting The user has requested that the Certificate be deleted, but the delete operation has not yet
103	// completed. You may not reference the Certificate when creating or updating Pools.
104	Deleting CertificateState = "deleting"
105)
106
107// PossibleCertificateStateValues returns an array of possible values for the CertificateState const type.
108func PossibleCertificateStateValues() []CertificateState {
109	return []CertificateState{Active, DeleteFailed, Deleting}
110}
111
112// CertificateStoreLocation enumerates the values for certificate store location.
113type CertificateStoreLocation string
114
115const (
116	// CurrentUser Certificates should be installed to the CurrentUser Certificate store.
117	CurrentUser CertificateStoreLocation = "currentuser"
118	// LocalMachine Certificates should be installed to the LocalMachine Certificate store.
119	LocalMachine CertificateStoreLocation = "localmachine"
120)
121
122// PossibleCertificateStoreLocationValues returns an array of possible values for the CertificateStoreLocation const type.
123func PossibleCertificateStoreLocationValues() []CertificateStoreLocation {
124	return []CertificateStoreLocation{CurrentUser, LocalMachine}
125}
126
127// CertificateVisibility enumerates the values for certificate visibility.
128type CertificateVisibility string
129
130const (
131	// CertificateVisibilityRemoteUser The Certificate should be visible to the user accounts under which users
132	// remotely access the Compute Node.
133	CertificateVisibilityRemoteUser CertificateVisibility = "remoteuser"
134	// CertificateVisibilityStartTask The Certificate should be visible to the user account under which the
135	// StartTask is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this
136	// certificate will be visible to the Task as well.
137	CertificateVisibilityStartTask CertificateVisibility = "starttask"
138	// CertificateVisibilityTask The Certificate should be visible to the user accounts under which Job Tasks
139	// are run.
140	CertificateVisibilityTask CertificateVisibility = "task"
141)
142
143// PossibleCertificateVisibilityValues returns an array of possible values for the CertificateVisibility const type.
144func PossibleCertificateVisibilityValues() []CertificateVisibility {
145	return []CertificateVisibility{CertificateVisibilityRemoteUser, CertificateVisibilityStartTask, CertificateVisibilityTask}
146}
147
148// ComputeNodeDeallocationOption enumerates the values for compute node deallocation option.
149type ComputeNodeDeallocationOption string
150
151const (
152	// Requeue Terminate running Task processes and requeue the Tasks. The Tasks will run again when a Compute
153	// Node is available. Remove Compute Nodes as soon as Tasks have been terminated.
154	Requeue ComputeNodeDeallocationOption = "requeue"
155	// RetainedData Allow currently running Tasks to complete, then wait for all Task data retention periods to
156	// expire. Schedule no new Tasks while waiting. Remove Compute Nodes when all Task retention periods have
157	// expired.
158	RetainedData ComputeNodeDeallocationOption = "retaineddata"
159	// TaskCompletion Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Remove
160	// Compute Nodes when all Tasks have completed.
161	TaskCompletion ComputeNodeDeallocationOption = "taskcompletion"
162	// Terminate Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they
163	// were terminated, and will not run again. Remove Compute Nodes as soon as Tasks have been terminated.
164	Terminate ComputeNodeDeallocationOption = "terminate"
165)
166
167// PossibleComputeNodeDeallocationOptionValues returns an array of possible values for the ComputeNodeDeallocationOption const type.
168func PossibleComputeNodeDeallocationOptionValues() []ComputeNodeDeallocationOption {
169	return []ComputeNodeDeallocationOption{Requeue, RetainedData, TaskCompletion, Terminate}
170}
171
172// ComputeNodeFillType enumerates the values for compute node fill type.
173type ComputeNodeFillType string
174
175const (
176	// Pack As many Tasks as possible (maxTasksPerNode) should be assigned to each Compute Node in the Pool
177	// before any Tasks are assigned to the next Compute Node in the Pool.
178	Pack ComputeNodeFillType = "pack"
179	// Spread Tasks should be assigned evenly across all Compute Nodes in the Pool.
180	Spread ComputeNodeFillType = "spread"
181)
182
183// PossibleComputeNodeFillTypeValues returns an array of possible values for the ComputeNodeFillType const type.
184func PossibleComputeNodeFillTypeValues() []ComputeNodeFillType {
185	return []ComputeNodeFillType{Pack, Spread}
186}
187
188// ComputeNodeRebootOption enumerates the values for compute node reboot option.
189type ComputeNodeRebootOption string
190
191const (
192	// ComputeNodeRebootOptionRequeue Terminate running Task processes and requeue the Tasks. The Tasks will
193	// run again when a Compute Node is available. Restart the Compute Node as soon as Tasks have been
194	// terminated.
195	ComputeNodeRebootOptionRequeue ComputeNodeRebootOption = "requeue"
196	// ComputeNodeRebootOptionRetainedData Allow currently running Tasks to complete, then wait for all Task
197	// data retention periods to expire. Schedule no new Tasks while waiting. Restart the Compute Node when all
198	// Task retention periods have expired.
199	ComputeNodeRebootOptionRetainedData ComputeNodeRebootOption = "retaineddata"
200	// ComputeNodeRebootOptionTaskCompletion Allow currently running Tasks to complete. Schedule no new Tasks
201	// while waiting. Restart the Compute Node when all Tasks have completed.
202	ComputeNodeRebootOptionTaskCompletion ComputeNodeRebootOption = "taskcompletion"
203	// ComputeNodeRebootOptionTerminate Terminate running Tasks. The Tasks will be completed with failureInfo
204	// indicating that they were terminated, and will not run again. Restart the Compute Node as soon as Tasks
205	// have been terminated.
206	ComputeNodeRebootOptionTerminate ComputeNodeRebootOption = "terminate"
207)
208
209// PossibleComputeNodeRebootOptionValues returns an array of possible values for the ComputeNodeRebootOption const type.
210func PossibleComputeNodeRebootOptionValues() []ComputeNodeRebootOption {
211	return []ComputeNodeRebootOption{ComputeNodeRebootOptionRequeue, ComputeNodeRebootOptionRetainedData, ComputeNodeRebootOptionTaskCompletion, ComputeNodeRebootOptionTerminate}
212}
213
214// ComputeNodeReimageOption enumerates the values for compute node reimage option.
215type ComputeNodeReimageOption string
216
217const (
218	// ComputeNodeReimageOptionRequeue Terminate running Task processes and requeue the Tasks. The Tasks will
219	// run again when a Compute Node is available. Reimage the Compute Node as soon as Tasks have been
220	// terminated.
221	ComputeNodeReimageOptionRequeue ComputeNodeReimageOption = "requeue"
222	// ComputeNodeReimageOptionRetainedData Allow currently running Tasks to complete, then wait for all Task
223	// data retention periods to expire. Schedule no new Tasks while waiting. Reimage the Compute Node when all
224	// Task retention periods have expired.
225	ComputeNodeReimageOptionRetainedData ComputeNodeReimageOption = "retaineddata"
226	// ComputeNodeReimageOptionTaskCompletion Allow currently running Tasks to complete. Schedule no new Tasks
227	// while waiting. Reimage the Compute Node when all Tasks have completed.
228	ComputeNodeReimageOptionTaskCompletion ComputeNodeReimageOption = "taskcompletion"
229	// ComputeNodeReimageOptionTerminate Terminate running Tasks. The Tasks will be completed with failureInfo
230	// indicating that they were terminated, and will not run again. Reimage the Compute Node as soon as Tasks
231	// have been terminated.
232	ComputeNodeReimageOptionTerminate ComputeNodeReimageOption = "terminate"
233)
234
235// PossibleComputeNodeReimageOptionValues returns an array of possible values for the ComputeNodeReimageOption const type.
236func PossibleComputeNodeReimageOptionValues() []ComputeNodeReimageOption {
237	return []ComputeNodeReimageOption{ComputeNodeReimageOptionRequeue, ComputeNodeReimageOptionRetainedData, ComputeNodeReimageOptionTaskCompletion, ComputeNodeReimageOptionTerminate}
238}
239
240// ComputeNodeState enumerates the values for compute node state.
241type ComputeNodeState string
242
243const (
244	// Creating The Batch service has obtained the underlying virtual machine from Azure Compute, but it has
245	// not yet started to join the Pool.
246	Creating ComputeNodeState = "creating"
247	// Idle The Compute Node is not currently running a Task.
248	Idle ComputeNodeState = "idle"
249	// LeavingPool The Compute Node is leaving the Pool, either because the user explicitly removed it or
250	// because the Pool is resizing or autoscaling down.
251	LeavingPool ComputeNodeState = "leavingpool"
252	// Offline The Compute Node is not currently running a Task, and scheduling of new Tasks to the Compute
253	// Node is disabled.
254	Offline ComputeNodeState = "offline"
255	// Preempted The low-priority Compute Node has been preempted. Tasks which were running on the Compute Node
256	// when it was preempted will be rescheduled when another Compute Node becomes available.
257	Preempted ComputeNodeState = "preempted"
258	// Rebooting The Compute Node is rebooting.
259	Rebooting ComputeNodeState = "rebooting"
260	// Reimaging The Compute Node is reimaging.
261	Reimaging ComputeNodeState = "reimaging"
262	// Running The Compute Node is running one or more Tasks (other than a StartTask).
263	Running ComputeNodeState = "running"
264	// Starting The Batch service is starting on the underlying virtual machine.
265	Starting ComputeNodeState = "starting"
266	// StartTaskFailed The StartTask has failed on the Compute Node (and exhausted all retries), and
267	// waitForSuccess is set. The Compute Node is not usable for running Tasks.
268	StartTaskFailed ComputeNodeState = "starttaskfailed"
269	// Unknown The Batch service has lost contact with the Compute Node, and does not know its true state.
270	Unknown ComputeNodeState = "unknown"
271	// Unusable The Compute Node cannot be used for Task execution due to errors.
272	Unusable ComputeNodeState = "unusable"
273	// WaitingForStartTask The StartTask has started running on the Compute Node, but waitForSuccess is set and
274	// the StartTask has not yet completed.
275	WaitingForStartTask ComputeNodeState = "waitingforstarttask"
276)
277
278// PossibleComputeNodeStateValues returns an array of possible values for the ComputeNodeState const type.
279func PossibleComputeNodeStateValues() []ComputeNodeState {
280	return []ComputeNodeState{Creating, Idle, LeavingPool, Offline, Preempted, Rebooting, Reimaging, Running, Starting, StartTaskFailed, Unknown, Unusable, WaitingForStartTask}
281}
282
283// ContainerWorkingDirectory enumerates the values for container working directory.
284type ContainerWorkingDirectory string
285
286const (
287	// ContainerImageDefault Use the working directory defined in the container Image. Beware that this
288	// directory will not contain the Resource Files downloaded by Batch.
289	ContainerImageDefault ContainerWorkingDirectory = "containerImageDefault"
290	// TaskWorkingDirectory Use the standard Batch service Task working directory, which will contain the Task
291	// Resource Files populated by Batch.
292	TaskWorkingDirectory ContainerWorkingDirectory = "taskWorkingDirectory"
293)
294
295// PossibleContainerWorkingDirectoryValues returns an array of possible values for the ContainerWorkingDirectory const type.
296func PossibleContainerWorkingDirectoryValues() []ContainerWorkingDirectory {
297	return []ContainerWorkingDirectory{ContainerImageDefault, TaskWorkingDirectory}
298}
299
300// DependencyAction enumerates the values for dependency action.
301type DependencyAction string
302
303const (
304	// Block Blocks tasks waiting on this task, preventing them from being scheduled.
305	Block DependencyAction = "block"
306	// Satisfy Satisfy tasks waiting on this task; once all dependencies are satisfied, the task will be
307	// scheduled to run.
308	Satisfy DependencyAction = "satisfy"
309)
310
311// PossibleDependencyActionValues returns an array of possible values for the DependencyAction const type.
312func PossibleDependencyActionValues() []DependencyAction {
313	return []DependencyAction{Block, Satisfy}
314}
315
316// DisableComputeNodeSchedulingOption enumerates the values for disable compute node scheduling option.
317type DisableComputeNodeSchedulingOption string
318
319const (
320	// DisableComputeNodeSchedulingOptionRequeue Terminate running Task processes and requeue the Tasks. The
321	// Tasks may run again on other Compute Nodes, or when Task scheduling is re-enabled on this Compute Node.
322	// Enter offline state as soon as Tasks have been terminated.
323	DisableComputeNodeSchedulingOptionRequeue DisableComputeNodeSchedulingOption = "requeue"
324	// DisableComputeNodeSchedulingOptionTaskCompletion Allow currently running Tasks to complete. Schedule no
325	// new Tasks while waiting. Enter offline state when all Tasks have completed.
326	DisableComputeNodeSchedulingOptionTaskCompletion DisableComputeNodeSchedulingOption = "taskcompletion"
327	// DisableComputeNodeSchedulingOptionTerminate Terminate running Tasks. The Tasks will be completed with
328	// failureInfo indicating that they were terminated, and will not run again. Enter offline state as soon as
329	// Tasks have been terminated.
330	DisableComputeNodeSchedulingOptionTerminate DisableComputeNodeSchedulingOption = "terminate"
331)
332
333// PossibleDisableComputeNodeSchedulingOptionValues returns an array of possible values for the DisableComputeNodeSchedulingOption const type.
334func PossibleDisableComputeNodeSchedulingOptionValues() []DisableComputeNodeSchedulingOption {
335	return []DisableComputeNodeSchedulingOption{DisableComputeNodeSchedulingOptionRequeue, DisableComputeNodeSchedulingOptionTaskCompletion, DisableComputeNodeSchedulingOptionTerminate}
336}
337
338// DisableJobOption enumerates the values for disable job option.
339type DisableJobOption string
340
341const (
342	// DisableJobOptionRequeue Terminate running Tasks and requeue them. The Tasks will run again when the Job
343	// is enabled.
344	DisableJobOptionRequeue DisableJobOption = "requeue"
345	// DisableJobOptionTerminate Terminate running Tasks. The Tasks will be completed with failureInfo
346	// indicating that they were terminated, and will not run again.
347	DisableJobOptionTerminate DisableJobOption = "terminate"
348	// DisableJobOptionWait Allow currently running Tasks to complete.
349	DisableJobOptionWait DisableJobOption = "wait"
350)
351
352// PossibleDisableJobOptionValues returns an array of possible values for the DisableJobOption const type.
353func PossibleDisableJobOptionValues() []DisableJobOption {
354	return []DisableJobOption{DisableJobOptionRequeue, DisableJobOptionTerminate, DisableJobOptionWait}
355}
356
357// DiskEncryptionTarget enumerates the values for disk encryption target.
358type DiskEncryptionTarget string
359
360const (
361	// OsDisk The OS Disk on the compute node is encrypted.
362	OsDisk DiskEncryptionTarget = "osdisk"
363	// TemporaryDisk The temporary disk on the compute node is encrypted. On Linux this encryption applies to
364	// other partitions (such as those on mounted data disks) when encryption occurs at boot time.
365	TemporaryDisk DiskEncryptionTarget = "temporarydisk"
366)
367
368// PossibleDiskEncryptionTargetValues returns an array of possible values for the DiskEncryptionTarget const type.
369func PossibleDiskEncryptionTargetValues() []DiskEncryptionTarget {
370	return []DiskEncryptionTarget{OsDisk, TemporaryDisk}
371}
372
373// DynamicVNetAssignmentScope enumerates the values for dynamic v net assignment scope.
374type DynamicVNetAssignmentScope string
375
376const (
377	// DynamicVNetAssignmentScopeJob Dynamic VNet assignment is done per-job.
378	DynamicVNetAssignmentScopeJob DynamicVNetAssignmentScope = "job"
379	// DynamicVNetAssignmentScopeNone No dynamic VNet assignment is enabled.
380	DynamicVNetAssignmentScopeNone DynamicVNetAssignmentScope = "none"
381)
382
383// PossibleDynamicVNetAssignmentScopeValues returns an array of possible values for the DynamicVNetAssignmentScope const type.
384func PossibleDynamicVNetAssignmentScopeValues() []DynamicVNetAssignmentScope {
385	return []DynamicVNetAssignmentScope{DynamicVNetAssignmentScopeJob, DynamicVNetAssignmentScopeNone}
386}
387
388// ElevationLevel enumerates the values for elevation level.
389type ElevationLevel string
390
391const (
392	// Admin The user is a user with elevated access and operates with full Administrator permissions.
393	Admin ElevationLevel = "admin"
394	// NonAdmin The user is a standard user without elevated access.
395	NonAdmin ElevationLevel = "nonadmin"
396)
397
398// PossibleElevationLevelValues returns an array of possible values for the ElevationLevel const type.
399func PossibleElevationLevelValues() []ElevationLevel {
400	return []ElevationLevel{Admin, NonAdmin}
401}
402
403// ErrorCategory enumerates the values for error category.
404type ErrorCategory string
405
406const (
407	// ServerError The error is due to an internal server issue.
408	ServerError ErrorCategory = "servererror"
409	// UserError The error is due to a user issue, such as misconfiguration.
410	UserError ErrorCategory = "usererror"
411)
412
413// PossibleErrorCategoryValues returns an array of possible values for the ErrorCategory const type.
414func PossibleErrorCategoryValues() []ErrorCategory {
415	return []ErrorCategory{ServerError, UserError}
416}
417
418// InboundEndpointProtocol enumerates the values for inbound endpoint protocol.
419type InboundEndpointProtocol string
420
421const (
422	// TCP Use TCP for the endpoint.
423	TCP InboundEndpointProtocol = "tcp"
424	// UDP Use UDP for the endpoint.
425	UDP InboundEndpointProtocol = "udp"
426)
427
428// PossibleInboundEndpointProtocolValues returns an array of possible values for the InboundEndpointProtocol const type.
429func PossibleInboundEndpointProtocolValues() []InboundEndpointProtocol {
430	return []InboundEndpointProtocol{TCP, UDP}
431}
432
433// IPAddressProvisioningType enumerates the values for ip address provisioning type.
434type IPAddressProvisioningType string
435
436const (
437	// BatchManaged A public IP will be created and managed by Batch. There may be multiple public IPs
438	// depending on the size of the Pool.
439	BatchManaged IPAddressProvisioningType = "batchmanaged"
440	// NoPublicIPAddresses No public IP Address will be created.
441	NoPublicIPAddresses IPAddressProvisioningType = "nopublicipaddresses"
442	// UserManaged Public IPs are provided by the user and will be used to provision the Compute Nodes.
443	UserManaged IPAddressProvisioningType = "usermanaged"
444)
445
446// PossibleIPAddressProvisioningTypeValues returns an array of possible values for the IPAddressProvisioningType const type.
447func PossibleIPAddressProvisioningTypeValues() []IPAddressProvisioningType {
448	return []IPAddressProvisioningType{BatchManaged, NoPublicIPAddresses, UserManaged}
449}
450
451// JobAction enumerates the values for job action.
452type JobAction string
453
454const (
455	// JobActionDisable Disable the Job. This is equivalent to calling the disable Job API, with a disableTasks
456	// value of requeue.
457	JobActionDisable JobAction = "disable"
458	// JobActionNone Take no action.
459	JobActionNone JobAction = "none"
460	// JobActionTerminate Terminate the Job. The terminateReason in the Job's executionInfo is set to
461	// "TaskFailed".
462	JobActionTerminate JobAction = "terminate"
463)
464
465// PossibleJobActionValues returns an array of possible values for the JobAction const type.
466func PossibleJobActionValues() []JobAction {
467	return []JobAction{JobActionDisable, JobActionNone, JobActionTerminate}
468}
469
470// JobPreparationTaskState enumerates the values for job preparation task state.
471type JobPreparationTaskState string
472
473const (
474	// JobPreparationTaskStateCompleted The Task has exited with exit code 0, or the Task has exhausted its
475	// retry limit, or the Batch service was unable to start the Task due to Task preparation errors (such as
476	// resource file download failures).
477	JobPreparationTaskStateCompleted JobPreparationTaskState = "completed"
478	// JobPreparationTaskStateRunning The Task is currently running (including retrying).
479	JobPreparationTaskStateRunning JobPreparationTaskState = "running"
480)
481
482// PossibleJobPreparationTaskStateValues returns an array of possible values for the JobPreparationTaskState const type.
483func PossibleJobPreparationTaskStateValues() []JobPreparationTaskState {
484	return []JobPreparationTaskState{JobPreparationTaskStateCompleted, JobPreparationTaskStateRunning}
485}
486
487// JobReleaseTaskState enumerates the values for job release task state.
488type JobReleaseTaskState string
489
490const (
491	// JobReleaseTaskStateCompleted The Task has exited with exit code 0, or the Task has exhausted its retry
492	// limit, or the Batch service was unable to start the Task due to Task preparation errors (such as
493	// resource file download failures).
494	JobReleaseTaskStateCompleted JobReleaseTaskState = "completed"
495	// JobReleaseTaskStateRunning The Task is currently running (including retrying).
496	JobReleaseTaskStateRunning JobReleaseTaskState = "running"
497)
498
499// PossibleJobReleaseTaskStateValues returns an array of possible values for the JobReleaseTaskState const type.
500func PossibleJobReleaseTaskStateValues() []JobReleaseTaskState {
501	return []JobReleaseTaskState{JobReleaseTaskStateCompleted, JobReleaseTaskStateRunning}
502}
503
504// JobScheduleState enumerates the values for job schedule state.
505type JobScheduleState string
506
507const (
508	// JobScheduleStateActive The Job Schedule is active and will create Jobs as per its schedule.
509	JobScheduleStateActive JobScheduleState = "active"
510	// JobScheduleStateCompleted The Job Schedule has terminated, either by reaching its end time or by the
511	// user terminating it explicitly.
512	JobScheduleStateCompleted JobScheduleState = "completed"
513	// JobScheduleStateDeleting The user has requested that the Job Schedule be deleted, but the delete
514	// operation is still in progress. The scheduler will not initiate any new Jobs for this Job Schedule, and
515	// will delete any existing Jobs and Tasks under the Job Schedule, including any active Job. The Job
516	// Schedule will be deleted when all Jobs and Tasks under the Job Schedule have been deleted.
517	JobScheduleStateDeleting JobScheduleState = "deleting"
518	// JobScheduleStateDisabled The user has disabled the Job Schedule. The scheduler will not initiate any new
519	// Jobs will on this schedule, but any existing active Job will continue to run.
520	JobScheduleStateDisabled JobScheduleState = "disabled"
521	// JobScheduleStateTerminating The Job Schedule has no more work to do, or has been explicitly terminated
522	// by the user, but the termination operation is still in progress. The scheduler will not initiate any new
523	// Jobs for this Job Schedule, nor is any existing Job active.
524	JobScheduleStateTerminating JobScheduleState = "terminating"
525)
526
527// PossibleJobScheduleStateValues returns an array of possible values for the JobScheduleState const type.
528func PossibleJobScheduleStateValues() []JobScheduleState {
529	return []JobScheduleState{JobScheduleStateActive, JobScheduleStateCompleted, JobScheduleStateDeleting, JobScheduleStateDisabled, JobScheduleStateTerminating}
530}
531
532// JobState enumerates the values for job state.
533type JobState string
534
535const (
536	// JobStateActive The Job is available to have Tasks scheduled.
537	JobStateActive JobState = "active"
538	// JobStateCompleted All Tasks have terminated, and the system will not accept any more Tasks or any
539	// further changes to the Job.
540	JobStateCompleted JobState = "completed"
541	// JobStateDeleting A user has requested that the Job be deleted, but the delete operation is still in
542	// progress (for example, because the system is still terminating running Tasks).
543	JobStateDeleting JobState = "deleting"
544	// JobStateDisabled A user has disabled the Job. No Tasks are running, and no new Tasks will be scheduled.
545	JobStateDisabled JobState = "disabled"
546	// JobStateDisabling A user has requested that the Job be disabled, but the disable operation is still in
547	// progress (for example, waiting for Tasks to terminate).
548	JobStateDisabling JobState = "disabling"
549	// JobStateEnabling A user has requested that the Job be enabled, but the enable operation is still in
550	// progress.
551	JobStateEnabling JobState = "enabling"
552	// JobStateTerminating The Job is about to complete, either because a Job Manager Task has completed or
553	// because the user has terminated the Job, but the terminate operation is still in progress (for example,
554	// because Job Release Tasks are running).
555	JobStateTerminating JobState = "terminating"
556)
557
558// PossibleJobStateValues returns an array of possible values for the JobState const type.
559func PossibleJobStateValues() []JobState {
560	return []JobState{JobStateActive, JobStateCompleted, JobStateDeleting, JobStateDisabled, JobStateDisabling, JobStateEnabling, JobStateTerminating}
561}
562
563// LoginMode enumerates the values for login mode.
564type LoginMode string
565
566const (
567	// Batch The LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running
568	// parallel processes.
569	Batch LoginMode = "batch"
570	// Interactive The LOGON32_LOGON_INTERACTIVE Win32 login mode. UAC is enabled on Windows
571	// VirtualMachineConfiguration Pools. If this option is used with an elevated user identity in a Windows
572	// VirtualMachineConfiguration Pool, the user session will not be elevated unless the application executed
573	// by the Task command line is configured to always require administrative privilege or to always require
574	// maximum privilege.
575	Interactive LoginMode = "interactive"
576)
577
578// PossibleLoginModeValues returns an array of possible values for the LoginMode const type.
579func PossibleLoginModeValues() []LoginMode {
580	return []LoginMode{Batch, Interactive}
581}
582
583// NetworkSecurityGroupRuleAccess enumerates the values for network security group rule access.
584type NetworkSecurityGroupRuleAccess string
585
586const (
587	// Allow Allow access.
588	Allow NetworkSecurityGroupRuleAccess = "allow"
589	// Deny Deny access.
590	Deny NetworkSecurityGroupRuleAccess = "deny"
591)
592
593// PossibleNetworkSecurityGroupRuleAccessValues returns an array of possible values for the NetworkSecurityGroupRuleAccess const type.
594func PossibleNetworkSecurityGroupRuleAccessValues() []NetworkSecurityGroupRuleAccess {
595	return []NetworkSecurityGroupRuleAccess{Allow, Deny}
596}
597
598// OnAllTasksComplete enumerates the values for on all tasks complete.
599type OnAllTasksComplete string
600
601const (
602	// NoAction Do nothing. The Job remains active unless terminated or disabled by some other means.
603	NoAction OnAllTasksComplete = "noaction"
604	// TerminateJob Terminate the Job. The Job's terminateReason is set to 'AllTasksComplete'.
605	TerminateJob OnAllTasksComplete = "terminatejob"
606)
607
608// PossibleOnAllTasksCompleteValues returns an array of possible values for the OnAllTasksComplete const type.
609func PossibleOnAllTasksCompleteValues() []OnAllTasksComplete {
610	return []OnAllTasksComplete{NoAction, TerminateJob}
611}
612
613// OnTaskFailure enumerates the values for on task failure.
614type OnTaskFailure string
615
616const (
617	// OnTaskFailureNoAction Do nothing. The Job remains active unless terminated or disabled by some other
618	// means.
619	OnTaskFailureNoAction OnTaskFailure = "noaction"
620	// OnTaskFailurePerformExitOptionsJobAction Take the action associated with the Task exit condition in the
621	// Task's exitConditions collection. (This may still result in no action being taken, if that is what the
622	// Task specifies.)
623	OnTaskFailurePerformExitOptionsJobAction OnTaskFailure = "performexitoptionsjobaction"
624)
625
626// PossibleOnTaskFailureValues returns an array of possible values for the OnTaskFailure const type.
627func PossibleOnTaskFailureValues() []OnTaskFailure {
628	return []OnTaskFailure{OnTaskFailureNoAction, OnTaskFailurePerformExitOptionsJobAction}
629}
630
631// OSType enumerates the values for os type.
632type OSType string
633
634const (
635	// Linux The Linux operating system.
636	Linux OSType = "linux"
637	// Windows The Windows operating system.
638	Windows OSType = "windows"
639)
640
641// PossibleOSTypeValues returns an array of possible values for the OSType const type.
642func PossibleOSTypeValues() []OSType {
643	return []OSType{Linux, Windows}
644}
645
646// OutputFileUploadCondition enumerates the values for output file upload condition.
647type OutputFileUploadCondition string
648
649const (
650	// OutputFileUploadConditionTaskCompletion Upload the file(s) after the Task process exits, no matter what
651	// the exit code was.
652	OutputFileUploadConditionTaskCompletion OutputFileUploadCondition = "taskcompletion"
653	// OutputFileUploadConditionTaskFailure Upload the file(s) only after the Task process exits with a nonzero
654	// exit code.
655	OutputFileUploadConditionTaskFailure OutputFileUploadCondition = "taskfailure"
656	// OutputFileUploadConditionTaskSuccess Upload the file(s) only after the Task process exits with an exit
657	// code of 0.
658	OutputFileUploadConditionTaskSuccess OutputFileUploadCondition = "tasksuccess"
659)
660
661// PossibleOutputFileUploadConditionValues returns an array of possible values for the OutputFileUploadCondition const type.
662func PossibleOutputFileUploadConditionValues() []OutputFileUploadCondition {
663	return []OutputFileUploadCondition{OutputFileUploadConditionTaskCompletion, OutputFileUploadConditionTaskFailure, OutputFileUploadConditionTaskSuccess}
664}
665
666// PoolLifetimeOption enumerates the values for pool lifetime option.
667type PoolLifetimeOption string
668
669const (
670	// PoolLifetimeOptionJob The Pool exists for the lifetime of the Job to which it is dedicated. The Batch
671	// service creates the Pool when it creates the Job. If the 'job' option is applied to a Job Schedule, the
672	// Batch service creates a new auto Pool for every Job created on the schedule.
673	PoolLifetimeOptionJob PoolLifetimeOption = "job"
674	// PoolLifetimeOptionJobSchedule The Pool exists for the lifetime of the Job Schedule. The Batch Service
675	// creates the Pool when it creates the first Job on the schedule. You may apply this option only to Job
676	// Schedules, not to Jobs.
677	PoolLifetimeOptionJobSchedule PoolLifetimeOption = "jobschedule"
678)
679
680// PossiblePoolLifetimeOptionValues returns an array of possible values for the PoolLifetimeOption const type.
681func PossiblePoolLifetimeOptionValues() []PoolLifetimeOption {
682	return []PoolLifetimeOption{PoolLifetimeOptionJob, PoolLifetimeOptionJobSchedule}
683}
684
685// PoolState enumerates the values for pool state.
686type PoolState string
687
688const (
689	// PoolStateActive The Pool is available to run Tasks subject to the availability of Compute Nodes.
690	PoolStateActive PoolState = "active"
691	// PoolStateDeleting The user has requested that the Pool be deleted, but the delete operation has not yet
692	// completed.
693	PoolStateDeleting PoolState = "deleting"
694)
695
696// PossiblePoolStateValues returns an array of possible values for the PoolState const type.
697func PossiblePoolStateValues() []PoolState {
698	return []PoolState{PoolStateActive, PoolStateDeleting}
699}
700
701// SchedulingState enumerates the values for scheduling state.
702type SchedulingState string
703
704const (
705	// Disabled No new Tasks will be scheduled on the Compute Node. Tasks already running on the Compute Node
706	// may still run to completion. All Compute Nodes start with scheduling enabled.
707	Disabled SchedulingState = "disabled"
708	// Enabled Tasks can be scheduled on the Compute Node.
709	Enabled SchedulingState = "enabled"
710)
711
712// PossibleSchedulingStateValues returns an array of possible values for the SchedulingState const type.
713func PossibleSchedulingStateValues() []SchedulingState {
714	return []SchedulingState{Disabled, Enabled}
715}
716
717// StartTaskState enumerates the values for start task state.
718type StartTaskState string
719
720const (
721	// StartTaskStateCompleted The StartTask has exited with exit code 0, or the StartTask has failed and the
722	// retry limit has reached, or the StartTask process did not run due to Task preparation errors (such as
723	// resource file download failures).
724	StartTaskStateCompleted StartTaskState = "completed"
725	// StartTaskStateRunning The StartTask is currently running.
726	StartTaskStateRunning StartTaskState = "running"
727)
728
729// PossibleStartTaskStateValues returns an array of possible values for the StartTaskState const type.
730func PossibleStartTaskStateValues() []StartTaskState {
731	return []StartTaskState{StartTaskStateCompleted, StartTaskStateRunning}
732}
733
734// StorageAccountType enumerates the values for storage account type.
735type StorageAccountType string
736
737const (
738	// PremiumLRS The data disk should use premium locally redundant storage.
739	PremiumLRS StorageAccountType = "premium_lrs"
740	// StandardLRS The data disk should use standard locally redundant storage.
741	StandardLRS StorageAccountType = "standard_lrs"
742)
743
744// PossibleStorageAccountTypeValues returns an array of possible values for the StorageAccountType const type.
745func PossibleStorageAccountTypeValues() []StorageAccountType {
746	return []StorageAccountType{PremiumLRS, StandardLRS}
747}
748
749// SubtaskState enumerates the values for subtask state.
750type SubtaskState string
751
752const (
753	// SubtaskStateCompleted The Task is no longer eligible to run, usually because the Task has finished
754	// successfully, or the Task has finished unsuccessfully and has exhausted its retry limit. A Task is also
755	// marked as completed if an error occurred launching the Task, or when the Task has been terminated.
756	SubtaskStateCompleted SubtaskState = "completed"
757	// SubtaskStatePreparing The Task has been assigned to a Compute Node, but is waiting for a required Job
758	// Preparation Task to complete on the Compute Node. If the Job Preparation Task succeeds, the Task will
759	// move to running. If the Job Preparation Task fails, the Task will return to active and will be eligible
760	// to be assigned to a different Compute Node.
761	SubtaskStatePreparing SubtaskState = "preparing"
762	// SubtaskStateRunning The Task is running on a Compute Node. This includes task-level preparation such as
763	// downloading resource files or deploying Packages specified on the Task - it does not necessarily mean
764	// that the Task command line has started executing.
765	SubtaskStateRunning SubtaskState = "running"
766)
767
768// PossibleSubtaskStateValues returns an array of possible values for the SubtaskState const type.
769func PossibleSubtaskStateValues() []SubtaskState {
770	return []SubtaskState{SubtaskStateCompleted, SubtaskStatePreparing, SubtaskStateRunning}
771}
772
773// TaskAddStatus enumerates the values for task add status.
774type TaskAddStatus string
775
776const (
777	// TaskAddStatusClientError The Task failed to add due to a client error and should not be retried without
778	// modifying the request as appropriate.
779	TaskAddStatusClientError TaskAddStatus = "clienterror"
780	// TaskAddStatusServerError Task failed to add due to a server error and can be retried without
781	// modification.
782	TaskAddStatusServerError TaskAddStatus = "servererror"
783	// TaskAddStatusSuccess The Task was added successfully.
784	TaskAddStatusSuccess TaskAddStatus = "success"
785)
786
787// PossibleTaskAddStatusValues returns an array of possible values for the TaskAddStatus const type.
788func PossibleTaskAddStatusValues() []TaskAddStatus {
789	return []TaskAddStatus{TaskAddStatusClientError, TaskAddStatusServerError, TaskAddStatusSuccess}
790}
791
792// TaskExecutionResult enumerates the values for task execution result.
793type TaskExecutionResult string
794
795const (
796	// Failure There was an error during processing of the Task. The failure may have occurred before the Task
797	// process was launched, while the Task process was executing, or after the Task process exited.
798	Failure TaskExecutionResult = "failure"
799	// Success The Task ran successfully.
800	Success TaskExecutionResult = "success"
801)
802
803// PossibleTaskExecutionResultValues returns an array of possible values for the TaskExecutionResult const type.
804func PossibleTaskExecutionResultValues() []TaskExecutionResult {
805	return []TaskExecutionResult{Failure, Success}
806}
807
808// TaskState enumerates the values for task state.
809type TaskState string
810
811const (
812	// TaskStateActive The Task is queued and able to run, but is not currently assigned to a Compute Node. A
813	// Task enters this state when it is created, when it is enabled after being disabled, or when it is
814	// awaiting a retry after a failed run.
815	TaskStateActive TaskState = "active"
816	// TaskStateCompleted The Task is no longer eligible to run, usually because the Task has finished
817	// successfully, or the Task has finished unsuccessfully and has exhausted its retry limit. A Task is also
818	// marked as completed if an error occurred launching the Task, or when the Task has been terminated.
819	TaskStateCompleted TaskState = "completed"
820	// TaskStatePreparing The Task has been assigned to a Compute Node, but is waiting for a required Job
821	// Preparation Task to complete on the Compute Node. If the Job Preparation Task succeeds, the Task will
822	// move to running. If the Job Preparation Task fails, the Task will return to active and will be eligible
823	// to be assigned to a different Compute Node.
824	TaskStatePreparing TaskState = "preparing"
825	// TaskStateRunning The Task is running on a Compute Node. This includes task-level preparation such as
826	// downloading resource files or deploying Packages specified on the Task - it does not necessarily mean
827	// that the Task command line has started executing.
828	TaskStateRunning TaskState = "running"
829)
830
831// PossibleTaskStateValues returns an array of possible values for the TaskState const type.
832func PossibleTaskStateValues() []TaskState {
833	return []TaskState{TaskStateActive, TaskStateCompleted, TaskStatePreparing, TaskStateRunning}
834}
835
836// VerificationType enumerates the values for verification type.
837type VerificationType string
838
839const (
840	// Unverified The associated Compute Node agent SKU should have binary compatibility with the Image, but
841	// specific functionality has not been verified.
842	Unverified VerificationType = "unverified"
843	// Verified The Image is guaranteed to be compatible with the associated Compute Node agent SKU and all
844	// Batch features have been confirmed to work as expected.
845	Verified VerificationType = "verified"
846)
847
848// PossibleVerificationTypeValues returns an array of possible values for the VerificationType const type.
849func PossibleVerificationTypeValues() []VerificationType {
850	return []VerificationType{Unverified, Verified}
851}
852